servlet
*概念:运行在服务器端的小程序
*servlet就是一个接口,定义了Java类被浏览器访问到的规则
*将来我们自定义一个类,实现servlet接口,复写方法
*快速入门:
*执行原理:
1.当服务器接收到客户端浏览器的请求后,会解析请求url路径,获取访问的servlet资源路径
2.当查找web.xml文件,是否有对应的<url-patterm>标签体内容
3.如果有则会调用对应的的<servlet-class>全类名
4.tomcat会将字节码文件加载进内存,并且创建其对象
*生命周期
1.被创建:init方法,只执行一次
*默认情况下,第一次被访问时,servlet被创建
*servlet的init方法,只执行一次,说明servlet在内存中只存在一个对象,servlet是单例的
*多个用户同时访问时,可能存在线程安全问题。
解决:尽量不要在servlet中定义成员变量,即使定义了也不要修改值。
2. 提供服务:service方法,执行对象
3.被销毁:destroy方法,只执行一次
只有服务器正常关闭,才会执行destroy方法。
在servlet被销毁之前执行,一般用于释放资源。
*servlet 3.0:
*好处:注解配置
*步骤
1.创建JavaEE项目,选择3.0以上版本
*体系结构:
servlet --接口
genericservlet --抽象类
httpservlet --抽象类
*GenericServlet:将servlet接口中其他的方法做了默认空实现,只将service方法作为抽象
*HttpServlet:对http协议的一种封装,简化操作
1.定义类继承HttpServlet
2.复写doGet/doPost方法
7.servlet相关配置
1.urlpattern:servlet的访问路径
*一个servlet可以定义多个访问路径