第1节 Servlet概述
1.什么是Servlet?
Servlet实际上是一个用Java编写的类,运行在web服务器。
2.Servlet主要用于处理客户端发送来的请求,并作出响应。
3.servlet能够处理doGet()和doPost()方法;
doGet():用于处理get方式发送的请求;
doPost():用于处理post方式发送的请求;
4.Servlet的特点:
1)方便:Servlet能够处理难度比较高的html表单;
2)跨平台:Servlet就是Java程序,可以实现跨平台;
3)可拓展性高:由于Java程序可继承,所以具有可拓展性;
4)Servlet可以实现多个程序之间的共享;
第2节 Servlet的接口和实现类
1.Servlet是一个接口,在javax.servlet包下;
2. Servlet的5个方法:
1)destroy()-------销毁servlet对象;
2)init()------对servlet对象进行初始化;
3)service()------用来接收客户端发送的请求,作出响应;
4)getServletConfig()
5)getServletInfo()-----返回servlet的作者、版本等;
3.servlet接口的实现类
1)GenericServlet类实现了Servlet接口;
2)HttpServlet类实现类Servlet接口;
HttpServlet是GenericServlet类的子类;
4.init()初始化方法只能调用一次;
5.destroy()方法也是只能被调用一次;
第3节 xml中如何配置Servlet?
第4节 创建第1个Servlet程序
1----创建一个web项目
2------创建一个类,继承HttpServlet,重写doGet/doPost.
配置类的xml文件
显示结果:
第5节 Servlet类的生命周期
Servlet类的生命周期有3个阶段:
初始化阶段:
首先当servlet容器接收到服务器端发送来的请求时会先解析请求,看看是否含有servlet对象,有的话直接使用,没有则创建一个servlet对象,之后调用init()对servlet对象进行初始化。在整个生命周期内,init只能被调用1次;
运行阶段:
对Servlet对象进行初始化之后,会存在两个对象,分别是ServletRequest和ServletResponse;然后调用service方法,将该两个对象当做参数传给service。service就会获取到请求并作出响应;在整个生命周期内,客户端每发送一次请求,都会调用一次service方法。
销毁阶段:
当响应回显到浏览器之后,如果关闭服务器,那么servlet对象就会调用destroy方法来销毁自身,以便于释放资源。destroy方法在整个生命周期内,只能被调用1次;
第6节 继承HttpServlet类的好处
1.首先,当一个类继承HttpServlet之后,就可以重写doGet()和doPost()方法,而不用重写service();
2.可以根据请求方式的不同,定义相应的doGet()和doPost()方法。
3.可以将请求和响应强转为HttpServletRequest和HttpServletResponse.
第7节 实现servlet虚拟路径的映射
1.我们创建好的servlet类,只有映射成虚拟路径之后,客户端才可以访问;
2.Servlet的多重映射:
指的就是一个servlet可以映射成多个虚拟路径,也可以说,客户端可以通过多个路径来访问到同一个servlet资源;
1)配置多个servlet-mapping
代码演示:
显示结果:
2)配置多个url-pattern
代码演示:
第8节 servlet虚拟路径中使用通配符*
代码演示1:
代码演示2:
第9节 缺省servlet
1.如果某个url虚拟路径仅仅只是一条/,那么该servlet就是缺省servlet。可以接收任意请求。
第10节 ServletConfig接口
1. ServletConfig接口用于获取xml文件当中的配置信息;
代码演示:
显示结果:
第11节 ServletContext接口
1.当servlet容器启动的时候,会给每一个web应用创建一个ServletContext对象代表当前web应用。该对象封装了web应用的所有信息,而且还实现了多个servlet之间资源的共享。
代码演示:
显示结果:
2.实现多个servlet之间数据的共享
代码演示:
显示结果:
3.servlet读取web应用下的资源文件
代码演示: