我正在开发一个使用Spring和Hibernate的Web应用程序,我非常着迷于使应用程序线程安全并能够支持基于我的老板建议的重负载我最终编写自己的session
和一个session container
来实现session per request pattern
。另外我有很多DAOs
而且我不愿意为所有save method
写同一DAOs
我复制粘贴Hibernate GenericDAO
(我不能说它是一样的)事情,因为当时hibernate不归jboss所有并且做管道工作,并且在压力下,所有变得很快变得复杂并且在生产中,StaleObjectException和重复数据是正确的,我觉得是时候回顾什么了我已经完成了,简化了它并使其更加强大,适用于大数据处理。你应该知道的一件事是,一个请求涉及许多DAO。
有石英运行数据库中的一些更新。
尽管我想要更好地调整所有内容,但我没有时间进行必要的研究,而且Hibernate是一种巨大的(学习)。
所以就是这样,我想借用你的经验,并提出几个问题,知道要采取什么方向。
问题1 :Hibernate生成的uuid足够安全,可以用于线程环境并避免StaleObjectException吗?
问题2 什么是在threadSafe场景中使用hibernate getCurrentSession的最佳策略(我已经阅读了关于threadlocal的东西,但没有得到太多的理解,所以没有这样做)
问题3 :HIbernateTemplate会采用最简单的解决方案吗?
问题4 :如果要实现连接池并调整生产服务器的需求,您会选择什么?
请毫不犹豫地将我指向博客或在线资源,我需要的只是一种适合我的方案的方法。你的方法,如果你这样做。
感谢您阅读本文,欢迎每个人的想法......
答案 0 :(得分:14)