ServletCofnig
它是什么?它有什么用?它是由谁创建的?
ServletConfig是Servlet的一个配置对象.
每一个servlet都有一个对应的ServletCofnig。
ServletConfig是由web服务器创建的,它通过Servlet的init方法传递到了
Sevlet中.
ServletCofnig作用:(它是servlet的一个配置对象)
1.可以获取Servlet的名称 getServletName();---web.xml文件中的<servlet-name>的值.
2.可以获取初始化参数
getInitParameter(String name); 根据name获取value
getInitParameterNames(); 获取所有的name值,它返回的是一个Enumeration.
对于Enumeration它相当于是一个Iterator。
Iterator hasNext() next()
Enumeration hasMoreElement() nextElement();
3.可以获取ServletContext对象。
通过代码去测试一下这些操作
问题:我们在Servlet中怎样获取ServletConfig对象
我们要查看怎样获取ServletConfig对象,
我们现在知道,ServletConfig对象是由服务器创建,通过Servlet的init方法传递到Servlet中.
在Servlet类中通过this.getServletConfig()就获取了ServletConfig对象.
问题:什么是初始化参数?
我们在每一个Servlet的配置中,都可以通过
<init-param>
<param-name>name</param-name>
<param-value>value</param-value>
</init-param>
进行配置,这个就是servlet的初始化参数
问题:初始化参数的作用?
我们可以将一些servlet运行时需要加载常量定义在初始化参数中,当我们需要使用时,
可以直接通过ServletConfig获取到这些值。
ServletConfig总结:
1.每一个Servlet都有自己的ServletConfig对象.(都有自己的小弟,(*^__^*) ……)
2.ServletCofnig对象是由服务器创建,通过Servlet的init方法传递到Servlet中。
3.ServletConfig对象代表的是Servlet的配置对象,可以通过它获取Servlet的名称与相关初始化参数。
4.在Servlet中要获取ServletConfig对象,只需要直接调用getServletConfig()就可以。
它是什么?它有什么用?它是由谁创建的?
ServletConfig是Servlet的一个配置对象.
每一个servlet都有一个对应的ServletCofnig。
ServletConfig是由web服务器创建的,它通过Servlet的init方法传递到了
Sevlet中.
ServletCofnig作用:(它是servlet的一个配置对象)
1.可以获取Servlet的名称 getServletName();---web.xml文件中的<servlet-name>的值.
2.可以获取初始化参数
getInitParameter(String name); 根据name获取value
getInitParameterNames(); 获取所有的name值,它返回的是一个Enumeration.
对于Enumeration它相当于是一个Iterator。
Iterator hasNext() next()
Enumeration hasMoreElement() nextElement();
3.可以获取ServletContext对象。
通过代码去测试一下这些操作
问题:我们在Servlet中怎样获取ServletConfig对象
我们要查看怎样获取ServletConfig对象,
我们现在知道,ServletConfig对象是由服务器创建,通过Servlet的init方法传递到Servlet中.
在Servlet类中通过this.getServletConfig()就获取了ServletConfig对象.
问题:什么是初始化参数?
我们在每一个Servlet的配置中,都可以通过
<init-param>
<param-name>name</param-name>
<param-value>value</param-value>
</init-param>
进行配置,这个就是servlet的初始化参数
问题:初始化参数的作用?
我们可以将一些servlet运行时需要加载常量定义在初始化参数中,当我们需要使用时,
可以直接通过ServletConfig获取到这些值。
ServletConfig总结:
1.每一个Servlet都有自己的ServletConfig对象.(都有自己的小弟,(*^__^*) ……)
2.ServletCofnig对象是由服务器创建,通过Servlet的init方法传递到Servlet中。
3.ServletConfig对象代表的是Servlet的配置对象,可以通过它获取Servlet的名称与相关初始化参数。
4.在Servlet中要获取ServletConfig对象,只需要直接调用getServletConfig()就可以。
5.可以通过ServletConfig获取ServletContext对象.
java代码:
package cn.itcast.servlet;
import java.io.IOException;
import java.util.Enumeration;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LifeServlet extends HttpServlet {
public LifeServlet() {
System.out.println("construction");
System.out.println("construction");
System.out.println("construction");
System.out.println("construction");
System.out.println("construction");
}
public void init() throws ServletException {
System.out.println("in init");
System.out.println("in init");
System.out.println("in init");
System.out.println("in init");
System.out.println("in init");
System.out.println("in init");
}
// public void service(HttpServletRequest arg0, HttpServletResponse arg1)
// throws ServletException, IOException {
// System.out.println("in service~~~~~");
//
//
// }
public void destroy() {
System.out.println("in destroy");
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
ServletConfig config = this.getServletConfig();
String name = this.getServletConfig().getServletName();
System.out.println(name);
//String username = config.getInitParameter("username");
// System.out.println(username);
Enumeration<String> enums = config.getInitParameterNames();
while(enums.hasMoreElements())
{
String name1 = enums.nextElement();
String value1 = config.getInitParameter(name1);
System.out.println(name1);
System.out.println(value1);
}
}
public void doPos(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
ServletConfig config = this.getServletConfig();
String name = this.getServletConfig().getServletName();
System.out.println(name);
String username = config.getInitParameter("username");
System.out.println(username);
}
}
xml:
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1"
metadata-complete="true">
<servlet>
<servlet-name>helloWorldServlet</servlet-name>
<servlet-class>cn.itcast.servlet.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>helloWorldServlet</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>LifeServlet</servlet-name>
<servlet-class>cn.itcast.servlet.LifeServlet</servlet-class>
<init-param><param-name>username</param-name>
<param-value>tom</param-value>
</init-param>
<init-param><param-name>password</param-name>
<param-value>123456</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<description>This is the description of my J2EE component</description>
<display-name>This is the display name of my J2EE component</display-name>
<servlet-name>qq</servlet-name>
<servlet-class>cn.itcast.servlet.qq</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LifeServlet</servlet-name>
<url-pattern>/LifeServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>qq</servlet-name>
<url-pattern>/servlet/qq</url-pattern>
</servlet-mapping>
</web-app>