zoukankan      html  css  js  c++  java
  • WEB-INF目录

    背景:

           在项目中,使用 "${pageContext.request.contextPath}/image/01.jpg"获取不到该图片。在浏览器中直接输入地址也找不到,报错404.


    解决:

          首先,图片确实存在,应该是路径问题。检查之后发现,小编把图片放到了webinf文件夹下,把图片取出来直接放到webroot下,就可以访问了。


    扩展:

          web工程一般分为src和webRoot两个文件夹,其中,src存放java源代码,而WebRoot存放项目中的jsp、image,还有一些编译文件。这样做的好处就是将页面的显示层和代码层区分开来了。


           在WebRoot下有META-INF和WEB-INF,META-INF存放版本号、引用包等,一般很少涉及。WEB-INF我们接触的比较多,下面也会详细介绍。




          web-inf是java web的安全目录,之所以说他是安全的是因为他只可以通过服务端访问到,而客户端是无法访问的。如果想在页面中直接访问web-inf中的文件,必须通过web.xml进行映射才可以。比如:使用拦截器接收命令,来控制转发请求。


         这种方式降低了网页的注入漏洞,我们的jsp等文件不会暴露出来,bug出现的概率也大大减少了,系统的稳定性就提上来了。但像image等文件就可以直接放在webRoot下方便使用,因此我们常用的webinf目录如下图:



    小结:

           之前不小心把图片放到了web-inf文件下,导致图片获取不到。找了半天,原来是位置放错了,还是对javaweb的目录不了解,知其然而不知其所以然,才会出现这样的问题。这次查了下,分享给大家。

  • 相关阅读:
    什么是 Visual VM?
    myeclipse svn 修改用户名和密码
    unix/linux共享内存应用与陷阱
    linux内存查看方式
    Linux下crontab命令的用法
    linux ftp命令参数全集
    XmlDataSource控件绑定GridView
    VC++发布Activex控件
    SqlServer数据库自定义Split()函数
    C和C++中的主要数据类型和字节大小
  • 原文地址:https://www.cnblogs.com/saixing/p/6730237.html
Copyright © 2011-2022 走看看