搭建springmvc时,配置文件一切正常,项目运行成功,却无法响应http请求,查看log是因为没有对用url的controller,首先检查controller有没有被实例化,后来发现没有,因为没有引入spring-bean的相关包,好吧粗心。。。。 But 引入后,还是同样的错误,找来找去毫无破绽啊,尼玛找度娘。。。。。最后发现:
<mvc:resources mapping="/images/**" location="/WEB-INF/images/" cache-period="31556926"/> <mvc:resources mapping="/js/**" location="/WEB-INF/js/" cache-period="31556926"/> <mvc:resources mapping="/css/**" location="/WEB-INF/css/" cache-period="31556926"/>
对,就是在配置文件中加入了这几句,导致controller注解失效,但是为什么controller注解失效了而controller类还能被spring 实例化呢?
最后把这几句去掉,运行,完美。
但是这几句是用来帮助静态资源逃过springmvc的解析器的,去掉好像不太好,解决办法:
在这几句上加上一句:
<mvc:annotation-driven />
这句话的意思就是我用注解了,spring你需要去找注解。。。。。
除了这样还有一个解决办法,就是在web.xml 中声明静态资源的路径被默认的servlet实现,也是ok,就是麻烦了点
时间: 2024-12-28 10:51:44