关于context-param的信息
servlet3.0如何配置context-param
//2.0?中配置方式如下:
context-param?????
param-namefacelets.DEVELOPMENT/param-name?????
param-valuetrue/param-value?
/context-param
//3.0?中配置方式如下:
@Configuration?
@ComponentScan?
@EnableAutoConfiguration?
public?class?Application?implements?ServletContextInitializer?
{?????
????public?static?void?main(String[]?args)?{?????????
????????SpringApplication.run(Application.class,?args);?????
????????}?????
????????
????@Override?????
????public?void?onStartup(ServletContext?servletContext)?????????????
????throws?ServletException?{?????????
?????????servletContext.setInitParameter(?????????????????
????????"facelets.DEVELOPMENT",?????????????????
????????"true");????
????????}?
}
网页链接
如何在Java类中初始化context-param
web转java工程,额,貌似web。xml文件只能你去手动解析了。因为在web环境下,容器会帮你自动解析的 。
java如何获取web.xml 值
比如这样的 web.xml
context-param
??param-nameparam1/param-name
??param-valuevalue1/param-value
/context-param
在servlet 中读取
String?value?=?getServletContext().getInitParameter("param1");
//?value?==?"value1"
context-param元素的描述参数
param-name 子元素包含有参数名,而param-value子元素包含的是参数值。作为选择,可用description子元素来描述参数。
下面是一个含有context-param元素的有效部署描述符:
?xml version=1.0 encoding=ISO-8859-1?
!DOCTYPE web-app
PUBLIC -//Sun Microsystems, Inc.//DTD Web Application 2.3//EN
web-app
context-param
param-namejdbcDriver/param-name
param-valuecom.mysql.jdbc.Driver/param-value
/context-param
/web-app
在servlet中读取context-param时出现NullPointerException
应该在Servlet生命周期初始化方法中读取初始化参数。
你配置文件中的参加名字和你代码读取的参数名字写的不一样。
参数可以配置到servlet/servlet里被当前servlet读取,也可以放到外部被所有servlet读取。
public?class?SiteInfo?extends?HttpServlet{
???private?String?address;
???public?void?init(){
??????address?=?getServletContext().getInitParameter("Address").toString();
???}
}
spring 配置 classpath*:/applicationContext-*.xml classpath*:/applicationContext.xml
很明显啊,后面是全名,前面加了通配符。
后面只找这个文件: applicationContext.xml
前面的找 applicationContext-*.xml: applicationContext-任何字符都可以放在这里.xml