Tryb podmiot Skład
Połączenie trybu podmiot (Composite Entity deseń) wykorzystywane w mechanizmie EJB trwałości. Połączony podmiot jest podmiotem fasoli EJB w imieniu obiektu graficznego. Podczas aktualizacji połączonego podmiotu, wewnętrzne automatycznie aktualizować obiekty zależne ziaren, ponieważ są zarządzane przez podmiot fasoli EJB. Poniżej znajduje się fasoli uczestnik skład podmiotu.
- Jednostka Skład (Composite Entity) - który jest głównym podmiotem fasoli.To może być gruba, albo może zawierać obiekt gruboziarnistych do ciągłego cyklu życia.
- obiekty gruboziarnistych (gruboziarnisty Object) - Obiekt zawiera swój obiekt.Posiada swój własny cykl życia, ale także do zarządzania cyklem życia obiektów zależnych.
- obiektów zależnych (w zależności od obiektu) - obiekty zależne jest cykl życia zależy od obiektów obiektów gruboziarnistych kontynuowanej.
- Strategy (Strategia) - wskazują, jak zaimplementować kombinacji podmiotu strategii.
realizacja
Stworzymy jako połączony podmiotCompositeEntityobiektu.CoarseGrainedObjectjest zależne klasy obiektu zawiera.
CompositeEntityPatternDemo naszeklasy demonstracji za pomocą klasyklientaw celu wykazania zastosowania kombinacji wzorów fizycznych.
Etap 1
Tworzenie obiektów zależnych.
DependentObject1.java
{public class DependentObject1 prywatnych danych String; public void SetData (dane) {String this.data = dane; } public String getData () { zwrócić dane; } }
DependentObject2.java
{public class DependentObject2 prywatnych danych String; public void SetData (dane) {String this.data = dane; } public String getData () { zwrócić dane; } }
Etap 2
Tworzenie obiektu gruboziarnistych.
CoarseGrainedObject.java
{public class CoarseGrainedObject DependentObject1 DO1 = new DependentObject1 (); DependentObject2 DO2 = new DependentObject2 (); public void SetData (dane1 String, String) {dane2 do1.setData (data1); do2.setData (dane2); } public String [] getData () { powrót new String [] {do1.getData (), do2.getData ()}; } }
etap 3,
Tworzenie połączenia podmiotów.
CompositeEntity.java
{public class CompositeEntity prywatne CoarseGrainedObject CGO = new CoarseGrainedObject (); public void SetData (dane1 String, String) {dane2 cgo.setData (data1, data2); } public String [] getData () { powrót cgo.getData (); } }
Etap 4
Utworzone za pomocą połączenia stałego klasy klienta.
Client.java
public class Client { prywatne CompositeEntity compositeEntity = new CompositeEntity (); public void printData () { for (int i = 0 i <;. compositeEntity.getData () długość; i ++) { System.out.println ( "Data:" + compositeEntity.getData () [i]); } } public void SetData (dane1 String, String) {dane2 compositeEntity.setData (data1, data2); } }
Etap 5
Używaćklientaw celu wykazania zastosowania kombinacji fizycznej desenie.
CompositeEntityPatternDemo.java
{public class CompositeEntityPatternDemo public static void main (String [] args) { Client client = new Client (); client.setData ( "Test", "dane"); client.printData (); client.setData ( "Drugi test", "Dane1"); client.printData (); } }
Etap 6
Sprawdź, czy wyjście.
Dane: Test Danych: Dane Dane: Drugi test Dane: Dane1