hibernate
文章平均质量分 79
partner4java
这个作者很懒,什么都没留下…
展开
-
hibernate 拦截hibernate事件
拦截hibernate事件: 例子实现审计日志: 1、创建标记接口 用这个接口给所有应该子被自动审计的持久化类做上标记: view plaincopy to clipboardprint?/** * 例子实现审计日志: * 1、创建标记接口 * 用这个接口给所有应该子被自动审计的持久化类做上标记 * @auth原创 2011-11-03 18:02:07 · 1090 阅读 · 0 评论 -
hibernate 小工具 Criteria 辅助拼写HQL
平时没遇到过这么用的,看着还可以,简单demo: 按条件查询(Criteria的用法):view plaincopy to clipboardprint?public Item quertItem(String itemName) { Session session = getSessionFactory().openSessi原创 2011-11-04 14:28:45 · 898 阅读 · 0 评论 -
hibernate 共享的主键关联(多个表共享一个主键)
共享的主键关联: 由主键关联而相关的两张表中的行共享相同的主键值。这种方法的主要困难在于,确保被关联的 实例在保存对象时分配了相同的主键值。 第一步:用xml映射主键关联 view plaincopy to clipboardprint?class name="User" .... <one-to-one name="add原创 2011-10-24 14:24:29 · 4231 阅读 · 0 评论 -
hibernate 值类型的set、bag、list和map (非实体bean类型的)
选择集合接口: 1、使用元素映射java.util.Set。使用java.util.HashSet初始化集合。它是无序且不允许重复。 2、使用映射java.util.SortedSet。且sort属性可以设置成比较器或者用于内存的排序的自然顺序。使用 java.util.TreeSet实例初始化集合。 3、使用映射java.util.List。在集合表中用一个额外的索引列保存每个元原创 2011-10-19 18:01:12 · 4127 阅读 · 2 评论 -
HQL的几个小问题 .
1. Unable to locate appropriate constructor on class .... 在类似 "select new UserVO(u.id, u.name) from User u where u.id>100" 这个时候要求UserVO必须有和(id, name)类型匹配的构造函数。2. Like的模糊匹配:转载 2011-12-12 18:42:52 · 1546 阅读 · 0 评论 -
spring-framework-2.5.6.SEC03 + hibernate-3.6.4 + struts-2.3.1
整合demo--代码地址:http://download.csdn.net/detail/partner4java/3948124原创 2011-12-20 22:10:22 · 1577 阅读 · 0 评论 -
hibernate merge 的作用 (如何解决 NonUniqueObjectException)
org.hibernate.NonUniqueObjectException: a different object with the same identifier value was already associated with the session : view plaincopy to clipboardprint? /**原创 2011-10-28 17:10:43 · 1355 阅读 · 0 评论 -
hibernate 13 优化抓取和高速缓存 | hibernate 实战(第二版) 第13章优化抓取和高速缓存 | 笔记
1定义全局抓取计划 你的目标是为应用程序中的每个用例找到最好的获取方法方法和抓取策略;同时也要最小化SQL查询次数,以获得最好的性能。 HQL常用于对象获取,而不是更新、插入或者删除数据。对象状态同步是持久化管理的工作,而不是开发人员的工作。但是,正如前一章 中说的,HQL都支持大批量的操作。 按条件查询(Criteria的用法):view原创 2011-11-07 15:03:05 · 1451 阅读 · 1 评论 -
hibernate 通过子查询预抓取集合 fetch subselect join (最后遗留疑问)
(总结在后面) 通过子查询预抓取集合:view plaincopy to clipboardprint?<set fetch="subselect" ..> @org.hibernate.annotations.Fetch(org.hibernate.annotations.FetchMode.SUBSELECT) 配置文原创 2011-11-05 17:08:59 · 4215 阅读 · 0 评论 -
hibernate.bytecode.use_reflection_optimizer
Enables the use of bytecode manipulation instead of runtime reflection. This is a System-level property and cannot be set in hibernate.cfg.xml. Reflection can sometimes be useful when troubleshootin转载 2012-03-06 13:00:37 · 3551 阅读 · 0 评论 -
hibernate 9 使用对象 | hibernate 实战(第二版) 第9章使用对象 | 笔记
1持久化声明周期 对象状态: 1、瞬时状态(新建状态)(临时状态) 瞬时状态其实就是和持久化没啥关系,只是new出来一个类,和数据库也没啥关联,session机制也监控不到。只能等着被 垃圾回收机制回收。 2、持久化状态(托管状态) 就是已经交给容器管理,肯定是已经有和数据库关联的主键。且,目前属于高速缓存状态,容器会检测到实体的数据修改。 3、移除状态(删原创 2011-10-28 22:40:25 · 658 阅读 · 0 评论 -
hibernate 控制并发访问
在标准SQL规范中,定义了4个事务隔离级别,不同的隔离级别对事务的处理不同: ◆未授权读取(Read Uncommitted):允许脏读取,但不允许更新丢失。如果一个事务已经开始写数据,则另外一个数据则不允许同时进行写操作,但允许其他事务读此行数据。该隔离级别可以通过“排他写锁”实现。 ◆授权读取(Read Committed):允许不可重复读取,但不允许脏读取。这可以通过“瞬间共享读原创 2011-11-01 22:25:12 · 8158 阅读 · 0 评论 -
hibernate 10 事务和并发 | hibernate 实战(第二版) 第10章事务和并发 | 笔记
1事务本质 事务本质: 哪怕只有一个步骤失败,则整个工作单元都必定失败。这就是大家所知的原子性(atomicity),则所有操作都作为一个原子单元来执行。 ACID,指数据库事务正确执行的四个基本要素的缩写.包含:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。一个支持事务(Transaction)的原创 2011-11-02 11:35:11 · 1749 阅读 · 0 评论 -
实体数据库命名约定
package cn.partner4java.shop.bean;import org.hibernate.cfg.ImprovedNamingStrategy;/** * 使每个表前面加上"PA_" * @author partner4java * */pu原创 2011-10-17 21:25:57 · 958 阅读 · 0 评论 -
hibernate 用联接表映射
用联接表映射: 表示从Shipment到Item关联的属性成为auction: <!-- 因为必须用一个外键列 映射这个关联,因此在XML中你需要 映射元素。然而,外键列不在SHIPMENT表中, 而在ITEM_SHIPMENT连接表中。通过映射元素把它移动到那里。 --> <many-to-one name=原创 2011-10-25 14:19:05 · 913 阅读 · 0 评论 -
hibernate 6 映射集合和实体关联 | hibernate 实战(第二版) 第6章映射集合和实体关联 | 笔记
值类型的set、bag、list和map 选择集合接口: 1、使用元素映射java.util.Set。使用java.util.HashSet初始化集合。它是无序且不允许重复。 2、使用映射java.util.SortedSet。且sort属性可以设置成比较器或者用于内存的排序的自然顺序。使用 java.util.TreeSet实例初始化集合。 3、使用映射java.util.L原创 2011-10-22 21:37:08 · 1004 阅读 · 0 评论 -
hibernate 4 映射持久化类 | hibernate 实战(第二版) 第4章映射持久化类 | 笔记
hibernate 实战(第二版) 第4章映射持久化类 本章内容 本章介绍基础的映射选项,阐述类和属性如何被映射到表和列。我们介绍和讨论如何处理数据库同一性和主键, 以及各种其他元数据设置如何被 用来定制Hibernate加载和存储对象的方式。所有映射示例都以hibernate的 原生XML格式完成,且并列使用JPA注解和XML描述符。我们还深入探讨细粒度领域模型的映射原创 2011-10-18 15:00:55 · 1349 阅读 · 0 评论 -
hibernate 一对一的外键关联
一对一的外键关联: 不共享主键,而是两表可以有一个外键关系。一张表有着引用被关联表的主键的一个外键列。 view plaincopy to clipboardprint?class name="User" table="USER" dynamic-insert="true" dynamic-update="true" muta原创 2011-10-24 16:46:57 · 846 阅读 · 0 评论 -
dynamic-insert dynamic-update mutable="false" (让hibernate生成的sql不包括所有字段、指定不可变的实体)
Hibernate生成update语句,会更新所有的列。 在有些情况下,例如包含几百列的一个遗留表,在该表中,即使最简单的操作的sql语句也很大,必须关闭这个启动时 的sql生成,并切换到运行时生成的动态语句。当大量实体时,也会影响启动时间,因为hibernate必须为CURD提前生 成所有SQL语句: 区别就是: Hibernate: insert into USER (us原创 2011-10-17 16:15:57 · 2523 阅读 · 0 评论 -
hibernate 7 高级实体关联映射 | hibernate 实战(第二版) 第7章高级实体关联映射 | 笔记
1单值的实体关联 共享的主键关联: 由主键关联而相关的两张表中的行共享相同的主键值。这种方法的主要困难在于,确保被关联的 实例在保存对象时分配了相同的主键值。 第一步:用xml映射主键关联 view plaincopy to clipboardprint?class name="User" .... <one-to-on原创 2011-10-26 18:17:25 · 804 阅读 · 0 评论 -
hibernate inverse 作用 inverse="true" 作用
我们引用一个一对多的bag类型关联说明这个问题: 代码: view plaincopy to clipboardprint?public class Item implements Serializable { private Integer itemId; private String itemName;原创 2011-10-25 17:03:22 · 1593 阅读 · 0 评论 -
hibernate 自然键 和 复合自然键
必须提醒你:当应用程序继承现有的遗留数据库Schema时,通常应该尽可能地对现有的Schema少做一些改变。你 对Schema所做的每一处改变都可能破坏访问数据库的其他现有应用程序。现有数据的迁移可能很昂贵,这也是你要考虑 的问题。一般来说,构建一个新的应用程序不可能不对现有的数据模型做任何改变--新应用程序通常意味着 额外的业务需求,自然需要数据库Schema的演变。原创 2011-10-27 15:50:49 · 946 阅读 · 0 评论 -
ACID properties of transactions ACID 数据库事务标准
In the context of transaction processing, the acronym ACID refers to the four key properties of a transaction: atomicity, consistency, isolation, and durability. Atomicity All changes to data转载 2011-10-29 14:52:37 · 1973 阅读 · 0 评论 -
hibernate get 和 load 区别
引用 : 相同点: 都可以通过指定的实体类与ID从数据库中读取数据,并返回对应的实例, 不同点: load方法: hibernate认为该id对应的对象(数据库记录)在数据库 中是一定存在的,进而使用代理来延迟加载该对象。在用到该对象中的属性数据时才查询数据库,若查不到,则抛出 ObjectNotFoundEcception 异常.load方法抛异常是指在使用该对象的数据且数据库中原创 2011-10-28 16:36:19 · 637 阅读 · 0 评论