webapps
|
|----helloworld
|
|----WEB-INF
|
|-----classes-HelloWorldServlet.class
|-----lib----servlet-api.jar
|-----web.xml
以上是我的目录结构。现在在web.xml中,我不知道在url-pattern中为servlet映射提供什么。我该怎么办?哪个是网址模式?
答案 0 :(得分:3)
映射servlet的机制与目录结构无关,正如skaffman所说。
基本上,web.xml中有两件事(关于servlet):
<servlet>
标记,用于定义servlet的别名及其完全限定名称(例如com.foo.pkg.YourServlet
)
<servlet-mapping>
为指定的别名指定url-pattern
(取自<servlet>
定义)。
顾名思义,url-pattern表示应该调用servlet的URL部分。因此,如果将给定的servlet映射到url-pattern /myfirstserlet
,则在用户打开http://localhost:8080/helloword/myfirstservlet
时可以访问它,其中第一部分是主机名和端口,后跟上下文名称(您的webapp的名称),然后是url-pattern
注意:您当前正在使用servlet的默认包(即没有包)。这是不鼓励的,所以给它一些包名。 (并将其放入WEB-INF/classes/com/foo/pkg/
)。这是通过指定package com.foo.pkg;