
HIBERNATE 3
SiC 软件
SiC B2B2C Shop 开源商城 作者
展开
-
4 Hibernate HQL查询,分页查询
/** * HQL查询的一个例子 */ public static void hql() { Session s = null; try { s = HibernateUtil.getSeesion(); ...2009-02-28 10:30:02 · 252 阅读 · 0 评论 -
20 Hibernate 1+N问题的原理与解决
什么时候会遇到1+N的问题? 前提:Hibernate默认表与表的关联方法是fetch="select",不是fetch="join",这都是为了懒加载而准备的。 1)一对多(<set><list>) ,在1的这方,通过1条sql查找得到了1个对象,由于关联的存在 ,那么又需要将这个对象关联的集合取出,所以合集数量是n还要发出n条sql,于是本来的1条sql查询变...原创 2009-03-04 09:44:31 · 211 阅读 · 0 评论 -
Hibernate分页查询与泛型
JE有两篇文章,关于分页查询 与泛型 的,写的很好.这里收藏一下. Hibernate分页查询小结 JDK5.0后的泛型程序设计 --------------------------------------------- 下面是我自己写的分页方法,同时也参考了上面两篇文章. 以下代码用在了实际的项目中. Page类,计算分页数据 package comm...原创 2009-03-26 19:03:55 · 125 阅读 · 0 评论 -
Hibernate批量操作(JDBC批量操作)
部分内容转自 :http://gaolixu.iteye.com/blog/519086 部分内容转自 :http://superjavason.iteye.com/blog/255423 -------------------------------------------------------------------------------------------- hib...2009-03-30 14:52:41 · 304 阅读 · 0 评论 -
1 Hibernate 第一例
一个简单的CURD的例子. 源码中不包含所依赖的库, 要不然打的包太大了. Hibernate 版本3.2 PO对象注意: 1 要有默认的构造方法 2 类是非final 修饰的.否则 懒加载无用. UserDAOImpl类的代码, 其它配置文件,请看附件中的源码包 package dao; import java.util.Date; import o...2009-02-23 15:12:44 · 95 阅读 · 0 评论 -
2 主键生成策略
转自:http://www.cnblogs.com/talo/articles/1663978.html 本文讲述Hibernate的generator属性的意义。Generator属性有7种class,本文简略描述了这7种class的意义和用法。Hibernate的Generator属性有7种class,本文简略描述了这7种class的意义和用法。1、identity:用于M...原创 2009-02-23 20:12:16 · 451 阅读 · 0 评论 -
3 Hibernate对象的三种状态
1、瞬时对象(Transient Objects): 使用new操作符初始化的对象不是立刻持久的。的状态是瞬时的,也就说没有和任何数据库表进行关联。只要应用不再引用这对象,他的状态将丢失,并且由垃圾回收机制回收。数据库中没有此对象,只是存在内存中。 2、持久对象(Persist Objects):持久对象是具有数据库标识的,也就是从数据库获取来的。他有持久化管理器Session...2009-02-23 20:29:18 · 148 阅读 · 0 评论 -
Hibernate懒加载深入分析
[size=small] ---------------------------------------------------------- [b]懒加载可以提高性能吗?[/b] 不可以简单的说"能",因为Hibernate的关系映射拖累了SQL的性能,所以想出懒加载来弥补.只是弥补而以,不会超越.所以大家不要想着使用了懒加载总体性能就提高了,其实总体性能不下降就万幸了. -------...原创 2010-05-14 11:22:58 · 91 阅读 · 0 评论 -
Hibernate悲观锁定与乐观锁定
悲观锁定 由数据库方面实现. 可见:Hibernate悲观锁定与乐观锁定区别 乐观锁 由Hibernate实现. 可参见下面两篇文章 Hibernate乐观锁实现之Version Hibernate乐观锁实现之Timestamp ...原创 2010-05-17 15:08:50 · 105 阅读 · 0 评论 -
Hibernate ---- 控制日志
Hibernate版本 3.3或3.4 Hibernate 使用Simple Logging Facade for Java (SLF4J)来记录日志。官方网址:http://www.slf4j.org/ SLF4J是一套接口,不是实现。通过转换器可以使用Log4j,JDK Logging,Apache Commons-logging,slf4j-nop等日志工具。 [img]h...原创 2010-06-06 11:46:59 · 130 阅读 · 0 评论 -
Hibernate 操作Blob Clob
Photo.java [code="java"] import java.sql.Blob; import java.sql.Clob; import java.util.Date; /** * @author IBM 这是一个用于测试Hibernate大对象操作的PO * * 这是一个测试POJO, 属性有多种类型 */ public class...原创 2010-06-14 16:50:33 · 240 阅读 · 0 评论 -
Hibernate二级缓存 ---- 入门示例
一. 我们使用oscache来演示 , 引入oscache的jar包到工程中. 二. 把下载的Hibernate压缩包中的 hibernate-3.2\etc\oscache.properties放入classpath中. 用默认设置就行了. 三.修改hibernate.cfg.xml , 加入如下, 意思启用二级缓存, 指定使用OSCache这个实现. &...原创 2010-06-27 15:34:49 · 120 阅读 · 0 评论 -
Hibernate--空位
原文章已合并整理到: http://elf8848.iteye.com/blog/805351原创 2010-06-27 15:41:54 · 89 阅读 · 0 评论 -
Hibernate--泛型DAO
泛型DAO(翻译) http://www.iteye.com/topic/151090 泛型Dao--以上面代码的分析 http://littie1987.iteye.com/blog/1023573 基于泛型DAO的Facade设计模式. http://www.iteye.com/topic/403182 spring mvc 系列2 泛型DAO(基于存储过程)...原创 2010-06-27 19:49:46 · 148 阅读 · 0 评论 -
19 Criteria查询,DetachedCriteria离线查询 --做综合查询
通过Session得到Criteria类的对象 /** * 用Criteria方便的综合查询 Criteria类有丰富的比较方法 * * 如:大于,小于,等于, not null, in,null, like, isEmpty.... */ public static void select() { Session s = nul...2009-03-04 09:35:51 · 96 阅读 · 0 评论 -
空位空位
空位空位空位空位原创 2009-03-03 10:22:12 · 190 阅读 · 0 评论 -
5 空位
----------------------------------2009-02-28 10:53:31 · 131 阅读 · 0 评论 -
6 用Properties补充hibernate.cfg.xml配置
在一些特殊情况下,我们可能会把数据库连接信息保存在config.properties 文件中, 例如做一个install.jsp 来修改config.properties文件 ,实现对数据库信息的在线配置.这时 数据库连接信息保存在hibernate.cfg.xml就不方便.所以要单独保存到properties文件 中. config.properties文件内容如下 : #数据库I...2009-02-28 18:14:22 · 181 阅读 · 0 评论 -
7 映射-- 多对一(员工对部门)
多对一的例子 , 多个员工 对 一个部门 (Hibernate3.2) package dao.po; /** * @author zl 员工类 */ public class Employee { private int id; // 员工的ID private String name; // 员工的名称 private Department dep...原创 2009-02-28 19:46:59 · 259 阅读 · 0 评论 -
8 映射-- 一对多(部门对员工)
package dao.po; import java.util.Set; /** * 部门类 * * @author zl * */ public class Department { private int id; //部门的ID private String name; //部门的名称 private Set<Em...2009-02-28 21:05:12 · 388 阅读 · 0 评论 -
9 映射-- 一对一(两种)(人与身份)
一对一 ,例如"人" 对 "身份证"的对应关系 第一种情况: IdCard类的ID 既是主键又是外键 关系请看下图, (图中的配置, 写反了 ,不要参考, 正确的配置请看下面的代码) Person类: package dao.po; /** * @author zl 人类 * */ public class P...2009-03-01 11:27:37 · 292 阅读 · 0 评论 -
10 映射-- 多对多(老师与学生)
学生类: package dao.po; import java.util.Set; /** * @author zl 学生类 */ public class Student { private int id; private String name; private Set<Teacher> teachers; } ...2009-03-01 15:01:38 · 520 阅读 · 0 评论 -
11 映射-- 组件映射(人类与姓名类)
User类: 注意他的name属性 package dao.po; /** * User类 (组件映射一例) * * user表要保存 User类 与 Name类 的信息 * * Name类, 他不会单独保存再一张表中,没有Name.hbm.xml */ public class User { private int id; priv...2009-03-01 15:26:31 · 206 阅读 · 0 评论 -
12 映射-- 集合类的映射(Set,List,Map,Array)
部门类Department , 他有 empa1, empa2, empa3, empa4是四种集合类型 public class Department { private int id; private String name; private Set<Employee> emps1; //Set private List<Emplo...2009-03-01 16:18:47 · 103 阅读 · 0 评论 -
13 级联和关系维护(Cascade 和Inverse)
Cascade用来说明当对主对象进行某操作时, 是否对其关联的从对象也作类似的操作. 例如:删除主对象的同时 要不要删除从对象, 主对象不存在了,从对象理理论上出应删除. 常用的Cascade: none , all, save-update , delete , lock , refresh , evict , replicate , persist, merge, d...2009-03-01 17:58:41 · 217 阅读 · 0 评论 -
14 继承(一)(整个继承树映射到一张表)
人类(Person) , 男人(Men)继承"人"类, 女人(Women)继承"人"类, UML如下: 映射到如下的t_person表中 , 有以下6个字段: 1 int id //主键 2 varchar name //父类中的姓名...2009-03-02 11:00:41 · 91 阅读 · 0 评论 -
15 继承(二)(每个子类扩展的属性单独保存在一张表中)
人类(Person) , 男人(Men)继承"人"类, 女人(Women)继承"人"类, UML如下: 映射到三张表 , 每个子类扩展的属性单独保存在一张表中 t_person2表 : 1 int id //主键 2 varch...2009-03-02 13:07:33 · 162 阅读 · 0 评论 -
16 继承(三)(把前面14,15讲的情况结合起来)
人类(Person) , 男人(Men)继承"人"类, 女人(Women)继承"人"类, UML请看15讲. 映射到两个表: 人类(Person) 与 男人(Men)类 映射到如下的t_person表中 , 有以下5个字段: 1 int id //主键 2 varchar name ...2009-03-02 13:30:24 · 86 阅读 · 0 评论 -
17 继承(四)每一个具体的类 映射到一张表
类(Person) , 男人(Men)继承"人"类, 女人(Women)继承"人"类, UML如下: 映射到三张表 , 每一个具体的类 映射到一张表,继承映射要求父子类的主键不能重复 t_person表 : 1 int id ...2009-03-02 13:54:47 · 95 阅读 · 0 评论 -
Hibernate二级缓存 ---- 最佳实践
作者:赵磊 博客:http://elf8848.iteye.com 2010年11月7号,立冬,星期天。北京外面风好大,躲在家里整理一下这篇文章,发出来与大家分享,对大家有帮助是我最高兴的事儿。 不要想当然的认为使用了Hibernate的二级缓存就一定能够提高应用程序的性能,仅仅在你能够驾驭它,并且条件适合的情况下才是这样的。 使用hibernat...2010-11-08 10:17:21 · 278 阅读 · 0 评论