大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

Java設(shè)計(jì)模式

組合實(shí)體模式

組合實(shí)體模式(Composite Entity Pattern)用在 EJB 持久化機(jī)制中。一個組合實(shí)體是一個 EJB 實(shí)體 bean,代表了對象的圖解。當(dāng)更新一個組合實(shí)體時,內(nèi)部依賴對象 beans 會自動更新,因?yàn)樗鼈兪怯?EJB 實(shí)體 bean 管理的。以下是組合實(shí)體 bean 的參與者。

• 組合實(shí)體(Composite Entity) - 它是主要的實(shí)體 bean。它可以是粗粒的,或者可以包含一個粗粒度對象,用于持續(xù)生命周期。

• 粗粒度對象(Coarse-Grained Object) - 該對象包含依賴對象。它有自己的生命周期,也能管理依賴對象的生命周期。

• 依賴對象(Dependent Object) - 依賴對象是一個持續(xù)生命周期依賴于粗粒度對象的對象。

• 策略(Strategies) - 策略表示如何實(shí)現(xiàn)組合實(shí)體。

實(shí)現(xiàn)

我們將創(chuàng)建作為組合實(shí)體的 CompositeEntity 對象。CoarseGrainedObject 是一個包含依賴對象的類。

CompositeEntityPatternDemo,我們的演示類使用 Client 類來演示組合實(shí)體模式的用法。

步驟 1

創(chuàng)建依賴對象。

public class DependentObject1 {
   
   private String data;
 
   public void setData(String data){
      this.data = data; 
   } 
 
   public String getData(){
      return data;
   }
}
public class DependentObject2 {
   
   private String data;
 
   public void setData(String data){
      this.data = data; 
   } 
 
   public String getData(){
      return data;
   }
}

步驟 2

創(chuàng)建粗粒度對象。

public class CoarseGrainedObject {
   DependentObject1 do1 = new DependentObject1();
   DependentObject2 do2 = new DependentObject2();
 
   public void setData(String data1, String data2){
      do1.setData(data1);
      do2.setData(data2);
   }
 
   public String[] getData(){
      return new String[] {do1.getData(),do2.getData()};
   }
}

步驟 3

創(chuàng)建組合實(shí)體。

public class CompositeEntity {
   private CoarseGrainedObject cgo = new CoarseGrainedObject();
 
   public void setData(String data1, String data2){
      cgo.setData(data1, data2);
   }
 
   public String[] getData(){
      return cgo.getData();
   }
}

步驟 4

創(chuàng)建使用組合實(shí)體的客戶端類。

public class Client {
   private CompositeEntity compositeEntity = new CompositeEntity();
 
   public void printData(){
      for (int i = 0; i < compositeEntity.getData().length; i++) {
         System.out.println("Data: " + compositeEntity.getData()[i]);
      }
   }
 
   public void setData(String data1, String data2){
      compositeEntity.setData(data1, data2);
   }
}

步驟 5

使用 Client 來演示組合實(shí)體設(shè)計(jì)模式的用法。

public class CompositeEntityPatternDemo {
   public static void main(String[] args) {
       Client client = new Client();
       client.setData("Test", "Data");
       client.printData();
       client.setData("Second Test", "Data1");
       client.printData();
   }
}

步驟 6

執(zhí)行程序,輸出結(jié)果:

Data: Test
Data: Data
Data: Second Test
Data: Data1

 

全部教程
主站蜘蛛池模板: a毛片在线免费观看 | 福利影院在线播放 | 人人爱人人做 | 亚洲欧美日韩一级特黄在线 | 日本高清不卡视频 | 伊人色综合久久天天网 | 一级特黄特黄毛片欧美的 | 午夜影院一级片 | 色综合久久中文色婷婷 | 久久青草免费免费91线频观看 | 欧美资源站 | 国内精品日本久久久久影院 | 久久美女免费视频 | 中文字幕亚洲无线码在线一区 | 在线观看一级毛片 | 分分操这里只有精品 | 日日操美女 | 91精品国产人成网站 | 日本一本在线观看 | 亚洲国产精品乱码在线观看97 | 国产婷婷高清在线观看免费 | 在线综合网 | 深夜在线 | 国产精品视频一区二区三区不卡 | 四虎国产精品4hu永久 | 成年看片永远免费 | 色情毛片 | 日本中文字幕一区二区高清在线 | 久久久青草青青国产亚洲免观 | 久久99精品久久久久久国产越南 | 香蕉视频在线免费 | 免费在线观看一级片 | 爱综合网 | 欧美一区二区三区精品影视 | 免费国产之a视频 | 婷婷开心中文字幕 | 一级毛片在线播放免费 | 色综合欧美综合天天综合 | 波多野吉衣一区二区三区在线观看 | 日本中文字幕视频在线看 | 日本亚州在线播放精品 |