Servlet
Servlet的概述
什么是Servlet:
是运行在服务器端的一小的Java程序,接收和响应从客户端发送请求.Servlet的作用:
处理客户端的请求,并且对请求作出响应.servlet请求
servlet函数
实现HttpServlet重写下面方法init(var1); 服务器初始化,调用的函数,一般用于加载配置文件
service(req,resp); 请求先访问的是service函数,判断后调用了对应的doXxx()函数;
doGet(req,resp); 可以通过req对象获取客户端的数据调用service层,响应给客户端;
doPost(req,resp); 可以通过req对象获取客户端的数据调用service层,响应给客户端;
destroy(); servlet销毁时执行
servlet在web.xml配置
Servlet请求路径:
配置格式:<servlet>
<servlet-name>servlet名称</servlet-name>
<servlet-class>全限定名(就是servlet文件路径)</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>servlet名称</servlet-name>
<url-pattern>浏览器请求路径</url-pattern>
</servlet-mapping>
Servlet初始化配置:
在servlet标签有一个子标签 load-on-startup作用:用来修改servlet的初始化时机(就是Servlet类的init()方法执行时机)
取值:正整数 值越大优先级越底
1)load-on-startup元素标记容器是否在启动的时候就加载这个servlet(实例化并调用其init()方法)。
2)它的值必须是一个整数,表示servlet应该被载入的顺序
2)当值为0或者大于0时,表示容器在应用启动时就加载并初始化这个servlet;
3)当值小于0或者没有指定时,则表示容器在该servlet被选择时才会去加载。
4)正数的值越小,该servlet的优先级越高,应用启动时就越先加载。
5)当值相同时,容器就会自己选择顺序来加载。
所以,<load-on-startup>x</load-on-startup>,中x的取值1,2,3,4,5代表的是优先级,而非启动延迟时间。
servlet生命周期
生命周期指的是一个对象从创建到销毁的过程.Servlet的生命周期,Servlet对象从创建到销毁的过程.
客户端第一次访问该Servlet的时候才会创建一个Servlet的对象,那么Servlet中的init方法就会执行.任何一次从客户端发送的请求,那么服务器创建一个新的线程执行Servlet中service方法为这次请求服务.
service方法的内部根据请求的方式的不同调用不同doXXX的方法.当Servlet从服务器中移除或者关闭服务器的时候Servlet对象就会被销毁.destroy的方法就会执行.
servlet内置对象
- request 请求- response 响应
- servletConfig Servlet所在的WEB应用的配置信息。
- servletContext 上下文对象(全局管理者)
- cookie 客户端的会话技术
- session 服务端的会话技术