springMVC+spring+hibernate集成----2018-09-26

1. 先按照“spring MVC+Spring集成”方法执行
2. 导入Apache Commons几个jar包
commons-dbcp-1.4.jar 
commons-pool-1.5.6.jar 

把以上jar 都拷贝到/WEB-INF/lib/目录下。

3. 导入日志系统门面几个jar包
slf4j-api-1.6.1.jar :核心API 
slf4j-log4j12-1.6.1.jar :log4j实现
log4j-1.2.15.jar

把以上jar 都拷贝到/WEB-INF/lib/目录下。

4. 导入支持注解的几个jar包
persistence.jar
hibernate-annotations.jar
hibernate-commons-annotations.jar
hibernate-entitymanager.jar包 

把以上jar 都拷贝到/WEB-INF/lib/目录下。

5. 导入Hibernate几个jar包

Hibernate3的jar包
/lib/目录下所有jar包(不包括log4j-1.2.11.jar)
把以上jar 都拷贝到/WEB-INF/lib/目录下。

6. 数据库的JDBC驱动

根据使用的数据库下载相应的JDBC 驱动的jar包,并拷贝到/WEB-INF/lib/目录下。
本例为:mysql-connector-java-5.0.4-bin.jar

7. 在hib-config.xml中加入如下的配置
让Spring通过自动扫描来查询和管理Bean
  
配置数据源










配置sessionFactory
  
   
     
 
 

          
              
                    org.hibernate.dialect.MySQLDialect  
              
            true
       update
       



扫描Model文件,通过解析Model文件的注解完成该文件与数据库表的映射

com.zte.model

   


配置事务管理器







配置事务的传播特性





    


配置类参与事务的方法





3. 在hib-config.xml中配置DAO Bean


4.配置一个hibernateTemplate实例







8. 编写Model类
package com.zte.model;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity//注释声明该类为持久类
@Table(name = "t_user1")//指定数据库表名默认为POJO的简单名称
public class User {
@Id//指定主键映射名
@GeneratedValue(strategy=GenerationType.AUTO)//主键生成方式序列
@Column(name = "t_id")
private int id;
@Column(name = "t_username")//指定数据库列映射名
private String username;
@Column(name = "t_password")//指定数据库列映射名
private String password;
......
}
注:这里省略了对应属性的get和set 方法
9. 编写DAO实现类程序
package com.zte.dao;
import javax.annotation.Resource;
import org.springframework.orm.hibernate3.HibernateTemplate;
import com.zte.model.User;
public class UserDao {
   @Resource(name ="hibernateTemplate")
  private HibernateTemplate hibernateTemplate;
 public void add(User u){ 
 System.out.println("UserDao.add()");
 hibernateTemplate.save(u);
 }
}
10. 在WebRoot下编写index.jsp页面该页面部署在项目的根下
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

  
    
  
  
    /reg.jsp”>注册
    
11. 在WebRoot下编写表单页面reg.jsp该页面部署在项目的根下
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%><%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

户名:
密码:
12. 在WebRoot/WEB-INF/page下编写表单页面success.jsp
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

  
    
  

恭喜你! ${user.username} 注册成功
解决乱码问题

1.JSP页面中输入的值传入数据库,数据库中显示乱码。
解决:在jsp页面中用:<%@ page language="java" contentType="text/html; charset=utf-8"%>
2.JSP页面中从数据库查询数据显示在文本框中的是乱码。
解决:配置tomcat(E:\webWorkspace7.0\apache-tomcat-6.0.18\conf\server.xml)中加入

URIEncoding="UTF-8"

你可能感兴趣的:(springMVC+spring+hibernate集成----2018-09-26)