hibernate.cfg.xml 配置文件模版:

<?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>
<session-factory>
<!-- 启动Hibernate时,重建数据库 create;更新数据库 update -->
<property name="hbm2ddl.auto">update</property>
<!--显示执行的SQL语句-->
<property name="show_sql">true</property>
<!-- 数据库方言 -->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property> <!-- driver url username password -->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost:3306/test_db?useUnicode=true&amp;characterEncoding=UTF8&amp;useSSL=false</property>
<property name="connection.username">root</property>
<property name="connection.password">Cs123456</property> <!-- JDBC连接池(使用内置的连接池)-->
<property name="connection.pool_size">5</property>
<!-- 每次从数据库中取出,并放到JDBC的Statment中的记录条数,fetch_size设的越大,读取数据库的次数会越小,速度越快,但消耗更多内存 -->
<property name="jdbc.fetch_size">50</property>
<!-- 批量插入、删除和更新时,每次操作的记录数,batch_size越大,向数据库发送SQL语句的次数越少,速度越快,但消耗更多内存 -->
<property name="jdbc.batch_size">30</property>
<!-- Hibernate自动管理上下文的策略 -->
<property name="current_session_context_class">thread</property> <!-- 配置mapping -->
<!-- (1)hbm.xml 映射文件配置 -->
<mapping resource="com/uzipi/entity/Student.hbm.xml" />
<mapping resource="com/uzipi/entity/Course.hbm.xml" />
<!-- (2)持久化类上的注解方式 -->
<mapping class="com.uzipi.entity.TClass" /> </session-factory>
</hibernate-configuration>

hibernate.cfg.xml 中配置的<mapping>对应映射文件,resource属性值需要填写具体的路径,比如:放在com.uzipi.entity包下的Student.hbm.xml,配成:

<mapping resource="com/uzipi/entity/Student.hbm.xml" />
如果是通过注解方式配置映射,在 hibernate.cfg.xml 文件中配置的<mapping>元素的属性是class ,填写类的全限定类名:
<mapping class="com.uzipi.entity.TClass" />

XXX.hbm.xml 映射文件模版:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="entity">
<class name="com.uzipi.entity.Student" table="t_student"> <id name="id" column="stu_id" type="int" unique="true"> <!-- 持久化类的唯一标识 -->
<generator class="native" />
<!-- <generator class="increment" /> -->
</id> <property name="name" column="stu_name" type="string" not-null="true" length="200" />
<property name="sex" type="string" length="10"> <!-- 另一种映射字段的方式 -->
<column name="stu_sex"/>
</property>
<property name="age" column="stu_age" type="int" not-null="true" length="11" />
<property name="classbj" column="class_id" type="string" length="200" /> </class>
</hibernate-mapping>

<property>属性元素有两种配置方式:成对、单个。

成对配置方式需要在<property>元素内配置一个<column name="xxx" />元素。

如果映射文件中没有配置 column 和 type 属性,Hibernate 将会默认使用持久化类中的属性名称和属性类型匹配数据库表中的字段。

<id>元素的子元素 <generator> 用来为持久化类的实例生成唯一的标识,映射数据库中的主键字段,class属性的常用配置值:

increment:用于为Long、Short、Int类型生成唯一标识。集群下不要使用该属性

identity:由支持自增字段类型的数据库底层实现,提供生成主键的功能(比如:MySQL)

sequence:由支持序列的数据库底层实现,提供生成主键的功能(比如:Oracle)

native:由 Hibernate 自动识别数据库底层实现,自动选择identity、sequence(一般配置该属性)

assigned:由 Hibernate 程序负责主键的生成,此时持久化类的唯一标识不能声明为 private 类型

select:通过数据库触发器生成主键

foreign:使用另一个相关联的对象的标识符,通常和<one-to-one>一起使用

hibernate配置文件模板的更多相关文章

  1. hibernate.cfg.xml hibernate 配置文件模板

    <?xml version='1.0' encoding='UTF-8'?> <!--表明解析本XML文件的DTD文档位置,DTD是Document Type Definition ...

  2. ssh框架中spring整合hibernate的配置文件模板(带详细注释)

    applicationContext.xml的配置文件模板 <?xml version="1.0" encoding="UTF-8"?> <b ...

  3. hibernate课程 初探单表映射1-7 hibernate配置文件新建

    hibernate  配置文件新建 1 右键src==>new==>other==>hibernate configuration File==>next==>next= ...

  4. Spring配置文件集成Hibernate配置文件

      Spring对hibernate配置文件hibernate.cfg.xml的集成,来取代hibernate.cfg.xml的配置.  spring对hibernate配置文件hibernate.c ...

  5. hibernate配置文件hibernate.cfg.xml和.hbm.xml的详细解释

    原文地址:http://blog.csdn.net/qiaqia609/article/details/9456489 hibernate.cfg.xml -标准的XML文件的起始行,version= ...

  6. hibernate配置文件详细解析

    在javaweb开发中,hibernate框架的是常用的,能帮我们节省大量的时间,以下是hibernate的配置文件解析. hibernate配置文件的默认名为:hibernate.cfg.xml 默 ...

  7. hibernate配置文件hibernate.cfg.xml的详细解释

    <!--标准的XML文件的起始行,version='1.0'表明XML的版本,encoding='gb2312'表明XML文件的编码方式-->                 <?x ...

  8. Hibernate —— Hibernate 配置文件

    1.Hibernate 配置文件主要用于配置**数据库连接**和 Hibernate 运行时所需的**各种属性**. 2.每一个 Hibernate 配置文件对应一个 Configuration 对象 ...

  9. Hibernate 配置文件与映射文件 总结

    hibernate是一个彻底的ORM(Object Relational Mapping,对象关系映射)开源框架. 一.Hibernate配置文件详解 Hibernate配置文件有两种形式:XML与p ...

随机推荐

  1. 猜年龄 v1.0

    给定年龄,用户可以猜三次年龄 年龄猜对,让用户选择两次奖励 用户选择两次奖励后可以退出 age = 30 prize_dict = {0: 'durex', 1: 'okamoto', 2: 'Jis ...

  2. jq 获取内容

    1.html()-设置或者返回被选元素的内容(包括html标记) $(selector).html() 2.text()-设置或者返回被选元素的内容 $(selector).text() 3.val( ...

  3. 《mysql必知必会》4笔记(存储过程、游标、触发器、事务、全球化本地化、权限、数据库维护、性能)

    二十三:使用存储过程: 1:mysql 5添加了对存储过程的支持.很多时候,一个完整的操作需要多条语句才能完成.存储过程简单来说,就是为以后的使用而保存的一条或多条mysql语句的集合,可将其视为批文 ...

  4. Mysql----linux下安装和使用

    一.安装 安装环境centOS,MySQL 使用yum安装mysql 1. 下载rpm [root@CoderMrD admin]# wget -i -c http://dev.mysql.com/g ...

  5. Python 常量

  6. SDUT-3441_数据结构实验之二叉树二:遍历二叉树

    数据结构实验之二叉树二:遍历二叉树 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 已知二叉树的一个按先序遍历输入的字符 ...

  7. Laravel的请求声明周期

    声明周期概述# 开始# public/index.php 文件是所有对Laravel应用程序的请求的入口点.而所有的请求都是经由你的Web服务器(Apache/Nginx) 通过配置引导到这个文件.i ...

  8. dynamic_cast, static_cast, const_cast, reinterprt_cast浅析

    用法:dynamic_cast < type-id > ( expression ) 说明:Type-id必须是类的指针.类的引用或者void *:如果type-id是指针类型,那么exp ...

  9. C. Tokitsukaze and Duel 前缀维护

    枚举每一个连续的K的第一个位置,如果是先手胜利,那么前[1 , i-1 ]和[ i+k , n ]区间要么全是0,要么全是1 如果能够平局,那么肯定是[1,i-1],以及[ i+k , n]中有两种情 ...

  10. 前端知识体系(二)http请求

    https://blog.csdn.net/Lammonpeter/article/details/81358387 一.DNS解析 首先DNS域名系统的作用是将输入的url域名解析成ip地址以方便对 ...