现在的位置: 首页 > 综合 > 正文

servlet基础

2018年01月18日 ⁄ 综合 ⁄ 共 1377字 ⁄ 字号 评论关闭

 servlet包括三种servlet,分别是标准,监听和过滤Servlet,都必须继承javax.servlet和javax.servlet.http包中的GenericServlet类或他的子类HttpServlet类。监听Servlet涉及实现监听器HttpsessionListener、ServletContextListener、HttpSessionAttributeListener或ServletContextAttributeListener接口,达到对Servlet生命周期中事件的监听处理;过滤Servlet涉及Filter接口的实现。达到对Servlet请求消息的过滤
    1 继承GenericServlet
    servlet init()方法在
服务器加载Servlet时才由服务器自动调用它而执行一次,Servlet方法也是由服务器来调用的,Init只执行一次,作为等待服务调用的线程存在。只有在Servlet的文件名和类名改变时,或者重新启动Servlet服务器,Servlet线程才重新初始化。只有servletConfig一个对象,把Servlet运行配置信息存储起来。当覆盖Init方法时一定要在在方法中通过调用super.init()来完成ServletConfig对象存。在Init()方法没执行完之前,所有对客户对Servlet的请求服务信息都会被阻塞,与init()对应的是destoty()方法,当服务器由于资源不足,如内存,磁盘空间不够,而要卸载Servlet时就调用它。释放该Servlet所占用的全部资源。
    Service()是类GenericServlet中最重要的方法,每次客户向服务器发出请求时,服务器就会调用该方法,若想对客户的请求进行相应处理的话,必须覆盖这个方法,并在这个方法中加入自己的代码来具体实现对客户的相应。其中有ServletRequest和ServletResponse两个参数,ServletReques保存了客户向服务器请求的各种属性,如客户的Ip,客户传递给服务器的参数和参数长度等。ServletResponse的对象用来设置如何对客户进行响应。有三种方法。
    setContentType(String):用来设置对客户相应的类型。
    setContentlength(int):设置对客户响应的长度。
    getOutputStream():返回对客户响应的输出流。
    2 继承HttpServlet
    HttpServlet 是GenericServlet的子类,而它用于针对当浏览器和服务器使用Http
协议。类HttpServlet中有两个Service()方法,一个是Service(ServletRequest,ServletResponse),它仅仅是从它的父类继承过来的;另一个是Service(HttpServletRequest,httpServletResponse),它是类HttpServlet的Service()方法,与类Servlet的Service()方法使用一样,只不过接收的参数不同而已。
    HttpServlet提供另外两个很重要的方法:doPost()和doGet()。用它们支持HTTP的post()和get()方法。

抱歉!评论已关闭.