在SSH框架上,dao中openSession得到的session怎么绑定到spring的事务上

发布于 2022-09-01 06:34:40 字数 339 浏览 11 评论 0

问题是这样的:
一张user表被分成100张分表(从user_01~user_99),这样问题就来了,最早期的想法是 把所有的hql语句 改成sql语句,但是执行sql时,并不能在保存对象后得到这个保存对象的信息,这条路就夭折了。

紧接着,用的第二种方法,放弃SessionFactory.getCurrentSession,转而使用SessionFactory.openSession,在opensession之前添加拦截器,修改提交sql的表名,但是dao中的opensession得到的session,在service的事务中不起作用,该怎么将session绑定到spring管理的事务中呢, 大神如果有好的分表解决方案也可以告知

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

峩卟喜欢 2022-09-08 06:34:40

为什么要分表呢?不过SQL可以得到被插入数据的id。
String sql = "INSERT INTO table (column1, column2) values(?, ?)";
stmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
不同数据库可能有区别,详见:
http://stackoverflow.com/questions/1376218/is-there-a-way-to-retrieve-...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文