欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

SpringBean的繼承怎么實現(xiàn)

這篇文章主要介紹“Spring Bean的繼承怎么實現(xiàn)”,在日常操作中,相信很多人在Spring Bean的繼承怎么實現(xiàn)問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Spring Bean的繼承怎么實現(xiàn)”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

創(chuàng)新互聯(lián)公司專注于源匯網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供源匯營銷型網(wǎng)站建設(shè),源匯網(wǎng)站制作、源匯網(wǎng)頁設(shè)計、源匯網(wǎng)站官網(wǎng)定制、小程序設(shè)計服務(wù),打造源匯網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供源匯網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

Bean 定義繼承

bean 定義可以包含很多的配置信息,包括構(gòu)造函數(shù)的參數(shù),屬性值,容器的具體信息例如初始化方法,靜態(tài)工廠方法名,等等。子 bean 的定義繼承父定義的配置數(shù)據(jù)。子定義可以根據(jù)需要重寫一些值,或者添加其他值。

Spring Bean 定義的繼承與 Java 類的繼承無關(guān),但是繼承的概念是一樣的。你可以定義一個父 bean 的定義作為模板和其他子 bean 就可以從父 bean 中繼承所需的配置。當你使用基于 XML 的配置元數(shù)據(jù)時,通過使用父屬性,指定父 bean 作為該屬性的值來表明子 bean 的定義。

1. XML

下面是配置文件Bean.xml,在該配置文件中我們定義有兩個屬性 message1 和 message2 的 “helloWorld” bean。然后,使用 parent屬性把 “helloIndia” bean 定義為 “helloWorld” bean 的孩子。這個子 bean 繼承 message2 的屬性,重寫 message1 的屬性,并且引入一個屬性 message3。

<beans xmlns="http://www.springframework.org/schema/beans"
    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">

   <bean id="helloWorld">

2. Bean

public class HelloWorld {
   private String message1;
   private String message2;
   public void setMessage1(String message){
      this.message1  = message;
   }
   public void setMessage2(String message){
      this.message2  = message;
   }
   public void getMessage1(){
      System.out.println("World Message1 : " + message1);
   }
   public void getMessage2(){
      System.out.println("World Message2 : " + message2);
   }
}



public class HelloIndia {
   private String message1;
   private String message2;
   private String message3;

   public void setMessage1(String message){
      this.message1  = message;
   }

   public void setMessage2(String message){
      this.message2  = message;
   }

   public void setMessage3(String message){
      this.message3  = message;
   }

   public void getMessage1(){
      System.out.println("India Message1 : " + message1);
   }

   public void getMessage2(){
      System.out.println("India Message2 : " + message2);
   }

   public void getMessage3(){
      System.out.println("India Message3 : " + message3);
   }
}

3. Main函數(shù)

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 = (HelloIndia) context.getBean("helloIndia");
      objB.getMessage1();
      objB.getMessage2();
      objB.getMessage3();
   }
}

一旦你創(chuàng)建源代碼和 bean 配置文件完成后,我們就可以運行該應(yīng)用程序。如果你的應(yīng)用程序一切都正常,將輸出以下信息:
World Message1 : Hello World!
World Message2 : Hello Second World!
India Message1 : Hello India!
India Message2 : Hello Second World!
India Message3 : Namaste India!

在這里你可以觀察到,我們創(chuàng)建 “helloIndia” bean 的同時并沒有傳遞 message2,但是由于 Bean 定義的繼承,所以它傳遞了 message2。

Bean 定義模板

你可以創(chuàng)建一個 Bean 定義模板,不需要花太多功夫它就可以被其他子 bean 定義使用。在定義一個 Bean 定義模板時,你不應(yīng)該指定類的屬性,而應(yīng)該指定帶true 值的抽象屬性,如下所示:

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
    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">

   <bean id="beanTeamplate" abstract="true">
      <property name="message1" value="Hello World!"/>
      <property name="message2" value="Hello Second World!"/>
      <property name="message3" value="Namaste India!"/>
   </bean>

   <bean id="helloIndia" class="com.tutorialspoint.HelloIndia" parent="beanTeamplate">
      <property name="message1" value="Hello India!"/>
      <property name="message3" value="Namaste India!"/>
   </bean>

</beans>

父 bean 自身不能被實例化,因為它是不完整的,而且它也被明確地標記為抽象的。當一個定義是抽象的,它僅僅作為一個純粹的模板 bean 定義來使用的,充當子定義的父定義使用。

到此,關(guān)于“Spring Bean的繼承怎么實現(xiàn)”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

網(wǎng)站題目:SpringBean的繼承怎么實現(xiàn)
標題來源:http://aaarwkj.com/article36/pjdspg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)營銷型網(wǎng)站建設(shè)、App設(shè)計企業(yè)網(wǎng)站制作、網(wǎng)站制作動態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營
国产自产一区二区三区精品| 日韩人妻熟妇中文字幕| 日韩欧美中文字幕综合网| 日本欧美二区在线看| 91国产视频在线观看免费| 久久综合中文字幕一区| av电影国产在线观看| 日本黄色中文字幕网站| 婷婷色精品一区二区激情| 久久久久久成人综合色| 国产精品久久乱码综合| 一区二区三区午夜激情| 美腿丝袜亚洲综合一区| 国产一区二区视频在线| 亚洲av网站女性向在线观看| 一区二区三区人妻日韩| 欧美日韩国产精品综合| 欧亚日韩精品一区二区在线| 天天操夜夜骑日日干| 美女露脸口爆吞精视频| 亚洲伊人久久一区二区| 一区二区三区国产不卡| 国产高清在线a视频大全| av手机天堂网免费观看| 不卡在线视频中文字幕| 日韩精品成人亚洲天堂| 国产精品日韩欧美久久久| 日韩精品人妻中文字幕满员| 亚洲精品一品区二品区三区| 成年爽片在线观看播放欧美| 亚洲人色中文字幕天堂| 成年免费视频一区二区三区 | 国产av一区二区三区中文| 国产精品欧美久久久久久| 亚洲华人在线免费视频| 亚洲av一本岛在线播放| 青青草视频在线好好热| 亚洲中文无码亚洲人vr在线 | 国内精品偷拍一区二区三区| 亚洲成人国产一区二区| 日韩在线一区二区视频观看|