java---ssh---spring配置文件里的dao配置问题 15
上面图的mdCustomerOtherDao没有定义,spring默认调用了其他xml里的mdCustomerOtherDao,这是为什么?在哪个spring配置文件里配...
上面图的mdCustomerOtherDao没有定义,spring默认调用了其他xml里的mdCustomerOtherDao,这是为什么?在哪个spring配置文件里配置了哪个属性,导致定义一次mdCustomerOtherDao 就能在其他spring配置文件里直接调用?
展开
展开全部
Spring配置DAO层,可以直接在applicationContext-db.xml进行配置,示例如下:
两个DAO的定义,通常声明DAO的时候,都是用接口来声明来使spring注入
<bean id="txn1001BO" name="txn1001BO" class="dap.service.bo.validate.impl.AuthReqBOImpl" scope="prototype">
<property name="commonOnlDAO" ref="commonOnlDAO"/>
<property name="commonHisDAO" ref="commonHisDAO"/>定义bo层的操作时,需要注入的DAO定义
</bean>
两个DAO的定义,通常声明DAO的时候,都是用接口来声明来使spring注入
<bean id="txn1001BO" name="txn1001BO" class="dap.service.bo.validate.impl.AuthReqBOImpl" scope="prototype">
<property name="commonOnlDAO" ref="commonOnlDAO"/>
<property name="commonHisDAO" ref="commonHisDAO"/>定义bo层的操作时,需要注入的DAO定义
</bean>
展开全部
只要这些xml都被加载的话,这些bean对象会被实例化加入到spring 的容器内,通过id来索引,和在哪个xml文件没关系啊,只需出现一次,其他的xml同样可以引用。
更多追问追答
追问
你说的意思是说 不是在一个spring基础xml里 定义了一个属性,而是只要spring里定义一次 随便可以调用?
追答
是的啊,定义了一次就行了,放到哪个xml文件都一样,前提是这个xml被加载进去,而且没出错
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
spring定义是全局的,你在一个位置定义,其他文件都可以引用,
同理如果你在不同的spring文件中定义了同意名字的bean 那么加载的会出现覆盖。
所以在定义bean id的时候一定要确认是唯一的
同理如果你在不同的spring文件中定义了同意名字的bean 那么加载的会出现覆盖。
所以在定义bean id的时候一定要确认是唯一的
追问
但我的印象里 不是有个共用的spring-commonm。xml文件吗?那一般项目中spring-commom文件作用是什么
追答
看来你还没理解什么是全局的意思。
spring为什么会不同的模块都有配置,为什么不放到一起呢?既然是全局的在哪配置都是唯一的,
为什么还要在不同的位置去配置?
这就是一个存放位置的规范,方便查找。
不同模块spring配置的位置不同,我们去修改配置只需要去固定模块那个位置修改就可以了
,如果都放到一起去配置那不乱了么,还怎么找。
common大多是公共的,比如底层dao文件,其他的dao都需要继承这个dao,一些安全类,等等。我们要修改配置,只需要去common去就找就可以了,方便项目配置
每个模块也有spring配置,也是方便修改查找,就是个存放规范问题
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询