Servlet 知识梳理
什么是 Servlet
servlet 是java程序,是在服务器上运行以处理客户端请求并做出响应的程序。
生命周期
生命周期的各个阶段
实例化 servlet 容器创建servlet 实例
初始化 该容器调用 init() 方法
请求处理 如果请求servlet ,则容器调用 service() 方法
服务终止 销毁实例之前调用 destroy() 方法
生命周期相关方法
public class HelloServlet implements Servlet {
prvate ServletConfig config;
Public void destory();
public ServletConfig getServletConfig(){
return config;
}
public void init(ServletConfig config)throws ServletException{
this.config=config;
System.out.println("初始化!");
}
Public void service(ServletRequest req,ServletResponse res)
throws ServletException,IOException{
PrintWriter out = res.getWrite();
out.println("Hello world");
out.close();
}
public void destroy() {
super.destroy();
System.out.println("释放资源!"); }
}
九大内置对象
request、response、session、application、out、pagecontext、config、page、exception
接口常用方法
ServletConfig
- 在 Servlet 初始化过程中获取配置信息
- 一个 Servlet 只有一个 ServletConfig 对象
方法名称 | 功能描述 |
---|
String getInitParameter(String name) | 获取web.xml中设置以name命名的初始化参数值 |
ServletContext getServletContext() | 返回Servlet的上下文对象引用 |
ServletConText
方法名称 | 功能描述 |
---|
ServletContext getContext(String path) | 返回服务器上与指定URL相对应的ServletContext对象 |
void setAttribute(String name,Object obj) | 设置Servlet中的共享属性 |
Object getAttribute(String name) | 获取Servlet中设置的共享属性 |
GenericServlet抽象类
提供了Servlet与ServletConfig接口的默认实现方法
方法名称 | 功能描述 |
---|
String getInitParameter(String name) | 返回服务器上与指定URL相对应的ServletContext对象,实际上是调用ServletConfig接口的同名方法 |
ServletContext getServletContext() | 返回Servlet的上下文对象引用,实际上是调用ServletConfig接口的同名方法 |
void init() | 初始化Servlet |
HttpServlet继承于GenericServlet
处理HTTP协议的请求和响应象
方法名称 | 功能描述 |
---|
void doGet(HttpServletRequest request,HttpServletRresponse response) | 以Get请求服务时调用 |
void doPost(HttpServletRequest request,HttpServletRresponse response) | 以Post请求服务时调用 |
配置Servlet
<web-app>
<servlet>
<servlet-name> HttpServletTest </servlet-name>
<servlet-class>cn.jbit.servlet. HttpServletTest </servlet-class>
</servlet>
<servlet-mapping>
<servlet-name> HttpServletTest </servlet-name>
<url-pattern>/HttpServletTest </url-pattern>
</servlet-mapping>
</web-app>
HttpServletRequest类常用方法
方法名称 | 功能描述 |
---|
String getParameter(String param) | 获取客户端请求数据 |
void setCharacterEncoding(String encoding) | 设置输入字符集 |
HttpServletResponse类常用方法
方法名称 | 功能描述 |
---|
void setContentType(String contType) | 设置输出字符集 |
void sendRedirect(String url) | 让浏览器重定向到指定的资源 |