![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Hibernate
码农戏码
公众号【码农戏码】作者
展开
-
Hibernate Annotation manytomay
与User多对多的角色类: /* * @ManyToMany 注释表示Teacher 是多对多关系的一端。 * @JoinTable 描述了多对多关系的数据表关系,name属性指定中间表名称。 * joinColumns 定义中间表与Teacher 表的外键关系,中间表Teacher_Student的Teacher_I...原创 2009-02-16 20:00:01 · 74 阅读 · 0 评论 -
Hibernate的查询性能
查询性能往往是系统性能表现的一个重要方面,查询机制的优劣很大程度上决定了系统的整体性能。这个领域往往也存在最大的性能调整空间。 hibernate2中Session.find()对应于3中的session.createQuery().list(); hibernate2中Session.iterate()对应于3中的session.createQuery().iterate(); ...原创 2008-10-24 18:02:42 · 86 阅读 · 0 评论 -
Restrictions.in查询,及property lazy
最近使用Restrictions.in查询发现性能很差.发现原因有两:1.sql中,in,not in的运行效率就不是很高.一般使用exits替代.但是in比exists的效率差也不是绝对的.http://www.cnblogs.com/zwl12549/archive/2007/04/19/720028.htmlhttp://blog.csdn.net/qustwmt/a...2008-11-17 20:26:38 · 654 阅读 · 0 评论 -
初次步入Hibernate Annotation
Hibernate Annotation早已经出现...JPA早已被炒得爆了锅...但我才刚刚学习...最近在重构网站的时候,类的移动免不了.虽然IDE帮了很多的忙,但在XML文件中的类路径不会变化..每次移了类都得再一个一个地找XML文件的类.使用注解方式也得去修改XML文件,但相对于完全使用XML文件,减少了修改类之间有引用时的修改,只需要修改下总的配置文件就OK了.何乐而不会...2008-11-22 16:56:17 · 83 阅读 · 0 评论 -
Hibernate fetch属性
[quote]Hibernate3 定义了如下几种抓取策略: 连接抓取(Join fetching) - Hibernate通过 在SELECT语句使用OUTER JOIN(外连接)来 获得对象的关联实例或者关联集合。 查询抓取(Select fetching) - 另外发送一条 SELECT 语句抓取当前对象的关联实体或集合。除非你显式的指定lazy="false"禁止 延迟抓取...2008-11-24 20:06:38 · 78 阅读 · 0 评论 -
Hibernate Annotation实体关联配置
http://www.oracle.com/technology/global/cn/products/ias/toplink/jpa/resources/toplink-jpa-annotations.html#OneToManyhttp://www.oracle.com/technology/global/cn/pub/articles/gupta-jpa.htmlhttp://www...2008-11-24 20:12:41 · 71 阅读 · 0 评论 -
org.hibernate.AssertionFailure entry
AssertionFailure: null id in xxx entry (don't flush the Session after an exception occursorg.hibernate.AssertionFailure entry null id in entry (don't flush the Session after an exception occurs)...原创 2010-01-28 23:40:39 · 229 阅读 · 0 评论 -
HIBERNATE多对多配置实例
1. 环境,student对 lesson,多对多的关系,关系表格:student_lesson(student_id,lesson_id)2. 配置文件1) student设为关联维护端 <set name="lessons" table="student_lesson" inverse=”false”> <key column=...原创 2010-02-07 17:55:22 · 56 阅读 · 0 评论 -
为什么要有单向关联
http://www.java1995.cn/blog/item/113 hibernate官方推荐使用双向关联,那么单向关联有什么用呢?其实这个有用没用,不是从技术方向来解释的,而应该从业务层来考虑。比如:user <--> city ; class user{ city; } 不需要...原创 2010-02-07 21:36:48 · 102 阅读 · 0 评论 -
hibernate的一些问题
关联单向与双向的区别?inverse在双向关联中的作用?cascad的作用对这些问题有些明白又有些不明白?推荐使用双向关联为什么又要单向关联?在操作的时候,单向与双向有什么区别?======================= 以上问题可看为什么要有单向关联 Hibernate单、双向关联与inverse属性...原创 2010-02-08 00:28:51 · 62 阅读 · 0 评论 -
级联保存的奇怪问题
同步:http://www.java1995.cn/blog/item/136上一文cascadetype讲解了使用CascadeType的用处。在一对多的时候,使用CascadeType.PERSIST 的时候,保存one方的时候,不会去保存many方。设成CascadeType.ALL就可以解决办法:在Person表关系定义如下: @ManyToOne(...2010-03-17 22:55:14 · 90 阅读 · 0 评论 -
一对多保存
一对多保存 User user = new User();user.setTache(1);Account account = new Account();account.setBank(0.0d);account.setManagement(0.0d);//必须account.setCfoUser(user);//user.getCfoAccount...2010-03-18 23:25:55 · 107 阅读 · 0 评论 -
C3P0的错误吗?
Connections could not be acquired from the underlying databaseA ResourcePool could not acquire a resource from its primary factory or source.2009-08-01 01:04:52 · 79 阅读 · 0 评论 -
单向与双向的区别
当使用单向关联时,由父类管理关联关系,子类无法管理,而这时,父亲知道自己的儿子,但是,从儿子对象不知道父亲是谁。 单向关联时,只指定 当使用双向关联时,关联关系的管理可以通过inverse指定,这时,儿子能清楚的知道自己的父亲是谁。 双向关联时,还要指定。 Cascade属性是来控制进行级联操作的。从父类这边,父亲知道自己的孩子是谁,可以进行级联操作,但从子类那边,它是不清楚自己的父亲...2009-09-07 19:46:12 · 2051 阅读 · 0 评论 -
jpa 一对多单向关联 插入问题
hibernate推荐使用双向关联但单向关联也不是不能使用在使用单向对联的时候 发现在多方 插入的时候 外键虽然设置了值但总是无法插入。 原来是一个小小的属性设置错误。。[code="java"]@ManyToOne(fetch = FetchType.EAGER) @JoinColumn(name = "uid", nullable = false, inse...2009-10-15 22:49:13 · 348 阅读 · 0 评论 -
Hibernate的一级缓存
Hibernate的一级缓存是由Session提供的,因此它只存在于Session的生命周期中,当程序调用save(),update(),saveorupdate()等方法 及调用查询接口list,filter,iterate时,如session缓存中还不存在相应的对象,Hibernate会把该对象加入到一级缓存中,当Session关闭的时候该Session所管理的一级缓存也会立即被清除H...原创 2008-10-24 13:26:01 · 75 阅读 · 0 评论 -
Hibernate缓存概述
缓存是介于应用程序和物理数据源之间,其作用是为了降低应用程序对物理数据源访问的频次,从而提高了应用的运行性能。缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。 缓存的介质一般是内存,所以读写速度很快。但如果缓存中存放的数据量非常大时,也会用硬盘作为缓存介质。缓存的实现不仅仅要考虑存储的介质,还要考虑到管理缓存的并...2008-10-24 13:12:52 · 75 阅读 · 0 评论 -
Hibernate的面试题 (一级缓存)
[quote]1.hibernate的事务提交后,是将数据直接持久化到数据库还是只是放在缓存里? 在一个事务中调用一个select语句,如果之前的已经有某个update语句做了数据修改,或是直接改变了对象的属性,则hibernate会在查询语句执行之前首先调用flush()将缓存中的数据同步到数据库,接着才返回查询数据。 2.以上表述是否正确? 3.如果正确,缓存中已经有最新的...2008-10-24 13:10:27 · 107 阅读 · 0 评论 -
Hibernate的commit及flush
[url]http://www.java1995.cn/article/461.html[/url]Hibernate中的flush()与commit()flush()是针对缓存,commit()是针对数据库.在commit之前,先flush()flush()先执行save再updatesave时,先检查id....2008-08-02 22:15:33 · 127 阅读 · 0 评论 -
jpa 一对多单向关联 查询问题
上次碰到一个问题:jpa 一对多单向关联 插入问题 无法正常插入,,今天又碰到一个无法查询的问题。。 one--many的时候,many的这个外键为null的时候,并且many方设置FetchType.EAGER(其实manttoone默认值也是EAGER,详细可见http://www.java1995.cn/article/936.html), 却发现数据库明明...2009-12-08 23:47:33 · 470 阅读 · 0 评论 -
一对多 Cannot add or update a child row
其实这个问题是在更新数据的时候出现的。 在使用getOne()并进行更新的时候就出现了这个问题。。 开始是以为是FetchType.LAZY的原因,但改成EAGER后还是没有解决。。 发现 现在对hibernate的了解远远不如以前,也可能以前没有理解透吧。 现在这个问题其实又是注解的配置问题。 @Column(name = "chapter", uniqu...2009-12-09 23:10:05 · 216 阅读 · 0 评论 -
聚合函数排序
要对聚合函数进行排序:使用SQL:select prdid , count(*) from order group by prdid order by count(*) desc 这样子应该是没有问题的。。我的类里面有个引用类:select user ,count(*) from Ann group by user ordery by count(*)其中use...2009-04-27 22:49:40 · 474 阅读 · 0 评论 -
packagesToScan annotatedPackages
packagesToScan有 了这个方法,我们不再需要自己动手去实现实体类的扫描了,直接在Spring配置文件中AnnotationSessionFactoryBean这个 section上增加类似如下的一个property即可(假定你需要加载的实体类所在的包名match这个字符串"com.**.bo"):< property name ="packagesToScan" v...2009-12-22 23:51:09 · 250 阅读 · 0 评论 -
hibernatetemplate自动事务
hibernatetemplate自动事务 在使用hibernatetemplate的时候,不配置spring事务 也能对数据库进行CRUD。 刚开始好奇怪,在过去不配置事务是不能对数据库进行CRUD的,而为什么在现项目中把所有的事务配置xml都删除后,还是可以对数据库进行操作。 为什么hibernatetemplate还是依然可以对数据库进行操作呢, 其实在...2009-12-23 23:08:36 · 141 阅读 · 0 评论 -
Collection has neither generic type or OneToMany.targetEntity() defined:
如出现类似以下异常:org.hibernate.AnnotationException:Collection has neither generic type or OneToMany.targetEntity()defined: org.svse.org.model.Order.orderItems请检查orderItems这个属性是否使用了泛型,如:Set&...原创 2009-12-27 01:13:18 · 443 阅读 · 0 评论 -
Batch update returned unexpected row count from update [0]; actual row count: 0;
Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1 这个错误网上都说是 写道不注意的话,还真的有点无所适从,Batch update returned unexpected row count from update [0]; actual row ...原创 2009-12-27 13:30:38 · 102 阅读 · 0 评论 -
org.hibernate.LazyInitializationException: illegal access to loading collection
org.hibernate.LazyInitializationException: illegal access to loading collection 这个错误,在网上说是hashcode方法的调用问题。。 但我的model里面压根没有这个方法。。 看上去像是lazy的问题,就把过去的READ_WRITE缓存策略改成了NONSTRICT_READ_WRITE,就正常...原创 2009-12-27 21:55:44 · 201 阅读 · 0 评论 -
java.lang.IllegalStateException: No Hibernate Session bound to thread
[url]http://www.iteye.com/topic/87035?page=1[/url][url]https://forums.hibernate.org/viewtopic.php?p=2400339&sid=981dbe2a38a5e3a8b031bdbb8edde389[/url]2009-07-15 19:31:43 · 164 阅读 · 0 评论 -
类继承映射表
hiernate用了很久,,但都是很简单的应用。。现在水平应该也只是hello world水平。复杂的映射还是没接触过。现在碰到一问题。两个类是继承关系,怎么映射到一张表上。之前的做法很简单,类就是继承的,父类映射文件没有什么问题。子类映射文件就是把父类以及子类中的属性全部映射下。这样做,出现了一个问题,就是在查询父类的时候,把子类也查询出来了。也就是一张表...2009-07-19 04:00:17 · 66 阅读 · 0 评论 -
hibernate中的数据类型
使用Hibernate到现在还没有发现一个问题。今天在写映射文件的时候。[code="java"] [/code]出现了异常信息:[code="java"]Could not determine type for: String, for columns:[/code]感觉很是奇怪。。为什么会出现这种情况,过去都是这样写的啊。。再看了原来的映射文件,发现了。。。...2009-07-19 19:41:17 · 78 阅读 · 0 评论 -
hibernate WrongClassException异常
在继承关系映射数据库的时候,出现了[code="java"]net.sf.hibernate.WrongClassException: Object with id: was not of the specified subclass[/code]hibernate的继承关系映射到数据库:[url]http://www.java1995.cn/article/729.html[/...2009-07-19 20:12:58 · 707 阅读 · 0 评论 -
hibernate中get方法和load方法
1、hibernate中get方法和load方法的根本区别在于:如果你使用load方法,hibernate认为该id对应的对象(数据库记录)在数据库中是一定存在的,所以它可以放心的使用,它可以放心的使用代理来延迟加载该对象。在用到对象中的其他属性数据时才查询数据库,但是万一数据库中不存在该记录,那没办法,只能抛异常,所说的load方法抛异常是指在使用该对象的数据时,数据库中不存在该数据时抛异常,而...原创 2008-10-23 14:25:45 · 77 阅读 · 0 评论 -
mappedBy跟JoinColumn/JoinTable
在对网站进行升级的时候,hibernate升级为最新的3.5.1版本的时候,发现了有个异常Associations marked as mappedBy must not define database mappings like @JoinTable or @JoinColumn:*******我说明mappedBy跟JoinColumn/JoinTable是互斥的。在以前的版本...原创 2010-07-14 10:32:53 · 230 阅读 · 0 评论