首页 > 开发 > Java > 正文

hibernate框架环境搭建具体步骤(介绍)

2024-07-13 10:08:42
字体:
来源:转载
供稿:网友

一. 概述:hibernate框架是作用于dao层的,实现对数据的持久化保存.通过面向对象的方式操作数据库。

二. hibernate框架的搭建

1.导包

  lib目录下的required文件夹下的所有jar包.

  mysql驱动包.

2.创建数据库于表.

3.创建实体类.

4.创建实体映射文件(以crm练习Customer类为例)

  实体类名.hbm.xml

  引入约束文件

<?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"><!-- 根元素    package(可选):填写包名.后面凡是需要完整类名的地方,都可以省略包名了. --><hibernate-mapping package="cn.itcast.domain" >  <!-- class:映射类与表的关系      name属性:实体属性名      table属性:对应的表名   -->  <class name="Customer" table="cst_customer" >  <!-- id:映射主键属性名(OID)与主键列对应关系      name属性: OID名称      column属性(可选):主键列名,默认值就是name属性值      length属性(可选):指定属性长度.默认值使用数据库对应列长度      type属性(可选):指定当前列(属性)的类型.默认值会根据数据库类型自动指定类型.        type="long"        hibernate类型        type="java.lang.Long"  java类型        <column name="cust_id" sql-type="bigint" ></column> 数据库类型   -->    <id name="cust_id" >      <!--主键生成策略         increment:hibernate每次保存数据是,会查询数据库中最大的值,在最大值的基础上加1作为新的主键值(测试时使用)      identity:主键自增,有数据库负责生成主键值      sequence:序列,Oracle时使用      hilo:高低位算法,适用于既不支持自增也不支持序列的库(用不着)      native:identity|sequence|hilo自动三选一      uuid:主键类型为字符串是使用.      assigned:有我们手动指定ID值        -->      <generator class="native"></generator>    </id>    <!-- property:映射非主键属性名与非主键列对应关系      name属性: 属性名      column属性(可选):非主键列名,默认值就是name属性值      length属性(可选):指定属性长度.默认值使用数据库对应列长度      type属性(可选):指定当前列(属性)的类型.默认值会根据数据库类型自动指定类型.        type="long"        hibernate类型        type="java.lang.Long"  java类型        <column name="cust_id" sql-type="bigint" ></column> 数据库类型   -->    <property name="cust_name" column="cust_name" ></property>    <property name="cust_source" ></property>    <property name="cust_industry" column="cust_industry" ></property>    <property name="cust_level" column="cust_level" ></property>    <property name="cust_phone" column="cust_phone" ></property>    <property name="cust_mobile" column="cust_mobile" ></property>  </class></hibernate-mapping>

创建主配置文件

 hibernate.cfg.xml(在src下)

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-configuration PUBLIC  "-//Hibernate/Hibernate Configuration DTD 3.0//EN"  "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">  <!-- 根元素 -->  <hibernate-configuration>    <!-- 以下都是为sessionFactory对象配置的 -->    <session-factory>    <!-- 必选配置          //方言      //所有数据库的sql语句都是基于SQL99标准的      //每个数据库遵循SQL99标准的同时,也会扩充一部分SQL语句.这些标准之外的sql语句叫做方言  mysql方言: limit 0,5      //注意:mysql方言类一共有3个.一定要选最短的      #hibernate.dialect org.hibernate.dialect.MySQLDialect      //数据库驱动      #hibernate.connection.driver_class com.mysql.jdbc.Driver      //数据库连接url      #hibernate.connection.url jdbc:mysql:///test      //连接用户名      #hibernate.connection.username gavin      //连接密码      #hibernate.connection.password     -->      <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>      <property name="hibernate.connection.url">jdbc:mysql:///hibernate_54</property>      <property name="hibernate.connection.username">root</property>      <property name="hibernate.connection.password">1234</property>      <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>    <!-- 可选配置       //是否在控制台显示hibernate生成的sql      hibernate.show_sql true      //是否对显示到控制台的sql语句格式化      hibernate.format_sql true      //自动建表      # create(测试时使用)    : 自动建表,每次启动hibernate的时候都会自动建表.      # create-drop(测试时使用)   : 自动建表,每次启动hibernate的时候都会自动建表.释放资源时会将所有表删除.      # update(常用)  : 自动建表,有表就不会再创建,如果已经存在的表不完全匹配.会自动修改表结构.      # validate    : 校验表结构.不会自动建表.每次hibernate启动时都会检查表结构是否正确.                    //不正确=>抛出异常.    -->      <property name="hibernate.show_sql">true</property>      <property name="hibernate.format_sql">true</property>            <property name="hibernate.hbm2ddl.auto">update</property>            <!-- 指定数据库隔离级别         ## specify a JDBC isolation level        #hibernate.connection.isolation 4        mysql 默认级别是4        Oracle 默认级别是2      -->      <property name="hibernate.connection.isolation">4</property>      <!-- 配置session与当前线程绑定 -->      <property name="hibernate.current_session_context_class">thread</property>                <!-- 映射引入配置         resource属性:填写引入映射文件的路径. 相对于src目录下.    -->      <mapping resource="cn/itcast/domain/Customer.hbm.xml" />    </session-factory>  </hibernate-configuration>

以上这篇hibernate框架环境搭建具体步骤(介绍)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持VeVb武林网。


注:相关教程知识阅读请移步到JAVA教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表