- 概念
与普通java程序不同,它是位于Web服务器内部的服务器端的java应用程序,可以对Web浏览器或其他HTTP客户端发送的请求进行处理。
- 方法
- init():用于初始化
- destroy():用于释放资源
- service():对用户的请求进行处理,不同的请求调用doGet或doPost方法
- Servlet基本编程
public class FirstServlet extends HttpServlet{
//一般只需覆盖doGet/doPost方法
} - 配置Servlet
<servlet>
<servlet-name>SimpleServlet<servlet-name/>
<servlet-class>com.lyq.SimpleServlet<servlet-class/>
<servlet/>
<servlet-mapping>
<servlet-name>SimpleServlet<servlet-name/>
<url-pattern>/SimpleServlet<url-pattern/>
<servlet-mapping/>
- 转发请求和重定向
- 转发请求
RequsetDispatcher rd = request.getRequestDispatcher("hello.jsp");
rd.forward(request,response); - 重定向
response.sendRedirect("hello.jsp");
- 转发请求
- 过滤器
概念
Servlet过滤器是客户端与目标资源间的中间层组件,用来拦截客户端的请求与响应信息。-
过滤器需要实现Filter接口,其中过滤方法是
public void doFilter(ServletRequest request,ServletResponse response,FilterChain chain)
- 配置
<filter>
<filter-name>CharacterEncodingFilter<filter-name/>
<filter-class>com.lyq.util.CharacterEncodingFilter<filter-class/>
<filter/>
<filter-mapping>
<filter-name>CharacterEncodingFilter<filter-name/>
<url-pattern>/*<url-pattern/>
<filter-mapping/>