zoukankan      html  css  js  c++  java
  • servlet的应用

    ## Servlet ##

    #简单介绍;
    >> 基本概念;
    |-- 一个类,用于将java应用发布到web上;
    |-- 两个包:
    以后需要学习的web三大开发组件都在里面;
    |-- javax.servlet
    |-- javax.servlet.http

    #简单的应用;
    >> servlet的实现类
    |-- 手动复写service函数;
    >> 配置web.xml;
    |-- 为servlet起名字;
    |-- 指定servlet的路径(包名+类名)
    |-- 指定servlet的映射路径;
    |-- 映射名字;
    |-- 匹配的路径;
    >> 详细:
    --------------------------------------------------------------------------------------------------
    <servlet>
    <servlet-name>任意起的一个名称,一般会使用servlet的类名</servlet-name>
    <servlet-class>servlet的全名 就是包名.类名.</servlet-class>
    </servlet>


    <serlvet-mapping>
    <servlet-name>要与上面的servlet-name的值一样</servlet-name>
    <url-pattern>/名称</url-pattern>
    </servlet-mapping>

    --------------------------------------------------------------------------------------------------

    >> 将其部署到服务器上;
    |-- 浏览器地址栏中输入:主机名/应用名/包名/rul-pattenrn中的名称


    #使用MyEclipse部署Servlet应用;

    >> 注意事项:
    |-- 不要直接使用F2修改应用名; --- 使web工程名和应用名保持一致;
    |-- Servlet的两种实现方式;
    |-- GenericSerlvet
    |-- HttpServlet(MyEclipse会自动继承该类);
    |-- Mapping URL
    |-- 其中配置的路径决定浏览器地址栏中的路径;
    |-- 注意启动时端口被占用情况;
    |-- 当外部使用JDK1.7编译,而MyEclipse中使用tomcat6进行部署时,可能会出现问题;

    >> 基本步骤;
    |-- 新建web项目;
    |-- 创建工作空间(包)
    |-- 新建Servlet;

    >> doGet函数和doPost函数与service方法的关系;
    |-- service方法将调用doXX方法;
    即使子类不写service方法,其父类当中也会有该方法;
    该方法内部会自行判断提交方式是GET还是POST;
    而当自己重写service方法后,可能会未重写其中调用方法;
    导致调用失效;

    #Servlet的生命周期

      >>实例化

            实例化只被执行一次

      >>初始化

           初始化只被执行一次

      >>服务(service方法)

       请求执行n次

     >>销毁

         服务器结束(tomcat),只被执行一次

      >> 对生命周期的改写;
              |-- 可以将实例化和初始化的动作放在tomcat的启动时进行;
              |-- 注意考虑利弊;
              |-- 方式;
              |-- <load-on-startup>取值</load-on-startup>
              |-- 取值范围从2 开始,1为tomcat使用,取值越小优先级越高;

    #Servlet的具体配置细节;

    >> 可以配置多个映射地址;
    |-- <servlet-mapping></servlet-mapping>
    |-- <servlet-name></servlet-name>
    |-- <url-pattern></url-pattern>
    |-- 可以并列使用配置多个映射地址;

    >> url-pattern的写法
    |-- 它的值要与浏览器输入的地址相匹配,
    通过url-pattern可以查找到servlet-name,
    再通过serlvet-name可以查找到对应servlet类.

    > 可以使用通配符;
    |-- /× (过滤后面指定的资源);
    |-- ×.扩展名 (过滤指定后缀名的资源);
    |-- /× 优先级较高;

    >> 缺省Servlet【/】--- 当请求资源找不到,缺省会直接执行;
    |-- 自定义404界面;

                                           

  • 相关阅读:
    1. 关于GCD的使用(串并行队列和同步异步函数的问题)
    陌院俅颗难炎先当粮澜
    openresty在centos/redhat6.7上部署
    tomcat 日志那点事
    Redhat6.7 切换Centos yum源
    Quartz corn时间表达式(转)
    Jquery控制滚动Div 滚动条事件
    fastjson排序 Map多层嵌套转换自动排序问题终极解决方案
    Spring 外部注入Bean (JAX-WS)
    SSH,如何恢复通过输入密码的方式来登录服务器
  • 原文地址:https://www.cnblogs.com/bwcx1375/p/7076470.html
Copyright © 2011-2022 走看看