springmvc web项目jsp引入css,js文件找不到路径问题

本文介绍了如何在SpringMVC配置中处理静态CSS、JS资源问题,以及在spring-mvc.xml中使用<mvc:resources>避免URL冲突。还探讨了前端控制器与默认servlet的映射策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原因:在web.xml配置了servlet

<!--servlet配置-->
	<servlet>		<!--用来声明一个servlet的数据 -->  
		<servlet-name>SpringMVC</servlet-name>	<!--指定servlet的名称-->
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!--指定servlet的类名称,这里配置了前端控制器-->
		<init-param><!--用来定义参数,可有多个init-param。在servlet类中通过getInitParamenter(String name)方法访问初始化参数    -->
			<param-name>contextConfigLocation</param-name>	<!--参数名称-->
			<param-value>classpath:spring-mvc.xml</param-value>	<!--参数值-->
		</init-param>
		<load-on-startup>1</load-on-startup><!--当值为正数或零时:Servlet容器先加载数值小的servlet,再依次加载其他数值大的servlet.-->
		<async-supported>true</async-supported><!--设置是否启用异步支持-->
	</servlet>
	<servlet-mapping><!--用来定义servlet所对应的URL-->
		<servlet-name>SpringMVC</servlet-name>	<!--指定servlet的名称-->
		<url-pattern>/</url-pattern>		<!--指定servlet所对应的URL-->
	</servlet-mapping>

解决方法一:在web.xml下添加

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

解决方法二:既然已经声明了servlet只要在spring-mvc.xml下添加以下配置

<!-- 1、配置映射器与适配器 -->
   <mvc:resources mapping="/javascript/**" location="/static_resources/javascript/"/>  
   <mvc:resources mapping="/styles/**" location="/static_resources/css/"/>  
   <mvc:resources mapping="/images/**" location="/static_resources/images/"/> 
   <mvc:default-servlet-handler />
   
   <!-- 2、视图解析器 -->
   <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
     <property name="prefix" value="/"/>
     <property name="suffix" value=".jsp"/>
   </bean>

class=“org.springframework.web.servlet.view.InternalResourceViewResolver”
maven地址

<dependency>
   <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>4.0.6.RELEASE</version>
</dependency>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值