访问Spring MVC app的JSP页面中的资源

我对Spring很新,我在Spring mvc应用程序中访问我的资源时遇到问题。 我已经尝试了Google并使用堆栈溢出来找到答案(这些都没有帮助我解决方案1 ,或者可能的解决方案 , 可能的解决方案3 , 弹簧框架 )但是我发现没有一个解决了我的问题或者提高了我对问题(可能只是因为我不太了解上面提到的解决方案)。

我已设法将我的css文件嵌入到网页中但使用以下代码:

 

但由于显而易见的原因,我无法使用这种方式访问​​它。 我也尝试在我的web.xml文件中使用以下内容,但它没有任何效果,我承认我在这种情况下并不真正了解映射,因此可能是一个问题

    

我也尝试分别使用以下各项:

 /images/logo.jpg"/> /src/main/resources/images/logo.jpg"/> 

这是我的项目布局:

我的项目结构

这是我的web.xml:

  MyProject Application  myServlet  org.springframework.web.servlet.DispatcherServlet  1   myServlet /   

这是我的myServlet-servlet.xml:

         /WEB-INF/pages/   .jsp    

以防万一这是我的pom.xml:

   4.0.0 com.myproject myProject war 0.0.1-SNAPSHOT myProject Maven Webapp http://maven.apache.org  3.0.4.RELEASE     junit junit 3.8.1 test    com.oracle ojdbc6 11.2.0   org.hibernate hibernate-core 3.6.3.Final    org.springframework spring-core ${springVersion}   org.springframework spring-web ${springVersion}   org.springframework spring-webmvc ${springVersion}   org.springframework spring-context ${springVersion}   org.springframework spring-orm ${springVersion}    javax.servlet servlet-api 2.5   javax.servlet jstl 1.2    log4j log4j 1.2.12   commons-logging commons-logging 1.1.1    admin_UI   org.apache.maven.plugins maven-war-plugin 2.3  /sample/servlet/container/deploy/directory      

如果我能够访问webapp / WEB-INF / pages中的文件夹和内容,我可以访问我的jsp页面(即通过URL),我会很高兴,但理想情况下我想了解我应该如何正确地做到这一点,即我应该映射的文件夹(src \ main \ resources或src \ main \ webapp \ WEB-INF \ some_resource_folder)以及我应该如何映射它。

如果需要更多信息,我很乐意提供。

您应该将所有静态Web内容(如images,css和javascript)放在webcontent(根目录)目录下的资源目录中。

在此处输入图像描述

然后在myServlet-servlet.xml将该目录指定为资源目录。 这将告诉调度员不要处理静态资源请求。

   

在您的jsp文件中,您应该使用依赖于JSP EL解析的上下文路径的根相对URL来访问这些资源。

  

使用时:

  

在jsp中使用此代码:

 resources/My_CSS.css" rel="stylesheet"/> 

看看差异。 CAPS资源定位文件路径。 和资源位于Web路径中

设置资源顺序如下

   

您可以像这样配置spring,而不是混合使用JSTL和JSP EL:

  

在您的情况下,在JSP中使用以下内容:

 " rel="stylesheet"/> 

在你应该设置的jsp文件中,

  

和你的资源文件js,css,img等包含它们,

   

你也应该在href之前使用它来控制器链接,比如

  

通过这种方式,您可以使用在servlet容器或应用服务器Tomcat,jetty等中定义的上下文路径。