您的位置:首页 > 编程语言 > Java开发

系统学习JavaWeb之五Servlet的配置信息ServletConfig

2016-10-18 17:25 597 查看
    Servlet容器初始化servlet时,容器将ServletConfig作为参数传给servlet的init方法,ServletConfig封装Servlet的配置信息,并可以传给Servlet。通过ServletConfig的方式传给Servlet的每一条信息都称为初始参数。

    为了从一个servlet内部获取某个初始参数的值,应该在servlet容器传给servlet的init方法的ServletConfig中调用getInitParameter方法,String getInitParameter(String paramString);下面是一个简单的例子,演示了获取servlet初始参数的过程

package com.liuyc.sysframe.action;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebInitParam;
import javax.servlet.annotation.WebServlet;

@WebServlet(name = "ServletConfigDemoServlet",urlPatterns = { "/servletconfigDemo" }, initParams = { @WebInitParam(name="admin",value="Harry Taciak")})
public class ServletConfigDemo implements Servlet{
private transient ServletConfig servletConfig;
@Override
public void init(ServletConfig config) throws ServletException {
this.servletConfig = config;
}
@Override
public void service(ServletRequest request, ServletResponse response)
throws ServletException, IOException {
String servletName = servletConfig.getServletName();
String admin = servletConfig.getInitParameter("admin");
response.setContentType("text/html");
PrintWriter writer = response.getWriter();
writer.print("<html><head></head>"
+ "<body> Hello from " + servletName
+ "<br/>Admin: " + admin
+ "</body></html>");
}
@Override
public void destroy() {

}
@Override
public ServletConfig getServletConfig() {
return servletConfig;
}
@Override
public String getServletInfo() {
return "ServletConfigDemoServlet";
}
}


    另外ServletConfig还提供了一个很有用的方法ServletContext getServletContext();可以获取servlet的ServletContext。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: