我在将 css、js、图像映射到我的 jsp 时遇到问题: 我的元素是这样的:
src/main/webapp/WEB-INF/web.xml
<servlet>
<servlet-name>appServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/servlet-context.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>appServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<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>*.gif</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.jpg</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.png</url-pattern>
</servlet-mapping>
src/main/webapp/WEB-INF/servlet-context.xml
<mvc:annotation-driven />
<mvc:resources mapping="/jsp/**" location="/jsp/" />
src/main/webapp/WEB-INF/jsp/css/style.css
src/main/webapp/WEB-INF/jsp/js/jquery-func.js
src/main/webapp/WEB-INF/jsp/images/sample.jpg
src/main/webapp/WEB-INF/jsp/index.jsp
<head>
<title>Shop Around</title>
<meta http-equiv='Content-type' content='text/html; charset=utf-8'/>
<link rel='stylesheet' href='jsp/css/style.css' type='text/css' media='all'/>
<script src='jsp/js/jquery-1.4.1.min.js' type='text/javascript'></script>
<script src='jsp/js/jquery.jcarousel.pack.js' type='text/javascript'></script>
<script src='jsp/js/jquery-func.js' type='text/javascript'></script>
</head>
最佳答案
CSS 和 Javascript 资源不能包含在 WEB-INF 下,因为 WEB-INF 下的文件无法从外部访问。因此,浏览器将无法发出获取它们的请求。将它们直接放在 webapp
下的文件夹中。
此外,您不应该为它们创建 servlet-mapping
。
关于java - 在 Spring MVC 3.2.4 中将资源映射到 jsp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20076488/