bean定義可以包含許多設計數據,包括構造函數參數、屬性估計和顯式容器數據,如初始化方法、靜態工廠方法名等。子bean定義從父bean定義獲取設計信息。根據具體情況,兒童定義可以取消一些特性,也可以添加其他特性。Spring Bean定義繼承避開了Java類繼承,但是繼承思想是相同的。您可以將父bean定義描述為布局,其他子bean可以從父bean獲得必要的設置。在使用基於xml的設計元數據時,您可以利用父級質量來顯示子bean定義,並將父級bean作為該特性的值。
HelloWorld.java代碼:
包演示;公共類HelloWorld{私有字符串message1;private String消息2;xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <屬性名= "message1" value = "Hello World! ""/> <屬性名= "message2" value = "Hello Universe! ""/> .public void setMessage1(字符串消息){this. setMessage1(字符串消息)Message1 =消息;} public void setMessage2(字符串消息){this. this. message}Message2 =消息;}公共無效getMessage1(){System.out.println(message1);}公共無效getMessage2(){System.out.println(message2);}}
HelloEveryone.java代碼:
包演示;公共類HelloEveryone{私有字符串message1;private String消息2;private String message3;public void setMessage1(字符串消息){this. setMessage1(字符串消息)Message1 =消息;} public void setMessage2(字符串消息){this. this. message}Message2 =消息;}公共無效setMessage3(字符串消息){this. message}Message3 =消息;}公共無效getMessage1(){System.out.println(message1);}公共無效getMessage2(){System.out.println(message2);}公共無效getMessage3(){System.out.println(message3); } } MainApp.java code: package demo; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class MainApp { public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("Beans.xml"); HelloWorld objA = (HelloWorld) context.getBean("helloWorld"); objA.getMessage1(); objA.getMessage2(); HelloIndia objB = (HelloEveryone) context.getBean("helloEveryone"); objB.getMessage1(); objB.getMessage2(); objB.getMessage3(); } }
Bean定義模板
您可以創建一個Bean定義格式,其他年輕的Bean定義可以使用該格式,而無需投入太多精力。在描述Bean定義模板時,您不應該指出類屬性,確定抽象特征,並指出具有真正價值的理論特征。
<屬性名= "message1" value = "Hello World!"/> .