Servlet

Servlet

Servlet在web.xml中的配置

<Servlet>

       <servlet-class>

       <Servlet-name>

       <init-param>

              <param-name>

              <param-value>

<Servlet-mapping>

<servlet-name>

<url-pattern>

生命周期

Tomcat在启动时会加载各个项目中的web.xml,用户通过浏览器输入的地址会进行匹配(有精确匹配和模糊匹配)。通过读取URI,得到servlet配置信息(自己找自己的),并进行加载,创建对象(访问创建或者自动创建)。构造函数,创建 servletconfig 然后是 sevletcontext(域对象),创建获取init (初始化方法),创建 HttpServletRequest\HttpServletResponse(单实例多线程)然后是service(),给用户的浏览器进行响应,最后是destroy();

servlet

自己找自己的

这个init-param专门应用于servlet初始化,可在servlet初始化是进行参数配置。

获取:this.getServletConfig.getInitParamter()\getInitParamerNames()

这种配置只能servlet自己使用自己的。还有一种用于整个web项目都可访问的配置

<context>

       <context-name>

       <context-value>

获取:this.getServletContext.getServletContext()

不能写在servlet配置中。

 

有精确匹配和模糊匹配

精确匹配:就是一模一样

模糊匹配:就是使用通配符了,或者/后什么也没有写 例如:www.ai.cn/zhongguo/

       非法:/*.do  合法:*.do

缺省路径就是Tomcat内置的路径,用于解析静态文件。先找动态,后找静态。

访问创建或者自动创建

访问创建:就是用户访问后进行创建。

自动创建:在servlet配置中加上<load-on-startup>1   数字越大越往后加载

域对象

增:this.getServletConfig.setAttribute(“”,””);

删:getAttribute()

取:removeAtrribute()

存取的是Object,不仅仅限于字符串。

This.getServletConfig.getServletContextPath();//web路径

getRequestDispatcher()//转发与重定向(sendRedirect)区别就是可以携带req\resp,转发不能访问web程序之外的页面。

初始化方法

有init()和init(ServletConfig):init()是sun公司留给给开发者进行开发的。不能复写有参数的。

单实例多线程

Syonchronized,注意进行减少此中的代码,在里面的越多处理的时间越长。

 

ServletConfig 与 ServletContext区别

config是配置servlet的,context是web应用程序的。

 

posted @ 2016-08-05 00:22  泥猴桃\n  阅读(168)  评论(0编辑  收藏  举报