我正在使用谷歌应用程序引擎来开发java web应用程序,我的问题是我的所有jsp文件都可以在下面访问
http://localhost:8888/namefile.jsp,
,我把所有的jsp文件放在war文件夹中
我应该把jsp文件放在哪里以避免这种情况? 或者我应该修改 web.xml 来修改 url 映射?
这是我的 web.xml 文件
<servlet>
<servlet-name>frontController</servlet-name>
<servlet-class>com.myapp.frontcontroller.FrontController</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>frontController</servlet-name>
<url-pattern>/myapp/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>home.jsp</welcome-file>
</welcome-file-list>
提前致谢。
最佳答案
您有几个选项,可以根据您的要求使用其中任何一个:
您可以将文件放置在
WEB-INF
文件夹中。默认情况下,其中存在的文件夹/文件不可用。您需要将请求相应地重定向和/或转发到写入文件。它不仅涉及 JSP 文件,还涉及可以直接访问的 servlet。理想情况下,您希望保护 URL 模式并确保只有授权用户(即具有特定角色的用户)才能访问该角色下的 servlet/文件夹。为此,GAE 在
web.xml
文件中使用标准的security-constraint
。阅读 https://developers.google.com/appengine/docs/java/config/webxml#Security_and_Authentication最后,您还可以查看 Servlet 过滤器来满足您的要求。您可以使用全局过滤器来检查用户是否已登录,然后才能继续访问网络资源。过滤器还可以帮助您执行日志记录,以检查谁正在访问您的应用程序以及其他横切问题等。
关于java - 最佳实践,java web应用程序,jsp文件放在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20921400/