Spring中bean的继承是什么意思~~~

xiaobaitu7788 2008-09-18 03:50:54
大家好:
初学 SSH,在看别人代码的时候,发现

在别人写 Spring配置文件中的 DAO 的时候。
例如:

<bean id="iuserDao" class="demo.ssh.dao.IAdminDAO"
abstract="true">
</bean>

<bean id="userDaoImpl"class="demo.ssh.dao.impl.UserDaoImpl"
parent="iuserDao">
<property name="hibernateTemplate"><ref bean="hibernateTemplate" /></property>
</bean>

我看不懂的原因是:
虽然在实际的类关系中,userDaoImpl是iuserDao的实现者(即:userDaoImpl implements iuserDAO)
但是,这种继承关系,为什么还要体现在Spring的配置文件中呢?
我知道,在Spring中可以通过给两个bean分别设置abstract和parent属性。表示 一个 bean 继承了另一个 bean 的配置属性(即:可以减轻bena的配置工作量,让配置更加灵活)。
那么,上面的这种设置方式又代表什么意思呢 ?其所表示的目的含义是什么呢 ?

谢谢哦,分数不高,主要是为了学习讨论咯~~~ 还有一个原因本人没有什么多余的分数啦~~~

...全文
487 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yhef 2008-09-25
  • 打赏
  • 举报
回复

我觉得楼主的理解是正确的。

Spring里面的继承,是指demo.ssh.dao.impl.UserDaoImpl会把标签:
<bean id="iuserDao" class="demo.ssh.dao.IAdminDAO"  abstract="true"></bean> 

注入的属性继承过来。
silence1214 2008-09-24
  • 打赏
  • 举报
回复
楼上有人回答的错误 其实LZ是正解了 既然 impl在代码中 继承了 那类 那么这个地方就不用配置了 其实的确是多余的
xiaobaitu7788 2008-09-24
  • 打赏
  • 举报
回复
这样设计有什么好处么
xtbzqw 2008-09-19
  • 打赏
  • 举报
回复
就是让你少写一些代码啊
liltos 2008-09-19
  • 打赏
  • 举报
回复
你的理解没错,这个例子没有意义。
qintao1203 2008-09-19
  • 打赏
  • 举报
回复
ms可以不用配
<bean id="iuserDao" class="demo.ssh.dao.IAdminDAO"
abstract="true">
</bean>


fosjos 2008-09-19
  • 打赏
  • 举报
回复
可以看作是java的abstract类和继承类,没有的属性就继承,有的属性就覆盖
少龙123 2008-09-19
  • 打赏
  • 举报
回复
就是少写一些代码,比如事务之类的东东可以定义到父类里去了
lzt2008 2008-09-18
  • 打赏
  • 举报
回复
不需要new对象啊
可以捞过来直接用
省时省力省资源

67,538

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧