Servlet学习笔记心得

1、初步入门:html

init 方法被设计成只调用一次。它在第一次建立 Servlet 时被调用,在后续每次用户请求时再也不调用。浏览器

service() 方法是执行实际任务的主要方法。Servlet 容器(即 Web 服务器)调用 service() 方法来处理来自客户端(浏览器)的请求,并把格式化的响应写回给客户端。服务器

每次服务器接收到一个 Servlet 请求时,服务器会产生一个新的线程并调用服务。service() 方法检查 HTTP 请求类型(GET、POST、PUT、DELETE 等),并在适当的时候调用 doGet、doPost、doPut,doDelete 等方法。ide

service() 方法由容器调用,service 方法在适当的时候调用 doGet、doPost、doPut、doDelete 等方法。因此,您不用对 service() 方法作任何动做,只须要根据来自客户端的请求类型来重载 doGet() 或 doPost() 便可。post

doGet() 和 doPost() 方法是每次服务请求中最经常使用的方法:分别用来响应来自客户端即浏览器端的get和post请求。编码

doGet() 和 doPost() 方法中通常要调用url

HttpServletRequest request,HttpServletResponse response

利用这两个对象中的方法来实现想达到的功能。spa

eg:线程

public void doGet(HttpServletRequest request,
                    HttpServletResponse response)
            throws ServletException, IOException
  {
      // 设置响应内容类型
      response.setContentType("text/html");

      // 实际的逻辑是在这里
      PrintWriter out = response.getWriter();
      out.println("<h1>" + message + "</h1>");
  }


不少状况下,须要传递一些信息,从浏览器到 Web 服务器,最终到后台程序。浏览器使用两种方法可将这些信息传递到 Web 服务器,分别为 GET 方法和 POST 方法。设计

GET 方法向页面请求发送已编码的用户信息。页面和已编码的信息中间用 ? 字符分隔,以下所示:

http://www.test.com/hello?key1=value1&key2=value2

POST 方法打包信息的方式与 GET 方法基本相同,可是 POST 方法不是把信息做为 URL 中 ? 字符后的文本字符串进行发送,而是把这些信息做为一个单独的消息。消息以标准输出的形式传到后台程序,您能够解析和使用这些标准输出。Servlet 使用 doPost() 方法处理这种类型的请求。

使用 Servlet 读取表单数据

Servlet 处理表单数据,这些数据会根据不一样的状况使用不一样的方法自动解析:

  • getParameter():调用 request.getParameter() 方法来获取表单参数的值。

  • getParameterValues():若是参数出现一次以上,则调用该方法,并返回多个值,例如复选框。

  • getParameterNames():若是您想要获得当前请求中的全部参数的完整列表,则调用该方法。

相关文章
相关标签/搜索