Hibernate
文章平均质量分 68
keke_Xin
这个作者很懒,什么都没留下…
展开
-
hibernate hbm转换Java|级联等概念介绍|级联删除
4.4.3. 根据映射对象生成映射文件上节提到了用hbm2java将影射文件生成映射对象,依靠xdoclet标签完成。xdoclet也是依靠此标签完成与影射文件的 同步。这样实际开发中会带来很大的便利,我们只要维护代码,而不需要手动维护与影射文件的同步。xdoclet标签 可以由上节讲的方法去转化得来,当然如果熟悉了xdoclet标签,手动完成即可。xdoclet的使用很方便,可以加入我 们已有的...原创 2012-07-05 08:52:51 · 243 阅读 · 0 评论 -
JDBC常用面试题整理(转)
转自:http://it.deepinmind.com 什么是JDBC,在什么时候会用到它? JDBC的全称是Java DataBase Connection,也就是Java数据库连接,我们可以用它来操作关系型数据库。JDBC接口及相关类在java.sql包和javax.sql包里。我们可以用它来连接数据库,执行SQL查询,存储过程,并处理返回的结果。 JDBC接口让Java程序和JDBC驱...原创 2014-03-20 14:14:19 · 135 阅读 · 0 评论 -
Hibernate使用get(id)获得的对象进行更改会在事务提交时持久化到数据库中(即使不用update和merge方法)...
今天同事发现个问题,从使用get(id)的形式从数据库中获得对象,改变对象的ID,在没有使用update和merge方法的情况下竟然保存到数据库中了。当时很不解,后来就在网上搜,才知道是hibernate把get(id)获得的对象称为持久化对象,对其做的更改会在事务提交后保存到数据库中。也知道需要了解hibernate对象的三种状态了,临时状态,持久化状态和游离态。下面是在百度知道上搜到的答案,...原创 2013-09-24 20:35:51 · 561 阅读 · 1 评论 -
Hibernate对象的三种状态以及各种方法的不同之处(如save和persist等)
三种状态的转换: hibernate的状态 hibernate的各种保存方式的区(save,persist,update,saveOrUpdte,merge,flush,lock)及 对象的三种状态 hibernate 的保存 hibernate对于对象的保存提供了太多的方法,他们之间有很多不同,这里细说一下,以便区别。 一、预备知识 在所有之前,说明一下,对于hiberna...原创 2013-09-24 20:27:31 · 164 阅读 · 0 评论 -
使用SVN检出Struts Spring Hibernate源码
Spring Spring源码是由springframework.org维护管理的,spring-framework 是spring 3.0以上版本spring-maintenance 是spring 3.0以下版本spring-security是原Acegi演变出的spring子项目(权限安全管理框架)Spring每个目录下面都有tags、trunk、branches三种区分tags一般指...原创 2013-02-05 16:50:51 · 179 阅读 · 0 评论 -
Spring事务传播机制(即事务类型)和隔离级别
1 事务的传播属性(Propagation) 1) REQUIRED ,这个是默认的属性 Support a current transaction, create a new one if none exists. 如果存在一个事务,则支持当前事务。如果没有事务则开启一个新的事务。 被设置成这个级别时,会为每一个被调用的方法创建一个逻辑事务域。如果前面的方法已经创建了事务,那么后面的方法支持...原创 2013-06-24 17:52:13 · 132 阅读 · 0 评论 -
Hibernate中HQL函数汇总及其说明
Criteria查询对查询条件进行了面向对象封装,符合编程人员的思维方式,不过HQL(Hibernate Query Language)查询提供了更加丰富的和灵活的查询特性,因此Hibernate将HQL查询方式立为官方推荐的标准查询方式,HQL查询在涵盖Criteria查询的所有功能的前提下,提供了类似标准SQL语句的查询方式,同时也提供了更加面向对象的封装。以下就是HQL的一些常用函数,有了...原创 2013-06-24 17:39:10 · 119 阅读 · 0 评论 -
hibernate里createSQLQuery的addEntity()和setResultTransformer()方法
今天看到同事写的一个方法,就是用List<ProObj> poList = getSession().createSQLQuery("select number, name, description from table protocol where number = ?").addScalar("number", new StringType())").addScalar("nam...原创 2013-06-07 17:22:49 · 169 阅读 · 0 评论 -
Hibernate 中Query的list方法和iterate方法
Hibernate中用hql通过query进行查询的时候,通常会用list或者iterate取得查询到的结果.在此简单说明一下这两个方法的不同之处和适用场景. List:查询到的结果会被完整地放进内存(session的缓存),实体会处于持久状态.如果用迫切连接(fetch)模式,取得的结果可能会存在主表对应的一条记录会在list里存在多个实例(准确的讲是实例引用),多次出现但是指向同一个...原创 2013-06-07 16:31:40 · 188 阅读 · 0 评论 -
hibernate缓存机制
1. Cache简介:缓存(Cache )是计算机领域非常通用的概念。它介于应用程序和永久性数据存储源(如硬盘上的文件或者数据库)之间,其作用是降低应用程序直接读写永久性数据存储源的频率,从而提高应用的运行性能。缓存中的数据是数据存储源中数据的拷贝,应用程序在运行时直接读写缓存中的数据,只在某些特定时刻按照缓存中的数据来同步更新数据存储源。缓存的物理介质通常是内存,而永久性数据存储源...原创 2012-08-16 17:32:42 · 114 阅读 · 0 评论 -
JDBC事物处理(Spring和Hibernate事物的底层实现,帮助你理解一些配置的参数的意义)...
jdbc中的事务处理2008-11-13 11:54基本上,事务代表了工作的一个逻辑单位。因为数据库的主要责任是保存信息,它需要有某种方法让用户可以指出当前的程序状态应该保存。同样地,当事情出错时,需要有一种方法来指出数据库应该忽略当前的状态而回到前面保存的程序状态。在数据库技术中,这些功能被称为事务。为了完成这些任务,JDBC API 包括了两个方法作为 Connection ...原创 2012-08-01 14:59:58 · 176 阅读 · 0 评论 -
hibernate多对多中间表问题
hibernate 多对多 中间表ID生成方式 定稿其实大家都没理解我的意思。我是说在hibernate多对多的关系中,中间表是不需要生成配置文件和POJO的。所有如果存在ID主键,hibernate是不能向中间表插入主键的除非多对多配置成两个1对多,并且生成中间表的配置文件这样不是我想要的。现在我搞明白了如果中间表生成配置文件,那配置成2个一对多进行关联。如果单纯的多对多关系不生成中间表...原创 2012-07-09 18:50:54 · 199 阅读 · 0 评论 -
Hibernate级联(cascade)与反转(inverse)介绍汇总
来源:http://www.tianxiaboke.com/u/lyeerwy级联保存和更新当Hibernate持久化一个临时对象时,在默认情下,他不会自动持久化所关联的其他临时对象,如果希望当持久化对象时把他所关联的所有临时对象进行持久化的话:可以把 的cascade属性设置为"save-update" ,cascade的默认属性值为none。cascade:设置操作对象时的级联操作,即层级...原创 2012-07-06 14:40:23 · 184 阅读 · 0 评论 -
hibernate级联删除不起作用(做项目时遇到的问题)
昨天在项目中遇到一个Hibernate双边多对一的问题,想在delete一方的时候级联删除所有多方,hbm文件配置的没有问题,但怎么都无法级联删除成功,最后发现时自己删除一方的方法写的不对,正常的应该使用delete(A a)这样的方法,而我通过HibernateCallback写了一个deleteById(String id)这个方法,删除的时候也是使用的deleteById,结果当然无法级联删...原创 2012-07-06 13:46:44 · 266 阅读 · 0 评论 -
getHibernateTemplate().execute(new HibernateCallback())方法
1. HibernateCallback是一个接口,该接口只有一个方法doInHibernate(org.hibernate.Session session),该方法 只有一个参数 Session。 2. 方法 doInHibernate 的方法体就是 Spring执行的持久化操作。 3. 使用HibernateTemplate执行execute(new Hibernate...原创 2012-07-05 19:21:29 · 200 阅读 · 0 评论 -
Hibernate通过配置文件自动生成数据库表
Hibernate支持自动建表,在开发阶段很方便,可以保证hbm与数据库表结构的自动同步。如何使用呢?很简单,只要在hibernate.cfg.xml里加上如下代码Xml代码<property name="hbm2ddl.auto">update</property> update:表示自动根据model对象来更新表结构,启动hibernate时会自动...原创 2014-03-25 16:57:45 · 348 阅读 · 0 评论