如何配置servlet

  介绍

这篇文章将为大家详细讲解有关如何配置servlet,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

Java servlet是一个基于Java技术的网络组件,运行在服务器端,由servlet容器所管理,用于生成动态的内容.Servlet是平台独立的Java类,编写一个servlet实际上就是按照servlet规范编写一个Java类。

servlet运行需要一个运行环境,即需要一个servlet容器,这里我们使用Tomacat.Tomcat作为一个Web服务器,具有处理HTML页面的功能,另外它还是一个servlet和JSP容器。

如何配置servlet

<强>实现一个helloWord例子。

<强>方式一:通过实现servlet接口来编写servlet类,需要实现接口中定义的5个方法,代码如下:

包day_052102;   进口java.io.IOException;   进口java.io.PrintWriter;   进口javax.servlet.Servlet;   进口javax.servlet.ServletConfig;   进口javax.servlet.ServletException;   与javax . servlet . servletrequest进口;   进口javax.servlet.ServletResponse;/*   这里通过实现Servlet接口来编写一个简单的Servlet   */公共类ServletDemo实现Servlet   {   公共空init (ServletConfig配置)抛出ServletException   {   }   公共ServletConfig getServletConfig ()   {      返回null;   }   公共字符串getServletInfo ()   {   返回null;   }   公共空间摧毁()   {   }   公共空间服务(ServletRequest点播,ServletResponse res)   抛出ServletException, IOException   {   PrintWriter=res.getWriter ();   都会(“hello World !”);   out.close ();   }   }

然后进行网络。xml的配置,代码如下:

& lt; servlet>   & lt; servlet-name> ServletDemo   & lt; servlet-class> day_052102.ServletDemo   & lt;/servlet>   & lt; servlet-mapping>   & lt; servlet-name> ServletDemo   & lt; url-pattern>/ServletDemo   & lt;/servlet-mapping>

点击运行按钮,启动tomacat服务器,然后在浏览器中输入http://localhost: 8080/day_052102/ServletDemo即可进行实现页面显示hello World的示例。结果如下。

如何配置servlet”> <br/> </p> <p> <强>方式二</强>:继承抽象类GenericServlet,该类定义了一个通用的servlet。</p> <pre类=公共抽象类GenericServlet实现servlet, ServletConfig, io。可序列化的

代码示例实现hellWord如下:

公共类GenericServletDemo GenericServlet延伸   {   @Override   公共空间服务(ServletRequest点播,ServletResponse res)   抛出ServletException, IOException   {   PrintWriter=res.getWriter ();   out.println (“hello World !”);   out.close ();   }      }

<>强方式三:强通过继承抽象的HttpServlet类,此类继承于GenericServlet类。

PS: HttpServlet类中没有抽象的方法。这个类重写了服务方法,它会根据请求的方式调用doGet或者doGet方法,部分源码如下:

保护无效服务(HttpServletRequest点播,HttpServletResponse resp)   抛出ServletException, IOException   {   字符串方法=req.getMethod ();   如果(method.equals (METHOD_GET))//当请求方式为得到时,调用doGet方法   {   长lastModified=getLastModified(要求的);   如果(lastModified==1)   {//servlet并# 39;t if - modified - since支持,没有理由//通过进一步昂贵的逻辑   doGet(要求、职责);   }   其他的   {   长ifModifiedSince;   试一试   {   ifModifiedSince=req.getDateHeader (HEADER_IFMODSINCE);   }   抓住(IllegalArgumentException iae)   {//无效日期标题——好像没有进行设置   ifModifiedSince=1;   }   如果(ifModifiedSince & lt;(lastModified/1000 * 1000)   {//如果servlet mod时间后,调用doGet ()//四舍五入到最近的第二个适当的比较//ifModifiedSince 1总是会更少   maybeSetLastModified(职责、lastModified);   doGet(要求、职责);   }   其他的   {   resp.setStatus (HttpServletResponse.SC_NOT_MODIFIED);   }   }   }

如果在自己写的类中重写了服务方法,那么Servlet容器就会把请求交给你重写的服务方法处理。

公共HttpServletDemo扩展HttpServlet类   {   保护无效doGet (HttpServletRequest点播,HttpServletResponse resp)   抛出ServletException, IOException   {   PrintWriter=resp.getWriter ();   out.println(“你好!“);   out.close ();   }   }

如何配置servlet