首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >事务-并发代码组织问题。-冬眠

事务-并发代码组织问题。-冬眠
EN

Stack Overflow用户
提问于 2014-03-20 03:26:44
回答 1查看 38关注 0票数 0

设置

我在服务层中执行一些重量级的业务逻辑,其中我一个接一个地调用不同的DAO方法。比如:

代码语言:javascript
运行
复制
myDao.persistOperationOne(myPersistentObject);
//.....Other business logic goes here
myDao.anotherPersistOperation(anotherPersistObject);

现在,他们中的每一个都打开自己的会话,并在事务结束时提交事务。对于我来说,persistOperationOne()和anotherPeristOperation()都发生在某种事务上下文中是很重要的。

问题

如何在一个会话/事务上下文中将DAO逻辑合并到两个不同的方法中。我不喜欢在服务层中创建会话,这根本不是服务的关注点,不是吗?同时,在一个DAO方法中合并两个DAO逻辑将导致服务层业务逻辑被移动到DAO,这也是不可取的?

在这种情况下,是否有一种方法可以灵活地组织代码?

EN

回答 1

Stack Overflow用户

发布于 2014-03-20 12:24:29

我不喜欢在服务层中创建会话,这根本不是服务的关注点,不是吗?

实际上,管理事务是服务的责任。与您的情况一样,数据库上可能有多个操作,需要一次性完成,或者不执行操作,所以最好将它们包装在一个服务中,然后从那里提交。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22522872

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档