jsp页面放到webroot或web-inf下面的区别

本文介绍了两种页面跳转方式:redirect和forward的区别。redirect会在新页面打开目标网页,而forward则在当前页面加载。为了提高安全性,通常将JSP文件放置在WEB-INF目录下,并配合过滤器使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


我们知道,实现页面的跳转有两种方式,一种是通过redirect的方式,一种是通过forward的方式。
redirect方式的跳转,系统会在一个新的页面打开要跳转的网页;而forward方式跳转,系统会在原来的页面上打开一个要跳转的网页。所以放到WEB-INF目录下的文件是不允许采用redirect方式的跳转来访问的
<jsp:forward page="/WEB-INF/jsp/login.jsp" />
jsp放在webroot目录下 这样就可以让用户直接访问,jsp放在web-inf目录下就必须要通过请求才能访问。
  因此放在web-inf下jsp页面显得要安全。

通过设置过滤器,放在webroot下面的文件也可以实现不能直接访问。

写一个过滤器,实现Filter接口

一般项目都是要求隐藏性的,只让客户通过请求访问而不是直接访问jsp页面。若放在webroot下面,肯定要加一个过滤器阻止所有对*.jsp的访问。

 

比较的话: 放在webroot下面:优点,程序结构清晰,便于编码和维护;缺点,要加过滤器。

放在web-inf下面:优点,不用过滤器;缺点,打乱了程序结构,编码和维护麻烦点。

推荐放在webroot下面

转载于:https://www.cnblogs.com/Alan0218/articles/8468599.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值