我听说spEl可以将servlet上下文注入到它的bean属性中。
我正在使用xml配置样式。
你能举个例子吗?答案 0 :(得分:1)
是的,你听到的是正确的。您可以从Spring 3的WebApplicationContext下的任何可用bean中访问servletContext。 您可以在配置文件中定义它(在webapplicationcontext下加载)并访问为:
<bean id="myClass" class="abc.def.MyClass">
<property name="context" value="#{servletContext}"/>
public class MyClass{
private ServletContext context;
public void setContext(ServletContext context){
this.context = context;
}
....
}
答案 1 :(得分:0)
假设您正在使用webmvc,您可以通过@Controller
访问HttpServletRequest
中的servlet上下文:
public ModelAndView theController(HttpServletRequest request ...){
ServletContext servletContext = request.getServletContext();
}
除此之外,您可以@Inject
关于无处不在的ServletContext,即使在您的实体中也是如此。有趣的问题是:你想要实现什么目标?请说明您想要做什么,以便我们能够了解问题所在。