开发者社区> 问答> 正文

Spring+Hibernate框架怎么创建session和事务

我现在用的是声明式事务管理,控制在service层,现在在service时的一个实现类中的方法里面开启了一个新的线程new Thread,在里面需要session,怎么在这个新的线程里面开启session?

展开
收起
小旋风柴进 2016-03-03 15:33:04 2174 0
1 条回答
写回答
取消 提交回答
  • Session 也就是 Hibernate中一个事务操作的缓存对象,Spring封装Hibernate也就是封装对Session的操作,简化对session的操作。  SessionFactory 是Spring专门为Hibernate定制的Session工厂类, 如果我们不用Spring,直接使用Hibernate,我们则需要写一个配置文件 hibernate.cfg.xml 文件,但是既然用了spring,那么直接配置在spring bean容器中了,其中配置,数据库连接,hql的指定数据库翻译器(Dialect),java对象和数据库表的映射文件加载 等。 hibernate3 一般用的是 org.springframework.orm.hibernate3.LocalSessionFactoryBean 这个类。  HibernateTemplate 是Hibernate操作进行封装,我们只要简单的条用HibernateTemplate 对象,传入hql和参数,就获得查询接口, 至于事务的开启,关闭,都交给HibernateTemplate 对象来处理。  HibernateTemplate 如果要看它的优越性,应该要结合spring的配置式事务。 spring + hibernate 使用spring配置式事务, 你会发觉你的代码会节省很多,而程序的管理,修改 和 扩展方面, 增强了好多。  自己实际写一个代码跑一下,这样才能有体会。 
    

    “答案来源于网络,供您参考” 希望以上信息可以帮到您!

    2019-09-27 10:15:14
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载
阿里特邀专家徐雷Java Spring Boot开发实战系列课程(第18讲):制作Java Docker镜像与推送到DockerHub和阿里云Docker仓库 立即下载

相关实验场景

更多