Java EE - 更改 index.jsp 的目录

Posted

技术标签:

【中文标题】Java EE - 更改 index.jsp 的目录【英文标题】:Java EE - change directory of index.jsp 【发布时间】:2014-08-23 14:13:15 【问题描述】:

我的.jsp文件结构是:WEB-INF/jsp/....;但我在 WEB-INF/index.jsp 文件夹中有 index.jsp 文件。同样,我在 WEB-INF/ 目录中还有其他类型的文件,我想将 index.jsp 移动到这样的文件夹中:WEB-INF/jsp/index.jsp。那么我可以以某种方式更改(在我的 conf 文件中 - 而不是在 tomcat 设置中)我的索引页面在另一个文件夹中吗?我试着用这个:

<welcome-file-list>
    <welcome-file>jsp/index.jsp</welcome-file>
</welcome-file-list>

还有许多欢迎文件列表的变体,但我没有得到有效的组合。

【问题讨论】:

【参考方案1】:

WEB-INF下的JSP文件不能直接通过URL直接访问,只能由应用程序本身访问。

WEB-INF 对于无法公开访问的受限资源来说是更安全的方式。

阅读What is WEB-INF used for in a Java web application?


将请求表单 index.jsp 重定向、包含或转发到请求的 JSP 页面。

例如:

创建index.jsp直接放在webcontent文件夹下并包含WEB-INF/jsp/index.jsp

网页内容/index.jsp:

<%@ include file="WEB-INF/jsp/abc.jsp" %> 

【讨论】:

我不确定我是否理解,但我很抱歉我写了错误的目录,我的 index.jsp 在默认目录中,它在 webapp/index.jsp 中,但我想在 webapp 中拥有它/WEB-INF/index.jsp,但我无法设置我的应用程序在启动应用程序后访问此索引页面 为什么要把它放在WEB-INF文件夹中? 哦,对不起,我很困惑,我刚进来...确切地说,我想把它移到 WEB-INF/jsp/ 文件夹中,如果有所有 .jsp 看起来会更有条理文件一起 点击我在帖子中分享给您的链接。这可能会对你有所帮助。 我找不到解决方案-.-【参考方案2】:

我不认为jsp or any other user-interactive things 应该放在WEB-INF 内,因为这不是一个好习惯,它是应用程序的私有和安全部分。只有.class files,libraries and deployment descripter 驻留在那里。 或者你可以做的是在 web-content 下创建一个名为 jsp 的文件夹并将你的 jsp 文件放在那里。

好吧,即使你想这样做,也可以这样尝试:

<welcome-file-list>
    <welcome-file>/WEB-INF/jsp/index.jsp</welcome-file>
</welcome-file-list>

如果jsp是WEB-INF下的文件夹就可以了

【讨论】:

以上是关于Java EE - 更改 index.jsp 的目录的主要内容,如果未能解决你的问题,请参考以下文章

Ajax 技术学习 (原生的 ajax 基于 Java EE 实现)

剖析 Java EE 应用程序 - 寻找啥以及进行哪些更改?

index.jsp乱码问题的解决

javaweb的index.jsp为啥是默认首页(我修改了index.jsp文件名字就会变为首页了)?

index.jsp

JSP九大隐式对象-----面试