这里主要记录Servlet中的几个对象的用法
首先是servlet 在web.xml中的配置:
<context-param> <!--所有Servlet共享-->
<param-name>name1</param-name>
<param-value>value1</param-value>
</context-param>
<context-param>
<param-name>encode</param-name>
<param-value>utf-8</param-value>
</context-param>
<servlet>
<servlet-name>ServletDemo</servlet-name>
<servlet-class>day_052102.ServletDemo</servlet-class>
<init-param><!--配置信息,通过ServletConfig获取-->
<param-name>name1</param-name>
<param-value>value1</param-value>
</init-param>
<init-param>
<param-name>encode</param-name>
<param-value>utf-8</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>ServletDemo</servlet-name>
<url-pattern>/ServletDemo</url-pattern>
</servlet-mapping>
ServletContext:
(1)作为域对象使用(四大域对象中的)
- 作用范围:整个web应用范围内共享数据
- 生命周期:当服务器启动web应用加载后创建出ServletContext对象后,域产生。当web应用被移除出容器或服务器关闭,随着web应用的销毁域销毁
(2)获取web初始化参数
标签为某一个单独的servlet加配置信息,这种配置信息在其他的Servlet中是无法访问到的;
使用标签(与Servlet标签并列)为整个Web应用配置属性的话,那所有的Servlet就都能访问里面的参数
- 请求参数 parameter — 浏览器发送过来的请求中的参数信息
- 初始化参数 initparameter — 在web.xml中为Servlet或ServletContext配置的初始化时带有的基本参数
- 域属性 attribute — 四大作用域中存取的键值对
(3)实现转发
this.getServletContext().getRequestDispatcher(“/servlet”).forword(request,response);
ServletConfig:
获取配置信息, 标签中定义的参数信息
可以使用ServletConfig.getServletContext() 得到ServletContext对象;
Servlet继承关系
Servlet是个接口
GenericServlet 实现了Servlet接口
HttpServlet 继承 GenericServlet 类
HttpServletRequest、 HttpServletResponse分别是ServletRequest和ServletResponse(抽象类)的子类
javax.servlet.http.HttpSession接口 request.getSession();
jsp九种内置对象:
request javax.servlet.http.HttpServletRequest 客户端的请求信息
response javax.servlet.http.HttpServletResponse 网页传回客户端的响应
session javax.servlet.http.HttpSession 与请求有关的会话
out javax.servlet.jsp.JSPWriter 向客户端浏览器输出数据的数据流
application javax.servlet.ServletContext 提供全局的数据,一旦创建就保持到服务器关闭
pageContext javax.servlet.jsp.PageContext JSP页面的上下文,用于访问页面属性
page java.lang.Object 同Java中的this,即JSP页面本身
config javax.servlet.servletConfig Servlet的配置对象
exception java.lang.Throwable 针对错误网页,捕捉一般网页中未捕捉的异常