zoukankan      html  css  js  c++  java
  • Java Web学习笔记之---Servlet

    Java Web学习笔记之---Servlet

    (一)如何实现Servlet

    1.实现javax.servlet.Servlet接口;

    2.继承javax.servlet.GenericServlet类;

    3.继承javax.servlet.http.HttpServlet类;

     

    (二)Servlet的生命周期

     

    (1)init()  方法:初始化

        只被调用一次,在创建servlet的时候被调用

    (2)service()方法:处理客户端的请求

        执行实际任务的主要方法,在适当的时候调用doGet(),doPost(),doPut(),doDelete()等方法

    (3)destroy()方法:销毁

       只被调用一次,在Servlet生命周期结束时被调用

    (三)servlet配置

    (1)在web.xml中配置路径和参数

     

    (2)利用注解配置

    @WebServlet("/LoginServlet")

    (四)Java Web的四大域对象

    (1)ServletContext

        1. 作用域:web应用期间

        2.一个应用中只创建一个ServletContext对象

        3. 方法:

             ServletContext application = this.getServletContext();

                  application.setAttribute();    application.getAttribute();

                  application.removeAttribute();

    (2)Servletrequest

        1. 作用域:当前请求中

        2. 方法:

              request.setAttribute();    reuqest.getAttribute();

                   request.removeAttribute();    request.getParameter();

    (3)HttpSession

        1. 作用域:整个会话期间

        2. 服务器会为每一个会话创建一个Session对象,所以Session中的数据可供当前会话中所有Servlet共享

        3. 方法:

              HttpSession session = request.getSession();

              session.setAttribute();    session.getAttribute();

                  session.removeAttribute();

    (4)PageContext

        1. 作用域:页面执行期间

        2. 方法:

             

    (五)jsp内置对象在Servlet中如何使用

     

    (六)转发与重定向

       区别:

    1. 转发时地址栏不发生变化,重定向时地址栏发生变化
    2. 转发只向服务器发起一次请求,重定向向服务器发起两次请求
    3. 转发可以携带数据,重定向只能借助ServletContext

    转发:request.setAttribute("count",co);

          request.getRequestDispatcher("count.jsp").forward(request,response);

          <%=request.getAttribute("count")%>

    重定向:ServletContext s=this.getServletContext();

            s.setAttribute("count",co);

            response.sendRedirect("count.jsp");

            <%=application.getAttribute("count")%>

  • 相关阅读:
    [zt]活法
    Oracle: wmsys.wm_concat、sys_connect_by_path、自定义函数实现行列转换
    主题:福布斯中文网的一篇关于 宽带山男和篱笆女的文章
    Oracle:指定时间范围内的周分组输出.
    Oracle:查看表空间使用情况.
    Oracle:SQL优化基本步骤
    .NET调用ORACLE存储过程使用数组参数
    CTM CJQ高手指点怎么输出手法
    Oracle:DBMS_RANDOM.VALUE取随机数.
    ASPNET:DateFormatString详解
  • 原文地址:https://www.cnblogs.com/dyddzhp/p/11233095.html
Copyright © 2011-2022 走看看