【发布时间】:2010-08-18 17:34:30
【问题描述】:
我需要创建一个 Spring bean,以便它存储 HttpServletRequest 对象的 serverName、serverPort、contextPath 属性,以便我可以根据需要将此 bean 注入其他 bean。
在我看来,这些属性不会随任何 URI 改变,因此最好将其初始化一次(无论如何,多次传递 request 实例并没有那么昂贵)。
问题是,如何将HttpServletRequest 实例注入我的配置bean?我更喜欢基于 xml 的注入。很可能我们需要将它作为<property> 注入,但我不知道这个ServletRequest 对象的name 或ref 是什么。
目的是将这些变量保存在 bean 中,以便可以从任何 bean 访问它们,并且当我需要获取 serverName 等时,我不需要将 request 对象作为参数传递给许多方法。
任何想法如何创建这样的 bean 及其配置?
【问题讨论】:
-
我认为这是个坏主意。为什么 Web 层之外的层需要知道这些事情?感觉就像您让网络信息泄漏到您的应用程序的其余部分。