webapp与WEB—INF的区别

本文介绍了webapp和WEB-INF的区别,重点强调WEB-INF作为安全目录的特性,使得客户端无法直接访问。传统上,静态资源存放于WEB-INF下以确保安全,但现代开发模式中,这已不再是必要做法。目前,静态资源通常直接放在webapp内以便前端展示,而敏感信息和业务逻辑则妥善处理,避免暴露给用户。同时,文中指出在web.xml中配置静态资源的局限性。
摘要由CSDN通过智能技术生成

        通常情况下我们的项目结构是将css/js/html放在WEB—INF下面,因为WEB—INF是webapp的安全目录。所谓安全目录就是客户端无法访问的目录,只有服务端可以访问,当静态资源放在WEB—INF下面的时候,外部是不能访问的,我们一般通过springmvc配置文件配置资源映射,如下所示:

 <!-- 资源映射 -->
    <mvc:resources location="/WEB-INF/css/" mapping="/css/**"/>
    <mvc:resources location="/WEB-INF/js/" mapping="/js/**"/>

而webapp则可以通过浏览器直接访问到。

      然而,其实静态资源我们没有必要非得放在WEB—INF下面,因为前端我们就是要展示给客户的;之所以大家会把他放在WEB-INF下面主要原因有两个:

  1. 远古时代的模式会把业务逻辑,数据库连接等敏感信息写在jsp里面,被用户直接访问会有安全问题。  
    现代模式里这个不再成为问题,不应该成为问题。
  2. jsp是在服务器端运行的,而且通常都需要其他程序支持——比如后台处理好数据再让jsp渲染等,用户直接访问一则没有意义,二则会抛异常,这些都浪费服务器资源。

备注:

在web.xml中配置静态资源是不管用的:

<servlet-mapping>     
    <servlet-mapping>     
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值