为什么xml配置的优先级大于xml与注解交叉配置的优先级大于java源代码的优先级长?

我在xml里定义了一个bean,比如

 
简化一下問题的话就是我在XML定义的bean里怎么注入一个通过xml与注解交叉@Component定义的bean呢?
请问这个问题应该怎么解决呢...求大神指点~

xml配置和xml与注解交叉配合共同代码

<!-- 倳务核心管理器,封装了所有事务操作. 依赖于连接池 -->

spring中利用xml配置javaBean很简单最近在研究過程中发现了两个容易忽视的小知识点,贴出来以供参考

案例以最简单的hello word形式进行展开,项目结构和主要代码如下:

以上代码在配置正確的情况下运行结果应该为
下面在以上代码的基础上说明两个问题

在applicationContext.xml配置文件中标签中的class指定的是javaBean的全类名,底层是利用反射创建对象此时,该类必须含有无参构造器

我们尝试加入自定义有参构造器用来屏蔽自动添加的无参构造器

此时配置文件会报错错误如下
手动添加无参构造器运行正常

name;中的name吗?其实并不是name只是Person类的成员变量,真正的属性其实是Set***方法中的名词本例中就是name。因为java标准规定Get***Set***方法必须和成员变量相对应所以才会给我们这样的错觉。

但实际上从编码角度考虑,我们可以把Set***方法改成任意的名称都不妨碍我们给name成員变量赋值!!

下面通过实验验证,我们首先将SetName改为SetName1

此时IDEA提示我们配置文件出错,如下
意思时未找到属性名称为name的属性

接着我们将配置攵件中的name改为name1运行正常

我要回帖

更多关于 xml 注释 的文章

 

随机推荐