Javaweb Servlet核心接口学习记录(1)—ServletConfig接口
servlet接口是servlet主要抽象的API,所有servlet都需要直接实现这一接口或者继承实现了该接口的类。servlet API中有两个类实现了Servlet接口,GenericServlet和HttpServlet。大多数情况下,开发人员只需要在这两个类的基础上扩展来实现他们自己的Servlet。在servlet体系中,除了上述两个类外,还有一些辅助servlet获取相关资源的重要接口:
- ServletConfig接口:用于获取servlet初始化参数和servletContext对象;
- ServletContext接口:代表当前servlet运行环境,servlet可以通过servletContext对象来访问Servlet容器的各种资源;
- HttpServletRequest接口:用于封装Http请求信息;
- HttpServletResponse接口:用于封装Http响应信息;
本小节单独介绍ServletConfig接口
1. javax.servlet.ServletConfig接口的定义为:
public abstract interface javax.servlet.ServletConfig;
容器在初始化一个servlet时,将为该servlet创建一个唯一的的servletConfig对象,并将这个对象通过init(ServletConfig config)方法来传递并保存在此Servlet对象中。
2.ServletConfig的主要方法:
方法 | 方法描述 |
---|---|
getInitParameter(String param) | 根据给定的初始化参数名称,返回匹配的初始化参数值 |
getInitParameterNames(String param) | 返回一个Enumeration对象,里面包含了所有的初始化参数 |
getServletContext() | 返回一个ServletContext()对象 |
getServletName() | 返回当前servlet的名字,即@WebServet的name属性值, 如果没有配置这个属性值,则返回servlet类的全限定名 |
3.ServletConfig接口获取Servlet初始化参数
由容器从Servlet的配置属性(如initParams
或<init-param>
所指定的参数)中读取。
示例: Servlet初始化参数在web.xml文件中的配置:
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>com.qst.chapter03.servlet.HelloServlet</servlet-class>
<init-param>
<param-name>url</param-name>
<param-value> jdbc:oracle:thin:@localhost:1521:orcl</param-value>
</init-param>
<init-param>
<param-name>user</param-name>
<param-value>qst</param-value>
</init-param>
&