在 Eclipse 的动态 Web 项目中实现 Servlet 目录结构



Eclipse中一个简单的动态Web项目的项目目录结构映射到Sun Microsystems定义的Web Application archive(WAR)结构,尽管Sun Microsystems定义的servlet结构显然有点不同。

我只想知道,当我在动态 Web 项目中只创建一个 Servlet 类时,如何映射到 Servlet 类文件?我签入了 web.xml没有相应的servletservlet-mapping孩子,当我运行应用程序时,URL 看起来像

http://localhost:8080/firstServlet/Hello

其中firstServlet是我的项目名称,Hello是servlet类。

1.它如何知道必须运行哪个类?我的意思是没有url-pattern指定为Hello那么为什么 URL 是这样的呢?如果没有url-pattern,难道不应该只是http://localhost:8080/firstServlet吗?

2.另外,使用我上面提到的标准 servlet 项目结构,这个项目结构是如何在内部设置的?

我猜,您正在使用不需要与 web 进行任何映射的注释配置.xml

您的 servlet url 模式如下所示:

@WebServlet(name = "someThing", urlPatterns = {"/Hello"})

Servlet3.0 中的这一新功能使您能够将 ServletHello映射到 Web 应用程序firstServlet

最新更新