0

在处理RequestDispatcher和资源路径时,路径是否主要建立在<url-pattern>元素上?即使资源在不同的包中

例如:我在 servlet 下定义:

 <url-pattern>/handlers/FrontHandler</url-pattern>

和另一个资源,<url-pattern>/handlers/sub/SecondHandler</url-pattern>所以这个资源相对于前一个资源,即使两个类在不同的包中?

我理解正确吗?我还必须../像普通的 paht 导航一样使用来提升一级吗?

谢谢

4

1 回答 1

1

javadoc说:

指定的路径名​​可以是相对的,尽管它不能扩展到当前 servlet 上下文之外。如果路径以“/”开头,则将其解释为相对于当前上下文根。

因此,路径与类名无关,而与位于给定路径中的资源(静态,如 html 文件,或动态,如映射到给定 url 模式的 servlet)有关。

我会避免使用相对路径:很难知道它们解析到哪个绝对路径,而且它们很脆弱,因为如果您将 servlet 映射到另一个 URL,它们就会中断。

于 2012-05-22T21:35:51.990 回答