使用springmvc的注意点

1、web.xml中配置DispatcherServlet的拦截路径设置为/ ,配置成*.do的话<mvc:resources />标签将不起作用。

 

 <servlet>
	<servlet-name>mvc-dispatcher</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>/WEB-INF/spring-mvc.xml</param-value>
		</init-param>
	</servlet>
	<servlet-mapping>
		<servlet-name>mvc-dispatcher</servlet-name>
		<url-pattern>/</url-pattern>
	</servlet-mapping>

 

 

2、springmvc的配置文件里面必须加入 <mvc:annotation-driven/> ,最好是第一行位置,表示向spring容器注入DefaultAnnotationHandlerMapping与AnnotationMethodHandlerAdapter两个bean,它们是spring MVC为@Controllers分发请求所必须的,否则即使配置了<context:component-scan />也是无法访问到Conroller的。

 

3、<context:component-scan /> 需要制定只是扫描@Controller的WEB层等注解,@Service等注解一定要过滤掉,否则,事务不起作用。

例如:

<context:component-scan base-package="com.lyl">
      <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller" />
      <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Service" />
</context:component-scan>

 

4、对于一些静态资源,如图片/css/js等文件要采用<mvc:resources  />做映射,否则在DispatcherServlet配置拦截所有路径情况下,这些资源被拦截,作为视图去找,无法定位。

 

<mvc:resources mapping="/static/**"  location="/WEB-INF/static/" />

   请求路径中的/static/,会被ResourceHttpRequestHandler截获并转换成/WEB-INF/static    如:

    

<script type="text/javascript" src="projectPath/static/js/jquery-1.4.2.js"></script>

    会被处理成:projectPath/WEB-INF/static/js/jquery-1.4.2.js

 

  

5、在ContextLoaderListener加载Spring配置文件的时候,最好不要加载springmvc的配置文件,以免重复加载,同时注意声明扫描的注解里面剔除控制层的主键@Controller的。

<context:component-scan base-package="com.lyl">
      <context:exclude-filter type="annotation"
			expression="org.springframework.stereotype.Controller" />
</context:component-scan>

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值