No Hibernate Session bound to thread, and configuration does not allow creation



No Hibernate Session bound to thread, and configuration does not allow creation

No Hibernate Session bound to thread, and configuration does not allow creation

出现了这个问题,原因就是没有给操作数据库的service方法配置事务。 事务传播行为种类解析及配置如下例:

Spring在TransactionDefinition接口中规定了7种类型的事务传播行为,它们规定了事务方法和事务方法发生嵌套调用时事务如何进行传播:[......]

Read more

Hibernate session的方法全集



Hibernate session的方法全集

方法摘要

Transaction

beginTransaction () 开始一个工作单位,并返回值相关的事务对象。

Session.LockRequest

buildLockRequest ( LockOptions lockOptions) 建立一个LockRequest指定LockMode,悲观锁超时和锁的范围。

void

cancelQuery () 取消当前查询的执行。

void

clear () 彻底清除[......]

Read more

hibernate session生命周期示例

hibernate session生命周期示例。今天做了一个hibernate关于session的生命周期的测试,用的eclipse的junit工具类。

在昨天入门配置的基础上,创建了一个Sourse folder  名为test,主要放置测试类。

 

首先解释一下持久化对象:

瞬时对象(Transient Objects):使用new 操作符初始化的对象不是立刻就持久的。它们的状态是瞬时的,也就是说它们没有任何跟数据库表相关联的行为,只要应用不再引用这些对象(不再被任何其它对象所引用),它们的状态将会丢失,并由垃圾回收机制回收。 持久化对象(Persist[......]

Read more

Spring+Hibernate集成后事务与Session的一些理解

Spring+Hibernate集成后事务与Session的一些理解。

Spring的配置文件,在web.xml加载时,就按照类得映射给动态注入了,而且对于其中需要加载的hibernate配置文件,也只加载一次,就把sessionFactory注入给对象中。然后在类中如果需要取得sessionFactory,只需继承HibernateDaoSupport来取得session.不需要在类中写set方法,因为由HibernateDaoSupport中提供。

以往我们单独使用Hibernate编程式事务,我们都是这样的步骤:

Session session=HibernateUti[......]

Read more

Hibernate中SessionFactory配置

Hibernate中SessionFactory配置。SessionFactory配置

因为Hibernate被设计为可以在许多不同环境下工作,所以它有很多配置参数。幸运的是,大部分都已经有默认值了,Hibernate发行包中还附带有示例的hibernate.properties文件,它演示了一些可变的参数。一般你只需要把这个文件放到你的classpath,配置一下即可。

1. 可编程配置方式

net.sf.hibernate.cfg.Configuration的一个实例代表了应用程序中所有的Java类到SQL数据库的映射的集合。Configurati[......]

Read more

hibernate3中出现 could not initialize proxy – no Session 错误的解决办法以及lazy load的介绍

hibernate3中出现 could not initialize proxy – no Session 错误的解决办法以及lazy load的介绍。 could not initialize proxy – no Session 异常: org.hibernate.LazyInitializationException: could not initialize proxy – no Session at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:57) at or[......]

Read more

Hibernate的session.flush做了什么呢?

Hibernate的session.flush做了什么呢?

这是在一次事务提交时遇到的异常。 an assertion failure occured (this may indicate a bug in Hibernate, but is more likely due to unsafe use of the session) net.sf.hibernate.AssertionFailure: possible nonthreadsafe access to session 注:非possible non-threadsafe access to the session (那是另外的[......]

Read more

Hibernate 管理session介绍

Hibernate 管理session介绍。

SessionFactory.getCurrentSession 与openSession 的 区别 :

如果使用getCurrentSession()来创建session,在commit后,session就自动被关闭了,也就不用再手动session.close().但是如果使用的是openSEssion()创建session,在commit后,session并没有关闭,那么必须显示的关闭session,也就手动调用session.close()。需要在hibernate.cfg.xml中如下配置:    如果采用jdbc独立引用程序配[......]

Read more

Hibernate的session管理

Hibernate的session管理。在利用Hibernate开发DAO模块时,我们和Session打的交道最多,所以如何合理的管理Session,避免Session的频繁创建和销毁,对于提高系统的性能来说是非常重要的,以往是通过eclipse的插件来自动完成这些代码的,当然效果是不错的,但是总是觉得不爽(没有读懂那些冗长的代码),所以现在打算自己实现Session管理的代码。

我们知道Session是由SessionFactory负责创建的,而SessionFactory的实现是线程安全的,多个并发的线程可以同时访问一个SessionFactory并从中获取Session实例,那么S[......]

Read more

Hibernate的Session与SessionFactory

Hibernate的Session与SessionFactory。

sessionhibernatespringinterceptor数据库thread
[javascript] view plaincopy
HibernateUtil这个类就是帮助你建一个SessionFactory,管理Session的
要用session的时候,从这个类里面拿就是了

——————————————————–

好像Session不是线程安全的吧。
HibernateUtil.java其实就是把SessionFa[......]

Read more