处理RequestDispatcher
时和资源路径,是主要基于 <url-pattern>
构建的路径元素?即使资源位于不同的包中
例如: 我在 servlet 下定义了:
<url-pattern>/handlers/FrontHandler</url-pattern>
以及 <url-pattern>/handlers/sub/SecondHandler</url-pattern>
中的另一个资源那么这个资源是相对于前一个资源的,即使这两个类位于不同的包中?
我的理解正确吗?我还必须使用 ../
像常规路径导航一样升级一级?
谢谢
最佳答案
The pathname specified may be relative, although it cannot extend outside the current servlet context. If the path begins with a "/" it is interpreted as relative to the current context root.
所以路径与类名无关,而与给定路径中的资源(静态,如 html 文件,或动态,如映射到给定 url 模式的 servlet)有关。
我会避免使用相对路径:很难知道它们解析到哪个绝对路径,而且它们很脆弱,因为如果您将 servlet 映射到另一个 URL,它们就会中断。
关于java - RequestDispatcher 和路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10710151/