随笔分类 -  Hibernate

Hibernate使用Criteria实现查询
摘要:除了HQL查询外,Hibernate还提供了另外一种,更加贴近面向对象的思想的查询方式。下面来简单的演示一下。其实使用方法和HQl差不多package com.bird.hibernate.test; import java.util.List; import org.hibernate.Criteria; import org.hibernate.HibernateException; import org.hibernate.Session; import org.hibernate.Transaction; import org.hibernate.criterion.Restric.. 阅读全文
posted @ 2012-02-28 20:22 sp2012 阅读(240) 评论(0) 推荐(0)
Hibernate的HQL查询和工具类的增强
摘要:其实对Hibernate进行分析后可以发现,这个Hibernate对于对象的增加。删除,更新是差不多的,所以可以把他们整合到一个工具类中去。还有就是,因为查询是很复杂的,所以对于数据库的查询,就有相对应的接口,类似于JDBC中的PreparedStatemented这个类。下面我们先看一下工具类的增强package com.bird.hibernate.test; import org.hibernate.HibernateException; import org.hibernate.Session; import org.hibernate.SessionFactory; import . 阅读全文
posted @ 2012-02-28 19:38 sp2012 阅读(385) 评论(0) 推荐(0)
Hibernate工具类和插入查询数据例子
摘要:再使用Hibernate框架的时候,第一次配置的时候它会去读取那些配置文件,这个是非常耗费时间和内存的事情,所以我们希望每次使用框架的时候他这句代码只执行一次。所以需要构建一个工具类来实现这些效果。工具类效果如下package com.bird.hibernate.test; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; @SuppressWarnings("deprecation") public fina 阅读全文
posted @ 2012-02-28 18:46 sp2012 阅读(581) 评论(0) 推荐(0)
Hibernate框架的搭建和第一个简单的实例
摘要:Hibernate是一个支持对JDBC进行封装的框架,实现了对底层数据库访问的封装。非常适合使用和开发。首先需要下载Hibernate,可以在这个网站下载最新包。http://www.hibernate.org/然后打开他的目录结构,将lib目录下的required目录下的包全部导入到工程中去,这个是hibernate运行所必须的最少的包。然后写一个Bean,将需要储存到数据库中的变量封装成Bean。为了让Hibernate识别这个bean,需要一个配置文件,这里起名叫User.hbm.xml。先看一下User的代码和User.hbm.xml的代码package com.bird.domain 阅读全文
posted @ 2012-02-28 12:26 sp2012 阅读(7673) 评论(0) 推荐(0)
Hibernate联合主键映射以及组件映射
摘要:这次来谈谈联合主键映射,联合主键(表中的主键由两个或两个以上字段组成)。在Hibernate中联合主键的形成有两种可能:一种是由多对多映射形成的,多对多映射会形成第三张表,一般来说第三张表的主键是由其他两张表的主键构成的(比如学生表,课程表,选课表)。第二种情况就是很常见的情况,即只有一张表,表的主键是由本身的两个字段或以上构成的。比如:公司的财务统计表,其中有字段年份、月份、销售金额。在这张表中年份和月份才唯一确定一条记录。下面就来说说联合主键第二种情况的配置,就以上面的财务统计表来说明。对于联合主键的这种情况,我们经常把表中的主键字段提取出来单独作为一个类,其他字段则作为另一个类。对于财务 阅读全文
posted @ 2011-06-09 21:48 sp2012 阅读(3602) 评论(0) 推荐(0)
常用的Hibernate的映射与数据库表的关系(二)
摘要:上篇文章介绍了下多对一的关系关联映射,这次来介绍下其他的几种映射。首先,介绍下一对多。有人会有疑问:一对多和多对一不是一样的吗?下面我们接着用学生和班级的例子继续来说明下。一对多表示:控制方在一的这一端,比如可以查找属于同一个班级下的所有的学生。这个该怎么实现,试想下你要查找班级下的学生你的Classes类下面就必须要有Student类对象的这个属性字段。private Set<Student> students;利用这个属性来加载属于当前班级下的所有的学生。其他的属性字段同一对多的一样。项目结构图如下:当前使用的是一对多的映射,配置一般在一的一端。配置如下:<hiberna 阅读全文
posted @ 2011-06-05 12:29 sp2012 阅读(512) 评论(0) 推荐(0)
常用的Hibernate的映射与数据库表的关系
摘要:学HIbernate快一个月了,怕以后对于Hibernate的诸多映射关系有所混乱,所以趁着还比较清晰的状态写下来。同时也希望对刚学Hibernate的同学有所帮助。首先我们要明白什么是Hibernate,为什么要使用Hibernate?明白了这个问题更加有利于我们学好Hibernate,更加的了解Hibernate与数据库的关系。什么是Hibernate,官方这样解释:Hibernate is an object/relational mapping tool for Java environments. The term object/relational mapping (ORM) re 阅读全文
posted @ 2011-06-05 11:16 sp2012 阅读(3095) 评论(0) 推荐(0)