【发布时间】:2015-03-05 19:58:40
【问题描述】:
我编写了一个批处理应用程序,它产生多个线程来读取分配的文件并将记录保存到数据库。该架构使用 Spring 上下文和 Hibernate。
事务由 Spring 管理,我使用 SessionFactory.getCurrentSession 获取会话以对每个线程执行保存操作。
考虑到我有一个处理获取、保存、更新操作的通用 DAO 和一个隐藏 Hibernate 实现的外观,我如何确保调用 SessionFactory.getCurrentSession() 时两个线程正在获取它们的专用 Session 对象来执行 DB 操作。
我在 StackOverflow 中发现了一个帖子,有人建议在使用 Spring 托管事务时不要使用 current_session_context_class=thread。 Spring 对current_session_context_class 属性使用的默认实现是什么?
提前致谢!
【问题讨论】:
标签: multithreading spring hibernate sessionfactory