1.servlet基本概念
狭义的servlet是指JAVA语言实现的一个接口,广义的是指任何实现了这个servlet接口的类
2.生命周期及相应的方法
Servlet 的生命周期就是指创建 Servlet 实例之后其存在的时间以及何时消失
分为:装载servlet、处理客户请求和结束servlet三个阶段
init()方法、service()方法、doGet()方法、doPost()方法、destroy()方法
3.servlet的配置
在web.xml中加入的代码如下两段话:
定义一个 Servlet
<servlet>
// servlet的名字(自己命名,每个servlet取名唯一)
<servlet-name>RegServlet</servlet-name>
// Servlet 程序所在的地址(对应的包.类的名称)
<servlet-class>servlet.RegServlet</servlet-class>
</servlet>
给Servlet 取别名
<servlet-mapping>
// servlet的名字(与上面的servlet名字对应)
<servlet-name> RegServlet</servlet-name>
// 具体的映射路径(别名,自己命名,每个servlet别名唯一),前面必须有一个‘/’
<url-pattern>/RegServlet</url-pattern>
</servlet-mapping>
注:只要是 web.xml 文件修改,则必须重新启动服务器
有了Servlet的配置,我们需要把register.jsp文件的里的表单提交地址进行设置
<FORM action=“RegServlet ” method= “post” >
调试输出:
重启web服务器(必须步骤);
在网页地址栏直接输入:
http://web服务器ip地址:端口号/应用程序名字/jsp页面名,例如本例为:
http://localhost:8080/test01/register.jsp
4.过滤器
Servlet中的Filter是一个接口
该接口中有三个方法:
doFilter()、Init()、Destroy()
doFilter方法主要用来我们写过滤业务逻辑代码
init方法用来写初始化的代码
destroy方法用来写一此过滤工作结束前的清理代码
void doFilter(ServletRequest request, ServletResponse response,FilterChain chain)
- 第一个参数为ServletRequest对象。此对象给过滤器提供了传入的信息(包括表单数据、cookie和HTTP请求头)
- 第二个参数为ServletResponse,通常在简单的过滤器中忽略此参数
- 第三个参数为FilterChain,用来调用下一个链上的下一个过滤器或调用servlet、JSP页 (在过滤业务逻辑完毕时通常会使用它)
过滤器的业务逻辑类创建
- 创建时要继承Filter接口(implements Filter )
- 类中要创建void doFilter(ServletRequest request, ServletResponse response,FilterChain chain)方法
- 在doFilter方法中编写过滤处理业务逻辑
在Web.xml中配置过滤器
- 应用Filter,要在web.xml配置filter元素后才起作用,配置过滤器要进入的对象,要进行过滤处理的业务逻辑类。
<filter>
<filter-name>过滤器名字</filter-name>
<filter-class>过滤器处理类地址(过滤处理)</filter-class>
</filter>
<filter-mapping>
<filter-name>过滤器名字</filter-name>
<url-pattern>过滤匹配地址(过滤器要进入的对象)</url-pattern>
</filter-mapping>