zoukankan      html  css  js  c++  java
  • Servlet的概念与用法


    Servlet:
     Servlet(Servlet+Applet)
     Servlet是一种独立于平台和协议的服务器端Java应用程序,通用Servlet
          可以生成动态Web页面。Servlet还可以在服务器端对客户端的请求进行处理
          ,控制程序的执行。
     Servlet本身不做任何业务处理。只是接收请求并决定调用哪个JavaBean去
         处理请求,确定用哪个页面来显示处理返回的数据。
     Servlet的主要作用就是交互式地浏览和更新数据,并生成动态的页面内容展示。
         不是所有的Java应用程序都是Servlet,只有当服务器端使用Servlet API时,才能
         算是一个Servlet。
     Servlet处理Web请求的过程:
      服务器接收从客户端发送的请求。
      服务器将请求信息发送至Servlet。
      Servlet经过处理后,生成响应的内容。
      服务器将响应的内容返回客户端。

    Servlet与JSP的关系:
     JSP在被Web容器解析的时候,最终会被编译成一个Servlet类。

    Servlet API:
             http://tomcat.apache.org/tomcat-7.0-doc/servletapi/index.html
     常用的接口和类:

    Servlet生命周期的各个阶段:
     加载和实例化------当Servlet容器启动或者容器检测到客户端请求时。
     初始化---------Servlet容器调用init()方法初始化对象
     处理请求---------得到客户端请求并做出处理时,容器调用servlet()方法
     销毁---------当程序中的Servlet对象不再使用的时候,或者Web服务器停止运行的时候。
         


    创建Servlet的三种方法:
     实现Servlet接口。
     继承GenericeServlet类。
     继承HttpServlet类。

    Servlet部署与运行:
     修改web.xml(部署描述文件)
      添加<servlet>:把Servlet内部名映射到一个Servlet类名
      添加<servlet-mapping>:把用户访问的URL映射到Servlet的内部名
     示例:
     <servlet>
         <servlet-name>ServletDemo</servlet-name>
             <servlet-class>com.wu.servlet.ServletDemo</servlet-class>
        </servlet>

            <servlet-mapping>
             <servlet-name>ServletDemo</servlet-name>
                <url-pattern>/ServletDemo</url-pattern>
       </servlet-mapping>

        <url-pattern>的设置方法:

         精确匹配: <url-pattern>/xxx</url-pattern>

         路径匹配:<url-pattern>/xxx/*</url-pattern>

         扩展名匹配:<url-pattern>*.do</url-pattern>

     通过URL访问Servlet
      HTTP://localhost:8080/Servlet/ServletDemo

      容器根据URL中访问的Servlet,在web.xml文件中进行查找,并调用调用该Servlet处理用户的请求。

      查找方式: </servlet-mapping>中<url-pattern>-->  <servlet-name>-->

              <servlet>中<servlet-name>--><servlet-class>


    另外还需注意的是:
     创建Servlet编写Servlet代码后,还要对JSP表单进行修改,实现表单提交时调用Servlet。
     修改表单action属性:
     action="<%=request.getContextPath()%>/ServletDemo"
      <%=request.getContextPath()%>:获取页面上下文环境。
      /ServletDemo:对应web.xml文件中<url-pattern>元素的内容

  • 相关阅读:
    Spark Mllib里的向量标签概念、构成(图文详解)
    Spark Mllib里的本地向量集(密集型数据集和稀疏型数据集概念、构成)(图文详解)
    Spark Mllib里的Mllib基本数据类型(图文详解)
    [转]Debugging into .NET Core源代码的两种方式
    [转]在ASP.NET Core使用Middleware模拟Custom Error Page功能
    [转]Asp.net MVC中的ViewData与ViewBag
    [转]细说 ASP.NET Cache 及其高级用法
    [转]分布式中使用Redis实现Session共享(二)
    [转]Asp.net Core 使用Redis存储Session
    [转]JS跨域解决方式 window.name
  • 原文地址:https://www.cnblogs.com/fifiyong/p/5941818.html
Copyright © 2011-2022 走看看