Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

时间:2022-09-04 14:47:15

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

用Hibernate帮助建立SpringMVC与数据库之间的联系,通过配置DAO层,Service层,Model层,建立Controller对数据库操作的通道。

这里没有使用maven来管理jar包(依赖库),因为没太多,实际上还是很繁琐的,要有耐心。

原本稍微复杂的工程项目还是应该使用maven来管理依赖库,参见:http://tieba.baidu.com/p/2364606122?pn=1

下面记录一下依赖包搭建过程:

DAO - SERVICE -

1.在eclipse中新建项目:

new-project-Dynamic Web Project(name: spring_user)

2. insert jar packages:

参考如图,导入jar包到目标位置 :

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

Download .jar files from: http://jarfiles.pandaidea.com  or http://mvnrepository.com/

1)spring-reamework-release-3.1.3\dist

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

2)apache-log4j-1.2.16.jar

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

3)commons-logging-1.1.1   用于登录

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

4)hibernate-distribution-3.6.8 Final\lib\required(hibernate用3、4都可以)

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

5)jpa

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

    hibernate-jpa-2.0-api-1.0.0.Final.jar

6)hibernate3

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

    hibernate3.jar
slf4j-log4j12-1.6.1.jar

7)hlfa/dbcp/aop/jstl

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

    aopalliance.jar
aspectjrt.jar
aspectjweaver.jar

8)dbcp 数据引导性文件

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

    commons-collections-3.1.jar
    commons-dbcp.jar
    commons-pool.jar

9)jstl 的标签:

  Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

    jsf-api.jar
jsf-impl.jar
jstl-1.2.jar

10)数据库记录:

    mysql-connector-java-5.1.17-bin.jar

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

...

3. 建立model层的Pakage:

New Java Package: zttc.itat.model,如图:

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

4. model下,建立一个类

zttc.itat.model >> New Java Class

Name: User

        Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

----------

   @Entity
@Table(name="t_user") //创建一张表
pulic class User{
private int id;
private String username;
private String password;
private String email;
private String nickname;
} @GenerateValue
@Id
public int getId(){
return Id;
}
...//后面就是其他参数的Get Set 方法

----------


        1)add getter & setter增加Get Setter:

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

       Select all >> finish.

       2)add @Entity....

此时我们再把分页的class加上: new package at zttc.itat.model >> new >> class >> Pager.java

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

5. Spring 和Hibernate的整合

打开数据库,新建一个database:spring_user 

         database charset:utf-8

         database collection: utf-8

         Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

bean.xml文件的coding:

            从别处拷过来一个src\bean.xml:

            Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

         beans.xml -- 改为zttc.itat...

        再改一下jdbc.properties:指定mysql数据库名: jdbc.url = jdbc:mysql://localhost:3306/spring_user

参考(SpringMVC + Spring + SpringJDBC整合):http://www.open-open.com/lib/view/open1349272132291.html

参考: http://www.blogjava.net/yiqi801218/archive/2008/03/16/186670.html

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

6. 写DAO层: zttc.itat.dao

新建一个package, name: zttc.itat.dao

       Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

再建一个Interface:IUserDao.java

       Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

参考代码:

        

//这里面有一些简单的方法:
package zttc.itat.dao;
public interface IUserDao {
public void add(User user);
public void update(User user);
public void delete(int id);
public User load(int id);
public List<User> list();
public Pager<User> find(); //分页的method声明
public User loadByUsername(String username); }

如图:

        Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

再建立一个类:UserDao - UserDao.java, Add IUserDao里的方法进来:

        Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

完了我们要继承DaoSupport, 要注入SessionFactory, 还要自己写一个方法public void setsuperSessionFactory().  再用Repository来注入一下,名称:("userDao")。

        Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

7. 写UserException(zttc.itat.modelpackage下): New -> Class -> UserException (Superclass: java.lang.RuntimeException)

       UserException.java : Add default serial version ID
       RightClick >> Source >> Generate Constructors from Superclass >> select all, 父类构造下来
       UserException.java完成。

       Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

8. 写SystemContext.java支持分页操作

传分页还得传当前页、每页显示多少条这几个数据传过来。所以要创建一个thread local

newClass: Source folder=spring_user/src, Package=zttc.itat.model   name=SystemContext

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建


9.  写Dao层各个方法,支持增删改查。文件:UserDao.java

8.1 public void add(User user){   }   方法:

        public void add(User user){
              this.getHibernateTemplate().save(user);
}

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

      在UserDao.java中再写Pager相关操作:

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

如上图所示,完成add\update\delete\load\list等:

   return this.getSession().creatQuery("from User").list();     //下图补充一下上图。

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

再加一个方法:

  Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

接下来我们完成Service层 ===----------


10. 新建一个package:  zttc.itat.service Package

10.1   New Interface: IUserService.java/

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

11. UserService.java

新建一个Class:

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

Coding in UserService.java:

12. 写SystemContextFilter

新建一个Class:SystemContextFilter.java

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

这里有很多Coding的内容,视频时间:Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建至:

      Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

15. 写web.xml

先打开dispatcher:

再写mapping:

再拷字符编码部分:

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

还有把bean.xml加入监听:

OpenSessionInWiew

SystemContext

Filter(zttc.itat.web.SystemContextFilter)

FilterMapping

15. 创建Spring的Bean文件: user-servlet.xml

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

beans, context, mvc这三个Desired XSD namespace declaration必须要选。

在这里面要配这几个东西:参考:http://blog.csdn.net/kivenlee/article/details/6284732

  • mvc
  • context:component-scan
  • bean class="...InternalResourceViewResolver"
  • 其他异常那些东西就后面慢慢配了

新建Controller投入实际测试

16. 新建UserController.java

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

17. 写WEB-INF/jsp/user/list.jsp

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

  写入: <h1>用户列表测试页面</h1>

===========至此搞定,测试一下 ===========

Run >> Tomcat ,启动调试,http://localhost:8080/spring_user/user/users无问题。

看看数据库,也建起来了:

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

好累。。。

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建的更多相关文章

  1. springmvc学习笔记&lpar;12&rpar;-springmvc注解开发之包装类型參数绑定

    springmvc学习笔记(12)-springmvc注解开发之包装类型參数绑定 标签: springmvc springmvc学习笔记12-springmvc注解开发之包装类型參数绑定 需求 实现方 ...

  2. 1&period;1&lpar;Spring MVC学习笔记&rpar;初识SpringMVC及SpringMVC流程

    一.Spring MVC Spring MVC是Spring提供的一个实现了web MVC设计模式的轻量级Web框架. Spring优点:网上有,此处不复述. 二.第一个Spring MVC 2.1首 ...

  3. Spring MVC学习笔记--认识SpringMVC

    Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块.使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还是 Struts 这样的 Web 框 ...

  4. Spring MVC 学习笔记1 - First Helloworld by Eclipse【&amp&semi; - java web 开发Tips集锦】

    Spring MVC 学习笔记1 - First Helloworld by Eclipse reference:http://www.gontu.org 1. 下载 Spring freamwork ...

  5. Spring MVC 学习笔记一 HelloWorld

    Spring MVC 学习笔记一 HelloWorld Spring MVC 的使用可以按照以下步骤进行(使用Eclipse): 加入JAR包 在web.xml中配置DispatcherServlet ...

  6. Spring MVC 学习笔记11 —— 后端返回json格式数据

    Spring MVC 学习笔记11 -- 后端返回json格式数据 我们常常听说json数据,首先,什么是json数据,总结起来,有以下几点: 1. JSON的全称是"JavaScript ...

  7. Spring MVC 学习笔记10 —— 实现简单的用户管理(4&period;3)用户登录显示全局异常信息

    </pre>Spring MVC 学习笔记10 -- 实现简单的用户管理(4.3)用户登录--显示全局异常信息<p></p><p></p>& ...

  8. Spring MVC 学习笔记9 —— 实现简单的用户管理(4)用户登录显示局部异常信息

    Spring MVC 学习笔记9 -- 实现简单的用户管理(4.2)用户登录--显示局部异常信息 第二部分:显示局部异常信息,而不是500错误页 1. 写一个方法,把UserException传进来. ...

  9. Spring MVC 学习笔记8 —— 实现简单的用户管理(4)用户登录

    Spring MVC 学习笔记8 -- 实现简单的用户管理(4)用户登录 增删改查,login 1. login.jsp,写在外面,及跟WEB-INF同一级目录,如:ls Webcontent; &g ...

随机推荐

  1. 在大于32GB或64GB容量的SD卡上使用NOOB安装树莓派 - Using NOOB on SD cards larger than 32GB or 64GB for Raspberry Pi

    在树莓派上玩了一小段时间了,因为装的软件包越来越多,所以越来越感觉16G的SD卡没办法长期使用下去.于是采购了几张64G的SD卡,打算周末装上系统.可是按照一般的流程,在Windows下用SD For ...

  2. 超强vim配置

    在网上找vim的配置,自己配置的特别丑 安装起来也超级方便. #!/bin/bash echo "安装将花费一定时间,请耐心等待直到安装完成^_^" if which apt-ge ...

  3. windows下android开发环境搭建

    JDK的安装和Java环境变量的设置 1 JDK下载地址 JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.h ...

  4. acess&lpar;&rpar; 判断目录是否存在

    acess()功能描述: 检查调用进程是否可以对指定的文件执行某种操作. <pre lang="c" escaped="true">#include ...

  5. 如何读懂Oracle文档中的语法图&lpar;转&rpar;

    本文转载自:http://kyle.xlau.org/posts/syntax-diagrams.html Oracle文档中用到了两种表达语法的方法,语法图和BNF. BNF, Backus-Nau ...

  6. STM32F4xx FPU的设置

    原文:http://blog.csdn.net/dlutxie/article/details/7980389 浮点运算一直是定点CPU的难题,比如一个简单的1.1+1.1,定点CPU必须要按照IEE ...

  7. Oracle查询优化改写--------------------单表查询

    一.查询表中所有的行与列 二.从表中检索部分行 三.查找空值 四.将空值转化为实际值(coalesce) 五.查找满足多个条件的行(查询部门为10中所有的员工.所有得到提成的员工,以及部门20中工资不 ...

  8. UML绘图工具——PlantUML

    1 简介 PlantUML是一个开源项目,支持通过简单直观的语言来定义以下UML图. 时序图 用例图 类图 活动图 组件图 状态图 对象图 部署图 定时图 支持生成图片格式有: PNG SVG LaT ...

  9. Python开发【字符串格式化篇】

    1.百分号 __author__ = "Tang" # + 号 拼接 msg = "i am " + " tang" print(msg) ...

  10. python之路--MRO和C3算法

    一 . MRO(method resolution order) 多继承的一种方法,一种查找的顺序 在python3 里面是一种新类式MRO 需要用都的是C3算法 class A: pass clas ...