Hibernate
文章平均质量分 78
fehly
这个作者很懒,什么都没留下…
展开
-
Hibernate常用接口
Hibernate接口Criteria、 Query、 Transaction 查询依赖SessionSessionFactoryConfigurationhibernate.cfg.xml hibernate数据库配置 *.hbm.xml 持久化映射 Configuration类Configuration类负责管理Hibernate的配置信息...2010-03-17 17:07:48 · 100 阅读 · 0 评论 -
Native SQL查询
HQL写的有点累有些东西部是太全,这个就收集整理好了可能有重复的,相互弥补下 你也可以使用你的数据库的Native SQL语言来查询数据。这对你在要使用数据库的某些特性的时候(比如说在查询提示或者Oracle中的 CONNECT关键字),这是非常有用的。这就能够扫清你把原来直接使用SQL/JDBC 的程序迁移到基于 Hibernate应用的道路上的障碍。 Hibernate3允许你使用...2010-04-13 23:15:43 · 235 阅读 · 0 评论 -
Hibernate的事务管理
数据库事务数据库的事务指的是把一系列的数据库操作组成一个单元,这个单元中的所有操作,这些操作要么全部完成,要么全部取消。 事务的特性(acid)数据库事务必须具备ACID特性,ACID是Atomic(原子性)、Consistency(一致性)、Isolation(隔离性)和Durability(持久性)的英文缩写。原子性:一个事务是有一个单元组成的,这个单元包含对数据库的若干个操作,而...2010-04-14 20:00:57 · 82 阅读 · 0 评论 -
Hibernate继承映射
继承映射3种方式,继承关系映射到数据库的表中1.继承关系层次一个表(Table per class hierarchy),这种方式使用一个表存储同一个继承层次的所有类,使用额外的字段来表示所记录的是哪一个子类的数据。2.每一个具体类一个表(Table per concrete class),这种方式让继承关系中的每个具体类对应一个表3.每个子类一个表(Table per subcl...2010-04-15 19:48:22 · 79 阅读 · 0 评论 -
Hibernate过滤器
Hibernate过滤器的概念Hibernate过滤器类似于Servlet的过滤器,对获取的数据进行过滤处理。Hibernate的过滤器的过滤条件,需要配置在映射文件中通过调用Session对象的setFilter()和enableFilter()方法使用该过滤器 使用<filter-def>标签定义过滤器<hibernate-m...2010-04-16 17:31:52 · 148 阅读 · 0 评论 -
Hibernate数据拦截与事件监听
拦截器(Interceptor)org.hibernate.Interceptor接口定义了Hibernate中通用拦截机制创建Session对象的时候,所有的Session对象或者这个Session对象的所有持久化操作的动作都会被指定的拦截器进行拦截.Interceptor接口的方法afterTransactionBegin()当一个事务时候启动时,会立刻调用这个方法,这个方法可以改变...2010-04-17 19:33:32 · 576 阅读 · 0 评论 -
Hibernate的缓存
持久层缓存的级别事务级别的缓存应用(进程)级别的缓存分布式级别的缓存Hibernate的一级缓存Hibernate中的缓存分成两级:一级缓存和二级缓存Hibernate的一级缓存是内置的缓存,不能通过程序代码或者配置进行人为的取消,同时一级缓存通过Session对象实现缓存,所以一级缓存也称为Session缓存 一级缓存的管理使用evict()方法从缓存中移除缓...2010-04-19 19:47:24 · 89 阅读 · 0 评论 -
Hibernate性能优化
使用dynamic-insert与dynamic-update动态的添加与更新 1)<property>元素 insert属性:设置为false,在insert语句中不包含这个字段,表示永远不会被插入,默认true 2)<property>元素 update属性:设置为false,在update语句中不包含这个字段,表示永远不会被修改,默认...2010-04-20 16:25:52 · 75 阅读 · 0 评论 -
Hibernate Annotations
在过去几年里,Hibernate不断发展,几乎成为Java数据库持久性的事实标准。它非常强大、灵活,而且具备了优异的性能。在本文中,我们将了解如何使用Java 5 注释来简化Hibernate代码,并使持久层的编码过程变得更为轻松。 传统上,Hibernate的配置依赖于外部 XML 文件:数据库映射被定义为一组 XML 映射文件,并且在启动时进行加载。 在最近发布的几个Hibern...2010-04-21 14:54:22 · 90 阅读 · 0 评论 -
Hibernate search
搜索引擎全文搜索引擎全文搜索引擎是名副其实的搜索引擎,国外代表有Google,国内则有著名的百度搜索。它们从互联网提取各个网站的信息(以网页文字为主),建立起数据库,并能检索与用户查询条件相匹配的记录,按一定的排列顺序返回结果。 根据搜索结果来源的不同,全文搜索引擎可分为两类,一类拥有自己的网页抓取、索引、检索系统(Indexer),有独立的“蜘蛛”(Spider)程序、或爬虫(Cr...2010-04-22 15:28:51 · 109 阅读 · 0 评论 -
HQL查询
Query接口Query类型与org.hibernate.Criteria很接近,封装了对底层数据库表的查询请求 Query接口的常用方法list()iterate()setMaxResults()setFirstResult()uniqueResult() HQL查询1.查询所有持久化对象Transaction tx=session.beginTransaction(...2010-04-13 20:46:52 · 105 阅读 · 0 评论 -
Criteria查询
Hibernate的三种查询方式1.HQL (Hibernate Query Lanuage) 语句,这是类似SQL语句的一种对象化查询语句.2.使用Criteria对象,进行按条件查询(Query by Criteria,简称QBC)和按示例查询(Query by Example 简称QBE).3.生成原生的sql(Native SQL)语句.Criteria的基本使用T...2010-04-12 18:42:31 · 284 阅读 · 0 评论 -
Hibernate标示符属性的生成策略
标示符属性Hibernate中的标示符属性,也可以称为Hibernate主键标示符属性赋予每个持久化对象独一无二的数值,以此区分不同的持久化对象 标示符属性的生产策略 increment 生成策略从数据库表中获取当前主键字段的最大值,然后在最大值的基础上加1,作为当前持久化对象的标示符属性值<id name="id" type="java.lang.Integ...2010-03-18 16:53:47 · 120 阅读 · 0 评论 -
Hibernate持久化对象生命周期
持久化对象生命周期 Persistent 持久态在session关闭后,在持久态里面的内容,变为托管态,数据如果修改不会影响数据库对应值. Transient 瞬态如果在瞬态session 调用了 save()等方法就变为了持久态 Datached 托管态托管态对象中有主键值,瞬态的id没有主键值 Removed 删除态会被...2010-03-19 14:41:42 · 106 阅读 · 0 评论 -
java.lang.NoClassDefFoundError: org/hibernate/Session的异常
今天写程序突然报这个错误,挺郁闷的,因为这个包是导入别人的(事后才发现)问题是所有类都没报错,挺闷的废话多不说了 这个错误明显是找不到类库 首先检查这个项目的属性中的类库和你本机的类库是否位置相同,如果路径不同,请你更换成自己的本机的路径我就是吃这个亏了,demo:c3p0,ojdbc这些类,导入后,这些类不会自动更新成你本机的路径,(此时你会发现项目的所有包都是正确的,...2010-03-22 15:15:44 · 252 阅读 · 0 评论 -
浅谈OSIV与泛型DAO模式
open session in view 简称 OSIV 模式在Hibernate中能更好的应用Hibernate的性能,会在Hibernate中使用延迟加载的性能,在读取一个持久化对象的时候,可能这个对象会关联到另一个对象,使用延迟加载之后,读取持久化对象,而那些所被关联的持久化对象,如果当时不需要被读取,这些所被关联的持久化对象时不会被读取的,只有能到这些被关联的持久化对象,在需要读取的...2010-04-05 22:13:20 · 213 阅读 · 0 评论 -
Hibernate的集合映射
Set 接口 set类型的对象,被加入的对象不能重复,同时被加入的对象也没有固定的顺序Hashsetimport java.util.HashSet;import java.util.Iterator;//Hashset 不记录先后顺序,不能加重复的public class HashSetExample { public static void main(Strin...2010-04-06 15:31:52 · 70 阅读 · 0 评论 -
Hibernate组件映射
组件Components 除了粗粒度的对象模型设计(一个表映射成一个持久化类)之外,还可以采用细粒度的对象模型,吧一个表的映射成两个或者多个类。被细化出来的类,可以称为组件(Component)组件映射组件映射的单向关联组件映射的双向关联组件集合映射 使用组件集合,可以让组件对象的集合依附于一个持久化对象上 本来说自己写的,网上看了看资料太全面了 就收集整理...2010-04-07 16:03:03 · 83 阅读 · 0 评论 -
Hibernate映射多对一关联关系
多对一的单向关联表于表的关联可以分为一对一,一对多,多对一和多对多 例如在网络商城中,一个大的商品分类下,有多个小的商品分类,一个小的商品分类下,有多个商品 多对一的单向关联 例如 tab <many-to-one name="category" class="com.rbh.examples.Category" outer-join="t...2010-04-08 15:03:23 · 88 阅读 · 0 评论 -
映射一对一关联关系
共享主键关系两个关联表使用相同的主键值 类: <!--通过外键和user的id共享 --> <id name="id" type="java.lang.Long"> <column name="ID" precision="8" scale="0" />2010-04-09 21:08:22 · 98 阅读 · 0 评论 -
映射多对多关联关系
多对多单向关联使用多对多关联,需要借助一个起中介作用的连接表完成。一个多对多的关联通常可以分拆成两个一对多的关联 <set name="product" table="orderitem"> <key column="order_id"></key> <many-to-many class=&q2010-04-10 15:19:23 · 101 阅读 · 0 评论 -
Hibernate与Struts2,Spring
Struts2 框架Struts是Apache组织的一个开源项目,是一种基于MVC设计模式的java web开发框架,利用它可以简化Java Web项目的开发,提高系统的灵活性和可扩展性.Struts 2框架的特点扩展性强支持使用拦截器容易测试默认配置支持使用注解支持Ajax表现层输出形式丰富支持使用OGNL(Object Graph Notation Language)便于与Spring集成...2010-04-25 19:23:12 · 89 阅读 · 0 评论