关于Servlet的一些归纳(1)

时间:2022-05-17 16:56:19

1、servlet接口

含5个抽象放法

void init(ServletConfig config) throws ServletException //初始化Servlet

void service(ServletRequest request,ServletResponse response) throws ServletException,IOException  //获得请求数据进行处理,并响应

void destroy()  //销毁

ServletConfig getServletConfig() //返回由Servlet容器传递给init()方法的ServletConfig对象

String getServeltInfo() //返回Servlet的一段描述

Servlet的生命周期:

--->实例化

--->第一次加载调用init

---->service 每次请求是都会执行

--->destroy 销毁,服务器停止时调用一次

servlet和CGI的区别:

servlet 多线程的,每次启用是调用一个线程,可以并发访问跟多

CGI:每次请求启动一个进程,并发访问数少

2、web.xml文件

<web-app>

  //欢迎页,默人首页,如果不配置,默认为tomcat路径下的全局配置,如果已经配置,则会覆盖tomcat下面的全局配置

  <welcome-file-list>

    <welcome-file>index.jsp</welcome-file>

    <welcome-file>default.jsp</welcome-file>

    <welcome-file>index.html</welcome-file>

  </welcome-file-list>

  <servlet>

    <servlet-name>TestServlet</servlet-name>

    <servlet-class>com.cnblog.TestServlet</servlet-class>

  </servlet>

  <servlet-mapping>

    <servlet-name>TserServlet</servlet-name>

    <url-pattern>/test</url-pattern>

  </servlet-mapping>

</web-app>

3、ServletRequest接口

  常用方法   String  getParameter(String name) 获得请求的参数值

         String[]  getParameterValues(String name) 获得多个请求参数值

         void setAttribute(String name,Object value) 设置属性

         Object  getAttribute(String name)获取参数

         void removeAttribute(String name)移除参数

         String getScheme() 获得请求协议

         String getServletName()获得服务器名

         int getServerPort()获得服务器端口号

         String getLocalAddr() 获得服务器ip地址

         String getRemoteAddr() 获得客户端ip地址

         void setCharacterEncoding(String encode) 设置请求编码(只对post提交起作用)

       对GET提交跟POST提交都管用的设置编码方式   String name = request.getParameter("name");

                             name = new String(name.getBytes("ISO-8859-1","UTF-8"));

4、ServletResponse接口

  PrintWriter getWriter()获得输出流 ServletOutputStream getOutputStream

  void setCharacterEncoding(String encode)设置响应编码

  void serContextType("text/html;charser=UTF-8")设置相应编码跟MIME类型