<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 組合實體模式 組合實體模式(Composite Entity Pattern)用在 EJB 持久化機制中。一個組合實體是一個 EJB 實體 bean,代表了對象的圖解。當更新一個組合實體時,內部依賴對象 beans 會自動更新,因為它們是由 EJB 實體 bean 管理的。以下是組合實體 bean 的參與者。 * **組合實體(Composite Entity)** - 它是主要的實體 bean。它可以是粗粒的,或者可以包含一個粗粒度對象,用于持續生命周期。 * **粗粒度對象(Coarse-Grained Object)** - 該對象包含以來對象。它有自己的生命周期,也能管理依賴對象的生命周期。 * **依賴對象(Dependent Object)** - 依賴對象是一個持續生命周期依賴于粗粒度對象的對象。 * **策略(Strategies)** - 策略表示如何實現組合實體。 ## 實現 我們將創建作為組合實體的 _CompositeEntity_ 對象。_CoarseGrainedObject_ 是一個包含依賴對象的類。 _CompositeEntityPatternDemo_,我們的演示類使用 _Client_ 類來演示組合實體模式的用法。 ![組合實體模式的 UML 圖](https://box.kancloud.cn/2015-12-13_566cdfc149771.jpg) ## 步驟 1 創建依賴對象。 _DependentObject1.java_ ``` public class DependentObject1 { private String data; public void setData(String data){ this.data = data; } public String getData(){ return data; } } ``` _DependentObject2.java_ ``` public class DependentObject2 { private String data; public void setData(String data){ this.data = data; } public String getData(){ return data; } } ``` ## 步驟 2 創建粗粒度對象。 _CoarseGrainedObject.java_ ``` 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 創建組合實體。 _CompositeEntity.java_ ``` 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 創建使用組合實體的客戶端類。 _Client.java_ ``` 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_ 來演示組合實體設計模式的用法。 _CompositeEntityPatternDemo.java_ ``` 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 驗證輸出。 ``` Data: Test Data: Data Data: Second Test Data: Data1 ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看