Spring Bean在XML配置中的父子继承

与Java类的继承相似,Spring框架也提供了Spring Bean的属性的继承。也就是说,有的Spring Bean是抽象的,可以被继承;有的Spring Bean可以指定继承的父Spring Bean。这时候,抽象的Spring Bean也可以被称为模板,供定义具体的业务逻辑Spring Bean时使用。

这可以通过Spring框架的XML配置文件实现,下面以两个例子进行说明。

1.没有实现类的抽象父Spring Bean


    
    



    
    


如代码所示,抽象父Spring Bean没有对应的具体Java类,这时继承的子Spring Bean必须对应一个实现类。

通常,被继承的父Spring Bean必须使用属性abstract="true"进行标识。继承父Spring Bean的子Spring Bean,需要使用属性parent="..."指定继承的父Spring Bean。

此外,子Spring Bean可以补充定义新的属性,也可以覆盖父子Spring Bean定义的属性。


2.有实现类的抽象父Spring Bean


    
    



    
    



    
    


如代码所示,抽象父Spring Bean对应一个Java类,这时继承的子Spring Bean可以有另外的Java类对应,也可以没有对应的Java类。


Spring Bean的父子继承主要是为了统一定义Spring Bean的公共属性、作业范围scope,并避免了冗余和修改的繁琐。


你可能感兴趣的:(Spring,framework)