ssh框架整合之hibernate整合

来源:互联网 发布:美萍健身房软件 编辑:程序博客网 时间:2024/06/04 18:58

ssh框架整合之hibernate整合

在整合struts和spring之后,再将spring与hibernate整合就完成了ssh框架的整合。

整合hibernate框架,需要的spring jar:

  • spring-jdbc-4.3.0.RELEASE.jar (jdbc链接)
  • spring-orm-4.3.0.RELEASE.jar (整合hibernate)
  • spring-tx-4.3.0.RELEASE.jar (事务管理)

hibernate需要的jar

首先hibernate官方包下的require文件夹下所有的包都是需要的,包括:

  • slf4j-all-log4j12-1.4.3.jar
  • antlr-2.7.7.jar
  • dom4j-1.6.1.jar
  • hibernate-commons-annotations-4.0.2.Final.jar
  • hibernate-core-4.2.2.Final.jar
  • hibernate-jpa-2.0-api-1.0.1.Final.jar
  • javassist-3.15.0-GA.jar
  • jboss-logging-3.1.0.GA.jar
  • jboss-transaction-api_1.1_spec-1.0.1.Final.jar

另外,使用C3P0连接池还需要C3P0连接池所需要的包:

  • c3p0-0.9.1.jar
  • hibernate-c3p0-4.2.2.Final.jar

还有一个最重要的就是jdbc。

  • mysql-connector-java-5.0.8.jar

导入上面的jar包之后,就可以开始整合hibernate了。

创建数据模型Student

package com.cd.model;public class Student {    private int id;//id    private String name;//姓名    private String sex;//性别    private int age;//年龄    private String stuClass;// 班级    //构造函数和get/set方法}

创建hibernate.hbm.xml映射文件

在src目录下创建映射文件,也可以放在model目录下。

<?xml version="1.0" encoding="utf-8"?><!DOCTYPE hibernate-mapping PUBLIC        "-//Hibernate/Hibernate Mapping DTD 3.0//EN"        "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"><hibernate-mapping>    <class name="com.cd.model.Student" table="tb_stu">        <id column="id" name="id" type="java.lang.Integer">            <generator class="increment"/>        </id>        <property name="name" column="name" type="java.lang.String"/>        <property name="age" column="age" type="java.lang.Integer"/>        <property name="stuClass" column="stuClass" type="java.lang.String"/>        <property name="sex" column="sex" type="java.lang.String"/>    </class></hibernate-mapping>

创建数据库配置文件jdbc.properties

jdbc.driverClass=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/sshTestjdbc.username=rootjdbc.password=root

在applicationContext.xml中配置hibernate

    <!--配置数据库配置文件-->    <context:property-placeholder location="classpath:jdbc.properties"/>    <!--配置c3p0连接池-->    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">        <property name="driverClass" value="${jdbc.driverClass}"/>        <property name="jdbcUrl" value="${jdbc.url}"/>        <property name="user" value="${jdbc.username}"/>        <property name="password" value="${jdbc.password}"/>    </bean>    <!--hibernate-->    <bean id="sessionFactory"             class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">        <!--连接池-->        <property name="dataSource" ref="dataSource"/>        <!--属性-->        <property name="hibernateProperties">            <props>                <!-- 方言 -->                <prop key="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</prop>                <!-- sql语句格式化输出 -->                <prop key="hibernate.format_sql">true</prop>                <!-- 输出sql语句 -->                <prop key="hibernate.show_sql">true</prop>                <!-- 表生成策略 -->                <prop key="hibernate.hbm2ddl.auto">update</prop>            </props>        </property>        <!--映射文件-->        <property name="mappingResources">            <list>                <value>hibernate.hbm.xml</value>            </list>        </property>    </bean>

在数据库中创建工程数据库

这里创建的数据库是sshtest,是jdbc.uri的最后一段。

运行测试

运行当前项目,如果数据库中自动生成了tb_stu数据表,则说明hibernate也整合成功了。

源代码(提取码: loio) http://pan.baidu.com/s/1miiau7Y

原创粉丝点击