【发布时间】:2014-03-29 04:10:10
【问题描述】:
我正在开发一个分为几个模块的 j2ee webapp。我有一些元数据,例如用户名和偏好,我想从应用程序的任何地方访问它们,并且可能还收集类似于日志记录信息但特定于请求的数据并将其存储在这些元数据中,以便我可以选择将其发送回作为给用户的调试信息。
除了在从上层表示类到下层 daos 的每个方法中传递通用上下文对象或使用 AOP 之外,唯一想到的解决方案是使用与会话 BTW 非常相似的线程本地“上下文”对象,并添加一个过滤器,用于在正在进行的请求上绑定它并在响应时解除绑定。
但是这样的事情感觉有点hacky,因为这会破坏几种模式,并且在测试和调试时可能会使事情变得复杂,所以我想问一下根据您的经验,这样进行是否可以?
【问题讨论】:
标签: java jakarta-ee thread-local