如何删除JSP的本机请求URL?

如何删除JSP的本机请求URL?,第1张

如何删除JSP的本机请求URL?

URL“ page.jsp”起作用是因为“ page.jsp”位于Web应用程序的文档根目录中。除“ WEB-
INF”文件夹外,您容器中存储的任何文件都可以直接提供给客户端。

即 如果在网址中键入文件“ /js/myJavascirpt.js”,则将对其进行访问。同样适用于图像,比方说’/images/picture.png’。

根据WEB-INF的Servlet规范:

在应用程序层次结构中存在一个特殊目录,名为WEB-INF。此目录包含与应用程序相关的所有内容,这些内容不在应用程序的文档根目录中。 WEB-
INF节点不是应用程序的公共文档树的一部分。 容器不能将WEB-
INF目录中包含的文件直接提供给客户端

。但是,使用ServletContext上的getResource和getResourceAsStream方法调用,Servlet代码可以看到WEB-
INF目录的内容,并且可以使用RequestDispatcher调用公开WEB-INF目录的内容。

根据规范,很明显,如果您不想让客户端直接访问文件,则这些文件应存储在“ WEB-INF”文件夹下。这就是Java Web应用程序中所有类和库都存储在“
WEB-INF”文件夹下的原因。

遇到问题时,只需将jsp文件放在“ WEB-INF”文件夹下。

例如:将您的jsp文件放在“ WEB-INF”文件夹下:

WEB-INF / views / jsp / page.jsp

并像这样更改您在web.xml中的条目:

<servlet>    <servlet-name>Page</servlet-name>    <jsp-file>/WEB-INF/views/jsp/page.jsp</jsp-file></servlet><servlet-mapping>    <servlet-name>Page</servlet-name>    <url-pattern>/page-url-1</url-pattern>    <url-pattern>/page-url-2</url-pattern></servlet-mapping>

来源:请访问JSR-000315
Java Servlet规范的JavaTM Servlet
3.0(第10.5章)。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5026566.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存