Servlet内容

Servlet 接受请求,调用JavaBean去处理请求

   Jsp 接收请求,调用javaBean去处理请求、显示数据(jsp是一种负责显示的技术,如何专注显示?--》将显示与接受请求、处理请求的工作分开)

   JavaBean: 封装数据   业务逻辑

   

Servlet做了什么

   本身不做任何业务处理、只是接收请求并决定调用哪个JavaBean去处理请求、确定用哪个页面来显示处理返回的数据

Servlet是什么?

   Server+Applet,是一种服务器端的java应用程序

   只有当一个服务器端的程序使用了servlet API的时候,这个服务端的程序才能称之为servlet

Servlet

Java程序 、运行在服务器端、需要web容器的支持、使用了servletAPI、本身不做任何业务处理,中间调度作用

servletAPI

Javax.servlet.Servlet接口

  所有java Servlet的基础接口类,规定了必须由servlet具体类实现的方法集

Javax.servlet.GenericServlet类

 是servlet的通用版本,是一种与协议无关的Servlet

Javax.servlet.http.HttpServlet类

 在GenericServlet基础上扩展的基于Http协议的servlet

 Init()  

 Service()

 doGet()

 doPost()

 Destroy()

第一个servelet

Servlet中主要的方法

      Init() :servlet的初始方法,仅仅会执行一次

      Service() 处理请求和生成响应 (类似于doGet 和dopost)

     Destroy() 在服务器停止并且程序中的servlet对象不再使用的时候调用,只执行一次

  servletRequest

      封装客户的请求信息

      作用相当于JSP内置对象request

 servletResponse

      创建响应信息,将处理结果返回给客户端

      作用相当于JSP内置对象response

 servletCOnfig

      包含了servlet的初始化参数信息

 

 

Servlet生命周期

加载和实例化

初始化

处理请求

 销毁

 

生命周期     谁来做                    何时做

实例化       servlet容器    当servlet容器启动或者容器检测到客户端请求时

初始化       servlet容器    实例化后,容器调用servlet的init()初始化对象

处理请求     servlet容器    得到客户端请求并作出处理时

销毁         servlet容器   当程序中的servlet对象不再使用的时候,或者web

                           服务器停止运行的时候

 

Servlet路径跳转问题

    HttpServletReponse(重定向 reponse.senRedirect())

       Http://localhost:8080/Title/addServlet

  1. 相对路径
     response.sendRedirect("newsDetailList.jsp");
     Http://localhost:8080/Title/addServlet/newsDetailList.jsp
  2. 绝对路径
     response.sendRedirect("/Title/jsp/admin/newsDetailList.jsp");
      Http://localhost:8080/Title/jsp/admin/newsDetailList.jsp
     
      HttpServletRequest  转发 request.getRequestDispatcher().forward();
            Http://localhost:8080/Title/addServlet
    1相对路径
    request.getRequestDispatcher("newsDetailList.jsp").forward(....);
     Http://localhost:8080/Title/addServlet/newsDetailList.jsp
    2绝对路径
    request.getRequestDispatcher("/jsp/admin/newsDetailList.jsp").forward(....);
      Http://localhost:8080/Title/jsp/admin/newsDetailList.jsp
      
    过滤器的概念
    是向web应用程序的请求和响应添加功能的web服务组件
    过滤器可以统一的集中处理请求和响应
    使用过滤器技术实现对请求数据的过滤
     
     
      过滤器使用步骤
           建立实现Filter接口的类(javax.servlet.Filter)
           实现过滤行为-doFilter()
              doFilter(..){
               //过滤请求
               Chain.doFilter(request,reponse);//调用下一个过滤器或web资源
              //过滤响应
    }
           在web.xml中配置过滤器
                <filter>
                  <filter-name>过滤器名</filter-name>
                   <filter-class>过滤器的完全限定名</filter-class>
                </filter>
                <filter-mapping>
                  <filter-name>过滤器名</filter-name>
                   <url-pattern>过滤器映射的web资源</url-pattern>
                 <filter-mapping>
     
     
    java.lang.IllegalArgumentException: Control character in cookie value or attribute.
     
     
     
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值