review

review

  1. post提交方式下的设置编码,防止中文乱码
    request.setCharaterEncoding(“utf-8”);
    get提交方式,tomcat8开始,编码不需要设置
    tomcat8之前,get方式设置比较麻烦:
String fname = request.getParameter("fname");
byte[ ] bytes = fname.getBytes("iso-8859-1");
fname = new String(bytes,"UTF-8");
  1. servlet继承关系以及生命周期
  1. servlet接口:init(),service(),destroy()

Genericservlet抽象子类:abstract service();
Httpservlet抽象子类:
实现了service方法,在service方法内部通过request.getMethod()来判断请求的方式,然后根据请求的方式去调用内部的do方法。
每一个do方法进行了简单实现,主要是如果请求方式不符合,则报405错误目的是让我们的servlet子类去重写对应的方法(如果重写的不对,则使用父类的405错误实现)
2) 生命周期:实例化、初始化、服务、销毁
——Tomcat负责维护servlet实例的生命周期
——每个servlet在Tomcat容器中只有一个实例,它是线程不安全的
——Servlet的启动时机:
——servlet3.0开始支持解: @webservlet
3.HTTP协议 :

  1. 由 Request 和 Response 两部分组成
  2. 请求包含了三部分:请求行、请求消息头、请求主体:
    (普通的get方式请求)guery string、
    post方式请求——form data 、
    json格式——request payload
    3)响应包含了三个部分:响应行、响应消息头、响应主体
    4.HttpSession
  3. HttpSession:表示 会话
  4. 为什么需要HttpSession,原因是因为Http协议是无状态的
  5. Session保存作用域:一次会话范围都有效;
    void Session.setAttribute(k,v);
    Object Session.getAttribute(k);
    4)其他的API:session.getId(),session.isNew(),session.getCreationTime(),session.invalidate()等等
  1. 服务器端转发和客户端重定向
    1. 服务器端转发 : recuest,getRequestDispatcher(“index.html”).forward(request,response);
    2. 客户端重定向: response.sendRedirect(“index.html”);
  2. thymeleaf的部分标签
  1. 使用步骤: 添加jar ,新建viewBaseservlet(有两个方法) ,配置两个 : view-prefix ,view-suffix
  2. 部分标签 :

th:if :表示如果
th:unless :表示否则相当于else
th:each :迭代标签
th:text:内部文本标签

你可能感兴趣的:(javaweb,servlet,java,tomcat)