1.servlet定义
宏观: servlet是Sun制定的用Java开发文本应用程序的规范,标准,技术,
微观:servlet是一个可以部署到webServer可以被客户端访问的Java类
2.servlet与普通Java类区别
servlet | 普通java类 |
---|---|
可以处理客户端请求 | 不能处理客户端请求 |
必须部署到web服务器中才能运行 | 不需要部署到web服务器中就能运行 |
实现servlet接口,一般继承自HttpServlet抽象类 | 一般继承自Object |
创建,生命周期各个方法的调用由容器控制完成 | 创建与方法的调用,由程序员代码控制 |
3.开发Servlet
- 继承Httpservlet
- 重写覆盖doGet,dopost方法
- 在web.xml中配置servlet
<servlet>
<servlet-name>aa</servlet-name>//外号,随便叫
<servlet-class>com.mxz.ClassName</servlet-class>
//packageName+classname 不能改变
</servlet>
<servlet-mapping>
<servlet-name>aa</servlet-name>//外号,与上面保持一致
<url-pattern>/txt</url-pattern>//有斜杠,供客户端访问使用
<url-pattern>/jpg</url-pattern>//支持多个urlpattern
</servlet-mapping>
4.继承结构
自定义Servlet(一般重写doget与dopost方法)—>HttpServlet抽象类(实现了http协议的servlet)——>GenericServlet(与协议无关的servlet)——>Servlet接口(定义了三个方法init(),service(),destory())
5.生命周期
阶段 | 调用的方法 |
---|---|
实例化 | 构造方法 |
初始化 | init方法 |
服务 | services方法(客户端每向服务器发送一次请求,都会调用一次) |
销毁 | destroy方法(当webApp停止时会调用) |
不可用 | finalize方法(当垃圾回收车收集对象内存时调用) |