在 Struts 2 工厂类中访问ServletContext
(例如StrutsTextProviderFactory
)
我使用了以下代码:
public class CustomStrutsTextProviderFactory extends
StrutsTextProviderFactory implements ServletContextListener{
private static String myConfig;
@Override
protected TextProvider getTextProvider(Class clazz) {
// I can read myConfig here !
}
@Override
public void contextInitialized(ServletContextEvent event) {
myconfig = event.getServletContext().getInitParameter("config");
}
}
它有效,但我认为定义一个static
属性并以这种方式设置它不是最好的方法。
有没有更好的办法 ?!