首页
App
&
Coffee
文档
项目
分享
反馈
俱乐部
登录
注册
JFinal如何实现类似事务委托在事务提交后执行指定代码
lang3126
2021-07-29 11:14
举个例子:事务通过Db.tx();来处理,在业务过程中会写入很多待发送消息的log,如何实现在事务提交后自动触发发送消息的代码(也就是log持久化到数据库以后开始发送消息)。
项目:
JFinal
评论区
要输就输给追求
2021-07-29 11:49
boolean result = Db.tx();
回复
lang3126
2021-07-29 14:04
@要输就输给追求
boolean result = Db.tx(Log log = new Log(); log.save(); Message.send(log);); 假设我是通过消息队列异步发送Message.send(log),这种情况下,只要事务还没有提交,消息队列取到log是还没有持久化到数据的。需要等待事务提交后处理,有没有好的方案?
回复
lang3126
2021-07-30 15:22
@JFinal
大佬,我们JFinal有没有办法实现类似Spring的事务管理 TransactionSynchronizationManager.registerSynchronization
回复
doubuxingle
2021-07-30 18:14
boolean result = Db.tx(Log log = new Log(); log.save(); ); if(result) Message.send(log);
回复
jfinal爱好者22
2021-07-31 16:47
@doubuxingle
赞!
回复
lang3126
2021-08-06 11:43
@doubuxingle
如果是嵌套事务,这种方式就不适合了,不知道Db.tx支不支持AOP?
回复
发送
我要反馈
热门反馈
扫码入社