【问题标题】:what is the role of <servlet-mapping> in the web.xml? [duplicate]<servlet-mapping> 在 web.xml 中的作用是什么? [复制]
【发布时间】:2011-03-16 20:40:03
【问题描述】:

可能重复:
Can anyone explain servlet mapping?

我想要以上问题的理论答案。

【问题讨论】:

    标签: java


    【解决方案1】:

    Servlet 属于 WEB-INF/classes。在这台机器上,源代码位于 /var/www/hosts/www.caucho.com/webapps/resin-3.0/WEB-INF/classes 中的 Java 源代码中。 WEB-INF/classes 是 servlet 和其他 Java 类的标准位置。 Resin 自动重新加载和重新编译放在 WEB-INF/classes 中的 servlet、bean 和类。您应该进行一些更改并添加错误以熟悉 Resin 的重新编译和错误报告。

    使用您最喜欢的文本编辑器在 WEB-INF/classes/test/HelloServlet.java 中创建以下 servlet:notepad、emacs、vi 或其他任何东西。 (在这台机器上,/var/www/hosts/www.caucho.com/webapps/resin-3.0/WEB-INF/classes/test/HelloServlet.java)

    WEB-INF/classes/test/HelloServlet.java

    封装测试;

    导入 java.io.*;

    导入 javax.servlet.http.*;

    import javax.servlet.*;
    
    public class HelloServlet extends HttpServlet {
      public void doGet (HttpServletRequest req,
                         HttpServletResponse res)
        throws ServletException, IOException
      {
        PrintWriter out = res.getWriter();
    
        out.println("Hello, world!");
        out.close();
      }
    }
    

    现在浏览位于 /resin-3.0/hello 的 servlet。 Resin 会自动为你编译 servlet。浏览 servlet 与页面浏览不同,因为您正在执行 servlet 类,而不是查看页面。 /hello URL 是为下面的 hello, world servlet 配置的。

    配置

    servlet 的配置位于 WEB-INF/web.xml 文件中。

    servlet 需要配置并且需要映射到一个 URL。标记配置 servlet。在我们的简单示例中,我们只需要指定 servlet 的类名。

    标签指定将调用 servlet 的 URL。在我们的例子中,/hello URL 调用 servlet。因为教程 webapp 是像 /doc/servlet/tutorial/helloworld 这样的子 URL,所以调用 servlet 的实际 URL 是两者的组合。

    WEB-INF/web.xml

    <web-app xmlns="http://java.sun.com/xml/ns/j2ee" version="2.4"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http:/java.sun.com/dtd/web-app_2_3.dtd">
      <servlet>
        <servlet-name>hello</servlet-name>
        <servlet-class>test.HelloServlet</servlet-class>
      </servlet>
    
      <servlet-mapping>
        <servlet-name>hello</servlet-name>
        <url-pattern>/hello</url-pattern>
      </servlet-mapping>
    </web-app>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-22
      • 2011-08-25
      • 2012-09-18
      • 2017-08-28
      • 2014-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多