1.hibernate.properties 和 hibernate.cfg.xml是hibernate的配置文件,2个作用是差不多的,在应用中只要其中的一个就可以了。在hibernate的启动过程中,会先找hibernate.properties,然后读取hibernate.cfg.xml,后者会覆盖前者相同的属性。
2.要想在后台打印sql语句,对于hibernate.cfg.xml只要这样设置下就可以了:
<session-factory></session-factory>
。。。。。。。。
<property name="dialect">org.hibernate.dialect.DB2Dialect</property>
<property name="show_sql">true</property>
3.higernate读取10行记录的方法:
Query queryObject = getSession().createQuery(condition);
queryObject.setFirstResult(10); //主要是这里
queryObject.setMaxResults(10);//主要是这里
4.
有关hibernate的ID属性的自动分配问题
2 Key Generator
主键产生器
可选项说明:
1) Assigned
主键由外部程序负责生成,无需Hibernate参与。
2) hilo
通过hi/lo 算法实现的主键生成机制,需要额外的数据库表保存主
键生成历史状态。
3) seqhilo
与hilo 类似,通过hi/lo 算法实现的主键生成机制,只是主键历史
状态保存在Sequence中,适用于支持Sequence的数据库,如Oracle。
4) increment
主键按数值顺序递增。此方式的实现机制为在当前应用实例中维持
一个变量,以保存着当前的最大值,之后每次需要生成主键的时候
将此值加1作为主键。
这种方式可能产生的问题是:如果当前有多个实例访问同一个数据
库,那么由于各个实例各自维护主键状态,不同实例可能生成同样
的主键,从而造成主键重复异常。因此,如果同一数据库有多个实
例访问,此方式必须避免使用。
5) identity
采用数据库提供的主键生成机制。如DB2、SQL Server、MySQL
中的主键生成机制。
6) sequence
采用数据库提供的sequence 机制生成主键。如Oralce 中的
Sequence。
7) native
由Hibernate根据底层数据库自行判断采用identity、hilo、sequence
其中一种作为主键生成方式。
8) uuid.hex
由Hibernate基于128 位唯一值产生算法生成16 进制数值(编码后
以长度32 的字符串表示)作为主键。
9) uuid.string
与uuid.hex 类似,只是生成的主键未进行编码(长度16)。在某些
数据库中可能出现问题(如PostgreSQL)。
10) foreign
使用外部表的字段作为主键
5. 对于hibernate更新问题:
一个表有3个字段 id ,name,age,我先load再修改其中一个字段后,更新sql为 update tablename set name=?,age=? where id=? ,这个时候其实不要更新name ,只要在配置文件的属性就可以了: name="propertyName"
column="column_name"
type="typename"
update="false"
/>默认update属性是true,改成false以后,session.update(...)的时候,如果该字段对应的类属性没有修改,就不会出现在sql语句里面。
6.尽量对数据库的所有操作由Hibernate来完成,而不要用其它方式对数据库进行操作,否则可能与缓存冲突,当然如果对缓存有深入研究的除外。
分享到:
相关推荐
hiberante3 注解帮助文档hiberante3 注解帮助文档hiberante3 注解帮助文档hiberante3 注解帮助文档hiberante3 注解帮助文档
最新springboot2基础hiberante5完整项目,打包jar,运行jsp,包括后台与前台,拦截器,登录,后台下载就可以使用,注意不是jpa,里面有完整Dao,千万级数据项目分离的代码,为了适合老项目开发特意集成hiberante5....
在Java的持久化框架中,Hibernate是一个非常流行的ORM(对象关系映射)工具,它允许开发者将数据库操作转化为对Java对象的操作。DAO(Data Access Object)层是软件设计模式中的一个重要概念,主要用于处理数据访问...
《深入理解Hibernate源码与配置》 Hibernate,作为一款强大的对象关系映射(ORM)框架,深受Java开发者喜爱。本文将结合"hibernate源码"和"hibernate配置"两个核心主题,深入探讨Hibernate的工作原理及配置细节,...
Hibernate Tools是一套全新而且完整的面向Hibernate3的工具集合,它包含了Eclipse插件和Ant编译流程。Hibernate Tools是JBoss Tools的核心组件,所以他也是JBoss Developer Studio的一部分
Spring 框架是 Java 企业级应用开发中的核心组件,它提供了全面的软件基础设施,包括依赖注入(DI)、面向切面编程(AOP)以及众多的模块如数据访问、Web 应用、任务调度等。Spring MVC 是 Spring 框架的一部分,...
《Hibernate3.jar与API详解》 Hibernate,作为一个强大的对象关系映射(ORM)框架,是Java开发者在处理数据库操作时的得力助手。本篇将深入探讨Hibernate3.jar及其API,帮助开发者更好地理解和运用这个库。...
**hibernate5.0.7安装jar包详解** Hibernate是一个强大的Java持久化框架,它为开发者提供了在Java应用程序中管理关系数据库模型的工具。在5.0.7版本中,Hibernate引入了一系列改进和增强,使得它在处理数据库操作时...
开发工具:MyEclipse 6....Struts+Spring+Hiberante框架整合的简单登录系统 无需配置任何文件、只需在mysql中创建一个空数据库 如:create database test; 注:mysql数据库用户名:root 密码:root
hiberante4.2.3-part2
**详细知识点** 1. **Hibernate3_HQL**: Hibernate Query Language(HQL)是Hibernate提供的面向对象的查询语言,它允许开发人员以类和对象的术语来编写查询,而不是SQL的表和列。HQL支持SELECT、FROM、WHERE、...
hiberante-4.2.3-part3
Spring MVC 和 Hibernate 是两个在Java Web开发中广泛使用的框架,它们分别是用于构建MVC(Model-View-Controller)架构的Web应用和管理数据库操作的对象关系映射(ORM)工具。在实际项目中,这两个框架的集成能提供...
### Hibernate中的五大核心接口 #### 一、概述 在Hibernate框架中,存在五大核心接口,它们分别是:`Session`、`SessionFactory`、`Transaction`、`Query` 和 `Configuration`。这些接口对于Hibernate的正常运行至...
hiberante-4.2.3-part4
在Java世界中,Hibernate是一个非常流行的ORM(对象关系映射)框架,它允许开发者使用面向对象的方式来操作数据库,而无需关心底层SQL语句的编写。本文将深入探讨Hibernate的四种主要查询方式:HQL(Hibernate Query...
hiberante3.2纯静源码
hiberante 代码save方法过程,分析
Struts2、Hibernate、Spring、ExtJS 和 OA(Office Automation)办公系统的整合是企业级Java应用开发中的常见架构,这个组合通常被称为SSH2E。这是一个强大的框架集合,用于构建高效、可扩展且易于维护的企业级应用...
最后,文档会包含一些实际案例和最佳实践,比如用户登录注册系统、在线购物车等,帮助读者将理论知识转化为实际开发能力。这些案例会详细展示如何在HTML页面中嵌入Hibernate查询结果,以及如何处理用户交互事件,...