标签:公司 完整 pattern value lips http请求 pac 请求 web资源
一、Servlet简介
Servlet是sun公司提供的一门用于动态web资源的技术
sun公司在其API中提供了一个Servlet接口,用户若想开发一个动态web资源,需要完成两个步骤:
二、Servlet的运行过程
Servlet是由Web服务器调用,web服务器收到客户端的Servlet访问请求后:
三、Servlet运行图
四、Eclipse开发创建Servlet
五、Servlet开发细节
由于客户端是通过URL地址访问web服务器中的资源,所以Servlet若想被外界访问,必须把Serlvet程序映射到一个URL地址上,这个工作在web.xml文件中完成。
<servlet>
<!-- servlet-name是指servlet名字 --> <servlet-name>ServletDemo1</servlet-name>
<!-- servlet对应的类的完整类名 --> <servlet-class>com.atguigu.servlet.ServletDemo1</servlet-class> </servlet>
<!-- 映射一个已经注册servlet的对外访问路径 --> <servlet-mapping> <servlet-name>ServletDemo1</servlet-name> <url-pattern>/servletDemo1</url-pattern> </servlet-mapping>
Servlet是一个供其他java程序调用的java类,它不能独立运行,它的运行完全是Servlet引擎来控制和调度。
针对客户端的多次Servlet请求,通常情况下,服务器只会创建一个Servlet实例对象,也就是说Servlet实例对象一旦创建,它就会驻留在内存中,为后续的其他请求服务,直至web容器退出,实例对象才销毁。
在Servlet整个生命周期中,init()方法只被调用一次,而对于一个Servlet的每次访问请求,都会导致Servlet引擎调用一次Servlet的service方法。对于每次访问请求,servlet引擎都会创建一个新的HttpServletRequest和一个新的HttpServletResponse响应对象,然后将这两个对象作为参数传入它调用的service方法中,service方法再根据请求方式分别调用。。。方法。
如果某个Servlet的映射路径仅仅为一个 / ,那么这个Servlet就成为当前web应用程序的缺省Servlet
<servlet> <servlet-name>ServletDemo2</servlet-name> <servlet-class>com.atguigu.servlet.ServletDemo2</servlet-class> </servlet> <servlet-mapping> <servlet-name>ServletDemo2</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
在tomcat的安装目录\conf\web.xml文件中,注册一个名称为org.apache.catalina.servlets.DefaultServlet的Servlet,这是一个缺省Servlet
<servlet> <servlet-name>default</servlet-name> <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>0</param-value> </init-param> <init-param> <param-name>listings</param-name> <param-value>false</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet>
当访问tomcat中的某个静态HTML和图片时,实际上就是在访问这个缺省Servlet.
标签:公司 完整 pattern value lips http请求 pac 请求 web资源
原文地址:http://www.cnblogs.com/lfdingye/p/6127590.html