为什么将.jsp 文件放在WEB-INF 目录中?
问题:
以 Maven 为例,当启动一个新的 web 项目时,结构与此相同/相似:
Meu Projeto|- src|- main|- java|- resources|- webapp|- WEB-INF
其中,在“webapp”目录中,放置了web应用程序使用的文件:html、css、Javascript、JSPs等。
我的问题是关于 WEB-INF 目录,有几个项目使用这个目录来放置扩展名为 .jsp 的文件,而不是直接将它们放在“webapp”中。一个例子是 Caelum 的Mammoth,他们为此创建了一个名为“jsps”的目录。
根据我的阅读,WEB-INF 中包含的文件不能被客户端直接访问,因为它们不是公共的,但它们可以被 servlet 访问:
名为 WEB-INF 的应用程序层次结构中存在一个特殊目录。此目录包含与应用程序相关但不在应用程序根文档中的所有内容。WEB-INF 节点不是应用程序公共文档树的一部分。在 WEB-INF 目录中包含的文件可以由容器直接提供给客户端。但是,WEB-INF 目录的内容对 servlet 代码使用
getResource
和getResourceAsStream
方法调用是可见的ServletContext
,并且可以使用RequestDispatcher
调用公开。
那么仅仅是为了安全吗?获取文件的唯一方法是通过 servlet 进行处理。
回答:
9.10 隐藏我们的页面 – https://www.caelum.com.br/apostila-java-web/mvc-model-view-controller/
如果页面位于 /webapp 中,用户将可以直接访问它们。如果只是静态页面,我看不出有什么问题。但是有些页面在显示之前需要逻辑,如果用户直接访问jsp页面将无法正确显示,也不会经过控制器。
“因此,我们不能让用户直接访问我们的页面。为了使这种直接访问变得不可能,我们将把我们的页面放在 WEB-INF/ 目录中”
为什么将.jsp 文件放在WEB-INF 目录中?相关推荐
- c语言gcno文件位置,makefile - 具有覆盖率的CMake Ninja将gcno文件放在根二进制目录中 - 堆栈内存溢出...
我正在使用忍者生成器通过cmake构建一个项目,并使用add_compile_options("$:-g;-O0;-ftest-coverage;-fprofile-arcs;-fno-bu ...
- Tomcat配置,直接打开jsp文件访问web
javaweb的项目都是在myeclipse中写的,而这个软件运行缓慢,使用十分不便,因此在上次实验中用到了一种新的方法,在网上查到的可以用的,解决了这个问题.具体总结一下. 我们的myeclpse是 ...
- linux 复制指定目录下的全部文件到另一个目录中,linux cp 文件夹
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. linux复制指定目录下的全部文件到另一个目录中 复制指定目录下的全部文件到另一个目录中 文件及目录 ...
- 将linux目录中的特定文件推送到手机_linux复制指定目录下的全部文件到另一个目录中,linux cp 文件夹...
linux复制指定目录下的全部文件到另一个目录中 复制指定目录下的全部文件到另一个目录中 文件及目录的复制是经常要用到的.linux下进行复制的命令为cp. 假设复制源目录 为 dir1 ,目标目录为 ...
- html复制文件到目录,复制指定目录下的全部文件到另一个目录中
linux下文件的复制.移动与删除命令为:cp,mv,rm 复制指定目录下的全部文件到另一个目录中 假设复制源目录 为 dir1 ,目标目录为dir2.怎样才能将dir1下所有文件复制到dir2下了 ...
- 到另一个文件夹 复制hdfs上的文件_复制指定目录下的全部文件到另一个目录中...
linux下文件的复制.移动与删除命令为:cp,mv,rm 复制指定目录下的全部文件到另一个目录中 假设复制源目录 为 dir1 ,目标目录为dir2.怎样才能将dir1下所有文件复制到dir2下了 ...
- linux cp目录到指定目录,linux复制指定目录下的全部文件到另一个目录中,linux cp 文件夹...
解压war包 jar -xvf xxxx.war linux复制指定目录下的全部文件到另一个目录中 复制指定目录下的全部文件到另一个目录中 文件及目录的复制是经常要用到的.linux下进行复 ...
- tar解压单个文件到特定目录_技术|如何解压 tar 文件到不同的目录中
我想要解压一个tar文件到一个叫/tmp/data的指定目录.我该如何在Linux或者类Unix的系统中使用tar命令解压一个tar文件到不同的目录中? 你不必使用cd命令切换到其他的目录并解压.可以 ...
- java获取WEB INF目录绝对路径
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! JSP ...
最新文章
- 产生BFC环境的几种方式
- Power Designer使用技巧
- 本地的文件怎么放到虚拟桌面_搬新家桌面文件怎么收纳?5个便宜实用的收纳神器,你买过几个?...
- linux指令popd,Linux切换目录pushd、popd、dirs命令
- python实现函数ifodd_09-Python笔记整理(函数)
- ai外呼营销系统_为了让居民预约口罩少出门,长宁这个街道使用AI技术智能语音外呼系统...
- rmi远程反序列化rce漏洞_Oracle WebLogic 反序列化远程命令执行漏洞预警
- 可变参数(不定项参数)
- Windows7部署WordPress傻瓜式教程-cnblogs
- 学术前沿 | Texar-PyTorch:在PyTorch里重现TensorFlow的最佳特性
- Java变量名命名规则
- CentOS 6.5上安装Zabbix 2.4.8
- java 排序算法总结,Java排序算法总结之归并排序
- 【Caffe代码解析】compute_image_mean
- Atitit.故障排除系列---php 程序网站数据库错误排除流程
- 四种依恋类型_你们之间的爱情是哪种类型 | 爱情依恋关系测评
- 跟对人,走对路,做对事!
- 福利:tumblr五年驾龄老司机必备利器
- 运动想象EEG背景知识
- 极客日报:腾讯回应微信刷掌支付;iPhone 13 Pro或提供1TB版本;Git 2.33 发布