Hibernate配置文件模版
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&characterEncoding=UTF8&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配置文件模版的更多相关文章
- hibernate配置文件模板
hibernate.cfg.xml 配置文件模版: <?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-config ...
- Spring配置文件集成Hibernate配置文件
Spring对hibernate配置文件hibernate.cfg.xml的集成,来取代hibernate.cfg.xml的配置. spring对hibernate配置文件hibernate.c ...
- hibernate配置文件hibernate.cfg.xml和.hbm.xml的详细解释
原文地址:http://blog.csdn.net/qiaqia609/article/details/9456489 hibernate.cfg.xml -标准的XML文件的起始行,version= ...
- hibernate配置文件详细解析
在javaweb开发中,hibernate框架的是常用的,能帮我们节省大量的时间,以下是hibernate的配置文件解析. hibernate配置文件的默认名为:hibernate.cfg.xml 默 ...
- hibernate配置文件hibernate.cfg.xml的详细解释
<!--标准的XML文件的起始行,version='1.0'表明XML的版本,encoding='gb2312'表明XML文件的编码方式--> <?x ...
- Hibernate —— Hibernate 配置文件
1.Hibernate 配置文件主要用于配置**数据库连接**和 Hibernate 运行时所需的**各种属性**. 2.每一个 Hibernate 配置文件对应一个 Configuration 对象 ...
- Hibernate 配置文件与映射文件 总结
hibernate是一个彻底的ORM(Object Relational Mapping,对象关系映射)开源框架. 一.Hibernate配置文件详解 Hibernate配置文件有两种形式:XML与p ...
- spring整合hibernate配置文件
Spring对hibernate配置文件hibernate.cfg.xml的集成,来取代hibernate.cfg.xml的配置 spring对hibernate配置文件hibernate.cfg.x ...
- Hibernate配置文件学习心得
Hibernate配置文件在工程中十分重要,名称为Hibernate.cfg.xml;如下图: 在代码模式下图: 第一句由于没怎么改动过,所以至今不知道有什么作用: <property name ...
随机推荐
- WebGL学习笔记(六):纹理贴图
只可以绘制纯色的模型是不够的,为了呈现出更真实的模型,我们还需要通过纹理贴图给模型进行上色. 丢失上下文 GPU作为一种公用资源,是会被多个进程同时使用的,在资源不足的情况下(比如PC或手机系统进入休 ...
- 关于aardio修改注册表默认键值的问题(转)
今天用aardio做注册表练习 遇到一个问题. 就是不知道怎么用aardio修改已存在的默认的注册表键的值.. 导出注册信息看了一下 默认的和普通的键值不太一样 形式是 @="要写入 ...
- postgrelsql base64加密,JS base64解密
项目中做云桌面对接,需要在项目中查出用户的明文密码,拼接到云桌面登陆地址中,防止明文传输,做了base64加密解密,防止小白黑客盗取用户密码. postgrelsql base64加密SQL语句: 查 ...
- JAVAFX 项目 SpringBoot 最简单的集成
1,JAVA 版本 JDK 1.8 2,首先我们创建一个 springboot 的空项目,只添加以下的依赖 <dependency> <groupId>org.springfr ...
- 【ML基础】t-SNE(t-distributed stochastic neighbor embedding)原理及推导
前言 参考 1. t-SNE原理与推导: 完
- 搜索排序的评价指标NDCG
refer: https://www.cnblogs.com/by-dream/p/9403984.html Out1 = SELECT QueryId, DocId, Rating, ROW_NUM ...
- maven cloudara依赖下载
最近开发的项目使用到了cloudara的依赖,已经在pom.xml 中配置了cloudara的repository,但是还是无法下载 <repositories> <reposito ...
- 今天七夕节,外面下着大雨,用Python的tkinter做一个下爱心雨的特效,发给妹子
今天七夕,还下着雨,刚好想做一个下着爱心雨的特效 准备图片素材 1.美图秀秀找一个爱心图,大小就50*50就可以,生成的是一个png格式文件 2.由于canvas.create_image只支持gif ...
- IDEA的java源码文件左边有一个红色的J
解决办法: 如果源码文件这里已经有一个路径,那就添加现在的.java文件所在目录,或者删除了再重新添加
- C++ 智能指针 boost::scoped_ptr分析
1.scoped_ptr的实现原理及特性 特性:scoped_ptr和auto_ptr类似,但最大的区别就是不能转让管理权限,也就是说scoped_ptr禁止用户进行拷贝和赋值 实现原理:如何才能禁止 ...