项目环境:springmvc。但是未分离spring和springmvc的配置文件
定时器:
定时器:
@Component public class MyTask { @Scheduled(fixedRate = 1000*5) public void print(){ System.out.println("--"+ System.currentTimeMillis() +"--"); } }
配置文件:
<context:component-scan base-package="com.xxxxxxx" /> <task:annotation-driven />
原因是是测试效果嘛,所以设置的5秒一次
实际控制台显示效果:
--1463651386859-- --1463651387369--
根据实例化两次的这个结果,本人去看了源码。推断可能是Initializing Spring root WebApplicationContext 这个容器和Initializing Spring FrameworkServlet 这个容器的时候,这个类被扫描实例化了两次。
于是本人在context:component-scan里添加了正则表达式的“例外包”。但是,实际的解决效果不理想。(无效
百度了一下,已有的解决方案,试过,也无效。
假如是spring和springmvc这对子容器和父容器引起的?哪位兄弟遇到过?有什么解决方案么?分出applicationContext.xml?
解决方案
10
http://stackoverflow.com/questions/19826228/spring-web-security-web-xml-mvc-dispatcher-bean-is-created-twice/19850897#19850897
10
等高手助阵,给顶下
20
你猜测是对的 可以看一下 web.xml的配置 和 spring 的 xml配置