config对象表明当前JSP配置信息, 但JSP页面一般无须配置,所以在JSP页面中比较少用,可是Servlet中则用处相对较大。
配置JSP也是在web.xml文件中,JSP被当成Servlet配置,Servlet的配置配置在init-param标签下,该标签下的param-name和param-value两个子标签分别表示配置项的名称的值。
例如以下的JSP配置,即Servlet配置信息:配置都放在servlet标签下,servlet-name标签下配置servlet名称为get_config,jsp-file标签配置servlet对应的页面是/jsp/get_config.jsp,即jsp目录下的get_config.jsp页面(注意文件名必须以/开头);两个init-param标签配置两个参数,一个参数名为name,值为Toby;一个参数名为age,值为32;servlet-mapping标签把名为get_config的servlet映射到url路径/get_config下,该路径下是相对于根url的路径。html
<servlet> <servlet-name>get_config</servlet-name> <jsp-file>/jsp/get_config.jsp</jsp-file> <!-- 必须在/开头 --> <init-param> <param-name>name</param-name> <param-value>Toby</param-value> </init-param> <init-param> <param-name>age</param-name> <param-value>32</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>get_config</servlet-name> <url-pattern>/get_config</url-pattern> </servlet-mapping>
get_config.jsp页面代码以下:java
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>测试config内置对象</title> </head> <body> Servlet名称: <%=config.getServletName() %><br /> name配置项值: <%=config.getInitParameter("name") %><br /> age配置项值: <%=config.getInitParameter("age") %><br /> </body> </html>
在浏览器中访问/get_config,就能够看到/jsp/get_config.jsp页面的内容:
若是在浏览器中直接访问get_config.jsp页面,结果以下:
可见,若是但愿JSP页面以获取web.xml配置文件中的配置信息,那么必须经过servlet-mapping标签配置的路径访问相应的JSP页面,这样才能让配置参数起做用,直接经过jsp文件访问得不到任何配置信息。web