Servlet基础

来源:互联网 发布:百度大数据彩票预测 编辑:程序博客网 时间:2024/04/30 22:44
Servlet:是使用Java Servlet接口(API)运行在web应用服务器上的Java程序,与普通Java程序不同,它是位于web服务器内部的服务器端的Java应用程序,可以对web浏览器或其他HTTP客户端程序发送的请求进行处理。前提条件是:把Servlet对象布置在Servlet容器(也就是web容器,如Tomcat/webLogic/Jboss等)之中。


一、基础知识

(1)生命周期:实例化、初始化init()、处理请求service()、销毁desdroy()。

(2)技术特点:Servlet采用Java语言编写,同时也对Java的web应用进行了扩展。丰富的API,当处理HTTP请求时只要调用相应的API即可;Servlet的一个实例对象可以处理多个线程的请求;继承了Java的跨平台性及支持封装、继承等面向对象的优点;采用了Java的安全框架,安全性很高。

(3)技术功能:可以处理HTTP请求及获取HTTP头信息,通过HttpServletRequest接口与HttpServletResponse接口做出处理后返回到HTML页面中;有强大的过滤器;可以与其他服务器资源通信。


二、JSP与Servlet的区别

jsp是在Servlet规范之上的动态网页,通过在JSP页面中嵌入Java代码可以产生动态网页,因此可以理解为Servlet的扩展。在JSP文件被第一次请求时,会被编译成Servlet文件,再通过容器调用Servlet进行处理。

1.Servlet是客户请求和业务处理的中间角色,需要调用固定的方法,将动态内容混合到静态之中产生HTML,而JSP页面可以直接使用HTML标签进行输出。2.Servlet要调用Servlet API接口处理HTTP请求,在JSP页面中则直接提供了内置对象进行处理。

3.Servlet的使用需要一定的配置,JSP只需.jsp扩展名部署在容器之中,容器就会对其自动识别,直接编译成Servlet处理。


三、代码结构:


四、Servlet API常用的接口和类:

1.接口:servlet/ServletCongig/HttpServletRequest/HttpServletResponse

2.类:GenericServlet/HttpServlet


五、Servlet过滤器

是客户端和目标资源间的中间层组件,用于拦截客户端的请求与响应信息。可以放置多个过滤器。

1.Filter接口:当定义一个过滤器对象时需要实现此接口。

         init(FilterConfig filterConfig)

doFilter(ServletRequest request,ServletResponse response,FilterChain chain)

destroy()

2.FilterChain接口:由容器进实现,只包含一个doFilter()方法,用于将过滤器处理的请求或响应传递给下一个过滤器对象。(在多个过滤器中可使用此接口)3.FilterConfig接口:由容器进行实现,用于获取过滤器初始化期间的参数信息。过滤器还需要在web.xml中进行配置,配置方法与servlet类似。

0 0