<context:component-scan base-package="com.dao" />自动搜索匹配bean无法正常使用 100

在做SSH框架整合。基本功能全部都完成了,通过ApplicationContextac=newClassPathXmlApplicationContext("applic... 在做SSH框架整合。基本功能全部都完成了,通过
ApplicationContext ac = new ClassPathXmlApplicationContext(
"applicationContext.xml");
ClassInfoDao classInfoDao = (ClassInfoDaoImpl) ac
.getBean("xxxxDaoImpl");
也能正常读取数据库。
后面看到网上写有一种方法可以不用再配置文件里面写那么多包,通过在配置信息中设置
<context:annotation-config />
<context:component-scan base-package="com.dao" />
这两个节点可以实现自动搜索bean的功能。目前使用之后一直是报异常,有没有高手能帮忙看下,在线急等!
异常信息如下:Exception in thread "main" org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 45 in XML document from class path resource [applicationContext.xml] is invalid; nested exception is org.xml.sax.SAXParseException: cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'context:annotation-config'.
展开
 我来答
后来人做主人8001
2017-08-05 · 超过13用户采纳过TA的回答
知道答主
回答量:62
采纳率:0%
帮助的人:10.7万
展开全部
说明:我们知道Spring有一个<context:component-scan base-package="" />组件用于实现包搜索并加载bean到Spring容器中(参见:对受管组件的Classpath扫描)。但是这样一来还是要为每个bean对象标注相应的注解,如@Resource 和@Autowired等(参见:基于注解(Annotation-based)的配置)。

现在的问题是,已经有了一整套的程序,使用Spring-XML的方式配置所有bean,由于bean数量过多,导致配置文件的数量同样很多(超过50个,并在持续增加中),于是想改用component-scan的方式,来自动注册某个包下符合命名规则条件的所有bean,当然,重点是不想对原有代码进行任何修改。不想使用注解去对每一个bean进行标注,从而单纯的组件扫描方式是不可行的。
分析:于是想到了Struts2的Spring插件。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式