无法在Spring MVC应用程序中从CSS访问图像文件

时间:2015-03-20 01:02:04

标签: css spring image jsp addressing

我有一个Spring MVC应用程序,我试图从JSP文件中访问CSS文件。 CSS依次访问图像文件。

CSS工作得很好,但图像没有显示。我认为解决图像文件存在问题。

我尝试使用绝对寻址以及相对寻址来获取图像,但它不起作用。

background-image:url(" resources / mytheme / images / banner.jpg");
我也试过了 background-image:url(" ../ images / banner.jpg");

有人可以帮助我吗?

我的webapp包如下

webapp  
 -resouces  
   -mytheme  
     -CSS  
       -template.css  
     -Images  
       -banner.jpg  
 -WEB-INF  
   -jsp  
      -login.jsp  
   -web.xml  
   -dispatcher-servlet.xml  

我的login.jsp如下

<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
    <!-- Importing the style sheet for the termplate -->
    <link href="<c:url value="/resources/mytheme/css/template.css" />" rel="stylesheet">
</head>
<body>
Hello</body>
</html>

我的CSS文件如下:

#banner {
    text-align: center; 
    background-image: url("resources/mytheme/images/banner.jpg");
    background-repeat: no-repeat;
    background-size: 1500px 250px;
    height: 250px;
}

1 个答案:

答案 0 :(得分:0)

我得到了答案。 我必须在web.xml中指定静态资源

<servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>*.css</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>*.js</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>*.jpg</url-pattern>
</servlet-mapping>