1、什么是servlet
Servlet 是一个用 Java 编写的 Web 应用程序,此程序在服务器上运行以处理客户端请求
2 Servlet技术特点
(1)可移植性
支持不同的操作系统平台
支持不同的应用服务器平台
(2)功能强大
支持Java API核心的所有功能
包括Web和URL访问、图像处理、数据压缩、多线程、JDBC、序列化对象等
(3)简洁
面向对象
在封装方面具有先天的优势
(4)安全性
是用JAVA编写的,所以可以使用JAVA的安全框架Servlet API被实现为类型安全的
容器也会为Servlet进行安全管理
(5)模块化
每一个Servlet可以独立执行一个特定的任务
可以将多个Servlet并在一起工作并且它们之间还可以进行通信
(6)集成
Servlet与应用服务器紧密集成,共同完成任务
(7)扩展性和灵活性
Servlet本身的接口设计得非常精简,使得它具有很强的可扩展性
(8)高效耐久
Servlet一旦载入,它就驻留在内存中,这样做就加快了响应速度
Servlet 的生命周期
servlet 的生命周期是指自创建 Servlet 实例起其存在的时间直至销毁不可用为止. Servlet 加载--->实例化--->服务--->销毁。
主要三个方法" init() 初始化,仅执行一次service()服务,可以反复执行destrory()销毁,仅执行一次"
注:加载 即启动web.xml后 仅执行一次 实例化--->init()仅执行一次 服务--->service()实际开中发一般用doGet和doPost取代,可以 反复执行 销毁-->destrory()仅执行一次
<servlet>
<servlet-name>RegisterServlet</servlet-name>
<servlet-class>com.baidu.controller.RegisterServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>UserServlet</servlet-name> <url-pattern>/UserServlet</url-pattern>
</servlet-mapping>
servlet对象
1 out对应PrintWriter out=response.getWriter()
System.out.println();输出的是程序里的
2HttpServletRequest/ServletRequest
3HttpServletResponse/ServletResponse
4HttpSession对象
HttpSession session = request.getSession();
5application对应ServletContext对象
ServletContext sc = this.getServletContext();
开发servlet三种方式
1、extends HttpServlet 实际开发中一般使用此种方法 ,在web.xml中自动生成
2、extends GenericServlet 然后重写service方法即可,web.xml要手工配置
3、implements Servlet 实现Servlet然后重写service方法即可,web.xml要手工配置
<servlet>
<servlet-name>q2</servlet-name>
<servlet-class>com.controller.Tmp2</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>q2</servlet-name>
<url-pattern>/Tmp2</url-pattern>
</servlet-mapping>