• WEB-INF下的jsp文件如何访问css和js文件


    今天帮一个同学找出了web项目问题的原因,这个问题是关于WEB-INF下的jsp文件如何访问css和js文件。

    先看一下文件的大致位置(jsp与css文件都同处WEB-INF内):

    该同学想WEB-INF里面的head.jsp文件加载同目录下的head.css文件,用了如下常规的方法:

    <head><link rel="stylesheet" href="/campus/WEB-INF/css/head.css" type="text/css"></link></head>

    发现怎么都加载不了该css文件,后来又尝试了好几种都不见效。

    我们都知道,为了安全,我们会将绝大部分的jsp文件放入我们的WEB-INF中,然后利用外部

    的index.jsp中的forward语句来访问其内部文件,这是因为WEB-INF内部文件是受保护的,想

    到这一点,猜测jsp获取不了css文件的原因可能是某段路径被拦截了,所以就尝试着用获取当

    前项目的根地址来加载css,代码如下:

     <head><link rel="stylesheet" href="<%=request.getContextPath() %>/WEB-INF/css/head.css" type="text/css"></link></head>

    结果还是无法加载WEB-INF里面的css文件,百思不得其解,尔后又尝试着将css文件放在了

    Web-Root下面,即与WEB-INF同级,如图:

    发现用上面两种方法都可以加载到css文件了。究其原因,是由于将css文件放入了WEB-INF

    里面,导致jsp无法正常访问到相应的路径。也就是说css跟js文件是不建议放在WEB-INF目

    录下的,一般放在与WEB-INF同级即可。
    ————————————————
    版权声明:本文为CSDN博主「梦想的边缘」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/gsycwh/java/article/details/52098097

  • 相关阅读:
    Javascript创建对象的几种方式
    web化的远程桌面
    (原创) Asp.net XPS HighLight(高亮)CreateWatermark(水印 )
    C# 序列化和反序列化
    删除 HttpCookie
    (轉)AlertBox 彈出層(真的不錯哦)
    净高误差超过20mm
    如何处理并发
    ORM性能比对
    STL源码iterator和traits编程技法
  • 原文地址:https://www.cnblogs.com/0405mxh/p/13170140.html
Copyright © 2020-2023  润新知