• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

怎么配置servlet

java 搞代码 4年前 (2022-01-09) 24次浏览 已收录 0个评论

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

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

实现一个helloWord例子。

推荐课程:Java教程。

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

package day_052102;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.Servlet;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;/* 这里通过实现Servlet接口来编写一个简单的Servlet */public class ServletDemo implements Servlet{    public void init(ServletConfig config) throws ServletException    {    }    public ServletConfig getServletConfig()    {                return null;    }    public String getServletInfo()    {        return null;    }    public void destroy()    {    }    public void service(ServletRequest req, ServletResponse res)            throws ServletException, IOException    {        PrintWriter out=res.getWriter();        out.print("hello World!");        out.close();    }}

然后进行web.xml的配置,代码如下:

<servlet>     <servlet-name>ServletDemo</servlet-name>     <servlet-class>day_052102.ServletDemo</servlet-class> </servlet> <servlet-mapping>     <servlet-name>ServletDemo</servlet-name>     <url-pattern>/ServletDemo</url-pattern> </servlet-mapping>

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

方式二:继承抽象类GenericServlet,该类定义了一个通用的Servlet。

public abstract class GenericServlet implements Servlet, ServletConfig, java.io.Serializable

代码示例实现hellWord如下:

public class GenericServletDemo extends GenericServlet{    @Override    public void service(ServletRequest req, ServletResponse res)            throws ServletException, IOException    {        PrintWriter out=res.getWriter();        out.println("hello World!");        out.close();            }}

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

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

protected void service(HttpServletRequest req, HttpServletResponse resp)        throws ServletException, IOException {        String method = req.getMethod();        if (method.equals(METHOD_GET))   //当请求方式为GET时,调用doGet方法        {               long lastModified = getLastModified(req);            if (lastModified == -1)             {                // servlet doesn't support if-modified-since, no reason                // to go through further expensive logic                doGet(req, resp);            }             else            {                long ifModifiedSince;                try                 {                    ifModifiedSince = req.getDateHeader(HEADER_IFMODSINCE);                }                 catch (IllegalArgumentException iae)                {                    // Invalid date header - proceed as if none was set                    ifModifiedSince = -1;                }                if (ifModifiedSince < (lastModified / 1000 * 1000))                {                    // If the servlet mod time is later, call doGet()                    // Round down to the nearest second for a prope<div style="color:transparent">本文来源gaodai.ma#com搞##代!^码网(</div>r compare                    // A ifModifiedSince of -1 will always be less                    maybeSetLastModified(resp, lastModified);                    doGet(req, resp);                }                else                {                    resp.setStatus(HttpServletResponse.SC_NOT_MODIFIED);                }            }        }

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:怎么配置servlet

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址