我有一项任务是为不同的数据源创建多个会话工厂。一个数据源将用于读取请求,另一个数据源用于读写请求。
我们的数据库服务(DAO包装器)的每个API都作为事务执行。单个API可以调用具有不同读/写属性的多个DAO函数。
执行此任务的最佳方法是什么?
答案 0 :(得分:1)
我假设不同的数据源是不同的数据库。否则,您可以将readOnly属性与@Transactional注释一起使用来管理只读事务。
您可以在DAO层中注入两个单独的会话工厂来管理这些事务。或者,您可以使用AbstractRoutingDataSource。请参阅此here
上的内容