【发布时间】:2014-08-02 00:54:32
【问题描述】:
我需要在一个非常大的现有系统中的每个日志记录语句中包含用户 ID。用户的信息当前存储在 HttpSesssion 中,我可以从我们的 sevlet 中的 HttpRequest 轻松获取该信息。但我在所有其他被调用的 POJO 中也需要这些信息。
我可以传递这些信息,但我不想这样做,因为我不想修改我们系统中每个方法的签名,因为那样会花费太长时间并且需要进行太多测试。
另外,调用 Restful 服务时我需要用户的 id。我可以轻松地在每个请求上传递该 ID,但是这样做的工作量也是不可取的。
存储/接收此类“全局”信息的最佳做法是什么?最好我希望通过我们的身份验证逻辑设置一次此信息,然后可以从 JVM 中的任何其他类(servlet、pojo、服务等)访问,包括跨 Java 应用程序(.war)。
这可能吗?
谢谢。
【问题讨论】: