Servlet小结(2)

jsp和servlet的联系:
     jsp文件被tomcat加载成java文件,此java文件实现了servlet标准(接口)的子接口,由此追溯到servlet标准.
      浏览器访问的是编译好的class,而不是jsp文件
   2.在maven中直接用java文件实现网页制作,要获取与浏览器的联系且我们使用的是HTTP协议,所以我们创建的类要继承httpServlet
接口,重写里面的方法。常用的是doGet和doPost方法。
***:访问Servlet需要通过路径(一个servlet可配置多个访问路径)
    配置访问路径:
         a> web.xml配置:
     <servlet>
        <servlet-name>HttpServletTest</servlet-name><!-- servlet名字 -->
        <servlet-class>com.xt.web.servlet.HttpServletTest</servlet-class> <!-- servlet class目录 -->
    </servlet>
    <servlet-mapping>
        <servlet-name>HttpServletTest</servlet-name> <!-- 通过servlet名字配置访问路径 -->
        <url-pattern>/helloWorld</url-pattern><!-- servlet访问路径   注意路径之前必须加/-->
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>HttpServletTest</servlet-name> <!-- 通过servlet名字配置访问路径 -->
        <url-pattern>/helloWorld.html</url-pattern><!-- servlet访问路径   注意路径之前必须加/-->
    </servlet-mapping>
    
    一个servlet 可以配置多个访问路径
    
    
        b> 当使用的servlet版本大于3.0,同事tomcat版本高于7,可以采用注解的方式配置servlet
        eg :@WebServlet("/testServlet")

    3.servlet的生命周期:
           1> 加载Servlet:服务器启动时加载;
           2> 初始化servlet:当servlet第一次实例化(第一次被访问)时调用init()初始化;也可以通过配置web.xml是服务器
加载时就被初始化.
           3> 处理服务: 当有请求时,servlet会调用service()方法(常用doGet()与doPost());
           4> 销毁: 当web容器关闭或检测到一个servlet被删除时会自动调用destory()方法释放实例
           5> 卸载: 当一个实例调用destory()方法后,此时离将等到被垃圾收集器回收,如需在使用此servlet需要重新初始化.
   * 注意: 正常情况下servlet只会初始化一次,而服务处理会被调用多次,销毁也只调用一次.(当你关闭web容器时才会被销毁),但一个
servlet长时间不使用的话也可能会被容器自动销毁,所以在特殊情况下可能会初始化多次获销毁多次.
       
        获取初始化配置信息:
           1> 在web.xml中配置初始化参数:
           <servlet>
               <servlet-name>ElTest</servlet-name>
              <servlet-class>com.xt.web.servlet.hotel.ELTest</servlet-class>
              <init-param>
              <param-name>1</param-name>
              <param-value>www.hao123</param-value>
              </init-param>
           </servlet>

            <servlet-mapping>
               <servlet-name>ElTest</servlet-name>
               <url-pattern>/doLogin</url-pattern>
            </servlet-mapping>

posted @ 2017-12-04 20:52  Shevo  阅读(142)  评论(0编辑  收藏  举报