随笔分类 -  Hibernate

摘要:悲观锁和乐观锁是:在事务隔离机制中设置了ReadCommited的情况下,两种可以避免不可重复读的方式。 设置成读已提交是考虑到安全和处理速度,保证并发效率,但是在这个情况下仍然需要避免不可重复读这种情况,于是hibernate提供两种锁来解决这个问题。 悲观锁:自己事务完成之前别人不能动数据。依赖于数据库,“for update” import javax.p... 阅读全文
posted @ 2013-12-20 17:11 剑握在手 阅读(231) 评论(0) 推荐(0) 编辑
摘要:一个主表,其他的表每个都有自己的表来装填自己特有的部分,共同的部分就放在主表中。 package com.bjsxt.hibernate; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.p... 阅读全文
posted @ 2013-12-20 10:35 剑握在手 阅读(304) 评论(0) 推荐(0) 编辑
摘要:Person,Student,Teacher各创建一个表,主键用一个中间表生成。 package com.bjsxt.hibernate; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; im... 阅读全文
posted @ 2013-12-20 10:20 剑握在手 阅读(750) 评论(0) 推荐(0) 编辑
摘要:三种继承映射关系。 1,SINGLE_TABLE person student teacher 在一个表中,student和teacher继承自person,通过一个DiscriminatorValue的内容来标识该条内容是student还是teacher。 package com.bjsxt.hibernate; import javax.persistence.Di... 阅读全文
posted @ 2013-12-20 10:03 剑握在手 阅读(374) 评论(0) 推荐(0) 编辑
摘要:list方法会一次查出所有内容,放在list里和缓存中。再次查询同一内容仍然会去数据库重新查一遍,并刷新缓存。 iterate方法会一次查出所有内容的ID,等用到某个ID对应的内容时又会去根据主键查询内容,并放在缓存中,当再次查询相同的内容时不再查询数据库,直接调用session级缓存。 import java.util.Date; import java.util.Iterator... 阅读全文
posted @ 2013-12-20 09:58 剑握在手 阅读(239) 评论(0) 推荐(0) 编辑
摘要:1+N就是在hibernate中第一次查一个所需要的表的内容,他会把别的相关表的内容也查询一遍。 解决办法有三种: 1,设置LAZY。 2,借鉴createCriteria的查询语句,from Topic t left join fetch t.category c,通过join fetch来屏蔽多于查询。 3,将多次查询整成一次查询。给多于表加上BatchSize注解。这种方法并没... 阅读全文
posted @ 2013-12-20 09:50 剑握在手 阅读(253) 评论(0) 推荐(0) 编辑
摘要:在功能方面是本地SQL>HQL>EJBQL>QBC>QBE 假想一个BBS。 板块: package com.bjsxt.hibernate; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; @Entity... 阅读全文
posted @ 2013-12-18 23:24 剑握在手 阅读(353) 评论(0) 推荐(0) 编辑
摘要:学生和课程是多对多,一个学生的一个课程只能对应一个成绩。 所以学生和课程多对多,其中间表多了一个成绩字段。 可以这样设计: 学生和课程通过中间表--成绩,多对多映射。 手动建中间表语句: create table score(id int primary key auto_increment,student_id int refrences student(id),cours... 阅读全文
posted @ 2013-12-18 14:32 剑握在手 阅读(437) 评论(0) 推荐(0) 编辑
摘要:package com.bjsxt.hibernate; import java.util.HashSet; import java.util.Set; import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.FetchType; impo... 阅读全文
posted @ 2013-12-18 13:58 剑握在手 阅读(218) 评论(0) 推荐(0) 编辑
摘要:转自尚学堂教学视频 package com.bjsxt.hibernate; import java.util.HashSet; import java.util.Set; import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.Fetc... 阅读全文
posted @ 2013-12-17 16:18 剑握在手 阅读(237) 评论(0) 推荐(0) 编辑
摘要:package com.bjsxt.hibernate; import java.util.HashSet; import java.util.Set; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import j... 阅读全文
posted @ 2013-12-17 14:50 剑握在手 阅读(207) 评论(0) 推荐(0) 编辑
摘要:多对多会利用中间表做外键的形式关联 package com.bjsxt.hibernate; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.ManyToOne; ... 阅读全文
posted @ 2013-12-17 14:36 剑握在手 阅读(212) 评论(0) 推荐(0) 编辑
摘要:package com.bjsxt.hibernate; import java.util.HashSet; import java.util.Set; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import j... 阅读全文
posted @ 2013-12-17 13:59 剑握在手 阅读(168) 评论(0) 推荐(0) 编辑
摘要:package com.bjsxt.hibernate;import java.util.HashSet; import java.util.Set;import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.OneToMany; import javax.persistence.Table;@Ent... 阅读全文
posted @ 2013-12-17 13:23 剑握在手 阅读(151) 评论(0) 推荐(0) 编辑
摘要:(转自尚学堂教学内容) 注解多对一: package com.bjsxt.hibernate; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.Table; @E... 阅读全文
posted @ 2013-12-17 13:08 剑握在手 阅读(203) 评论(0) 推荐(0) 编辑
摘要:注解方式: import javax.persistence.Embedded; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.JoinColumn; i... 阅读全文
posted @ 2013-12-17 12:46 剑握在手 阅读(219) 评论(0) 推荐(0) 编辑
摘要:package com.bjsxt.hibernate; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.pe... 阅读全文
posted @ 2013-12-17 11:28 剑握在手 阅读(302) 评论(0) 推荐(0) 编辑
摘要:单向双向在数据库中没有区别,但是在java程序中有区别。 在程序中:双向的通过一个就可以找到另一个,单向的通过设置了对应关系的类可以找到它所对应的类,反过来就不行。 注解方式单向主键关联: 和外键一样,只不过注解由@JoinColumn变成@PrimaryKeyJoinColumn import javax.persistence.Entity; import jav... 阅读全文
posted @ 2013-12-17 11:15 剑握在手 阅读(355) 评论(0) 推荐(0) 编辑
摘要:在上一篇博客内容的基础上做了以下修改,即可实现。 注解方式: package com.bjsxt.hibernate; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persist... 阅读全文
posted @ 2013-12-16 22:44 剑握在手 阅读(168) 评论(0) 推荐(0) 编辑
摘要:这里的关系指的是对象与对象之间的关系注解方式单向关联一对一://这个类描述的husband是一个对应一个wife的import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.OneToOne;@Entity public class Husband { private int id; ... 阅读全文
posted @ 2013-12-16 17:20 剑握在手 阅读(282) 评论(0) 推荐(0) 编辑

返回顶部↑
点击右上角即可分享
微信分享提示