【发布时间】:2010-10-05 18:21:48
【问题描述】:
通常在定义 DAO 时,您将有一个用于 DAO 对象上的数据源的设置器。 我的问题是我们的数据源会根据对服务器的请求而动态变化。即每个请求都可以访问不同的数据库实例。
请求包含逻辑属性,稍后可用于检索与请求数据库的连接。
所以当依赖注入 DAO 到业务逻辑对象时,我需要一种在运行时(而不是配置时)设置 DAO 属性的方法。
一种解决方案是将数据源存储在线程本地,但我不太喜欢弄乱线程局部变量。
另一种选择是在业务逻辑对象上设置一个初始化方法,该方法使用请求属性在 DAO 上调用初始化。
我想这是一个常见的问题,你能提出一个常见的解决方案吗?
【问题讨论】: