  | Mailing List | | Home | | Forum Home | | JBoss - Java Application Server | | Struts - A MVC web framework | | Tomcat - JSP/Servlet container | | iText - An open source PDF Java Library | | JDOM - JDOM XML Parser | | J2EE - A mailing list for Java(tm) 2 Platform, Enterprise Edition | | J2EE Pattern - An interest list for Sun Java Center J2EE Pattern Catalog | | Servlet - A mailing list for discussion about Sun Microsystem's Java Servlet API Technology | | JSP - A mailing list about Java Server Pages specification and reference | |
Struts & Hibernate
|
|
|
  | | | What is a "Data Object "? | What is a "Data Object "? 2004-01-02 - By ashraf galal
Back <html><div style='background-color:'><P><BR><BR></P> <P>Chad;</P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><TT><SPAN style="FONT-SIZE: 10pt ; COLOR: black; FONT-FAMILY: Arial">It is the implementation of the business object pattern.<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com :office:office" /><o:p></o:p></SPAN></TT></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">Term:<SPAN style="mso-spacerun: yes"> </SPAN>Business Object: <o:p></o:p></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">An object that implements business logic and/or business data.<o:p></o:p></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">Business data and business logic are implemented in coarse-grained objects called business objects.<o:p>< /o:p></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">In J2EE, business objects are implemented as session or entity beans.<o:p></o:p></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">In some cases, a business object could be an arbitrary java object that provides some services.<o:p></o:p ></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><B><I><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"> <o:p></o:p></SPAN>< /I></B></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><B><I><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt">See attached document for class and sequence diagrams <o:p></o:p></SPAN></I></B></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><B><I><SPAN style="FONT-SIZE: 10pt; COLOR: #330000; FONT-FAMILY: Arial; mso-bidi-font-size: 9.0pt"> <o:p ></o:p></SPAN></I></B></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="FONT-SIZE: 10pt; COLOR: #330000; FONT-FAMILY: Arial; mso-bidi-font-size: 9.0pt"> <o:p></o:p ></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="FONT-SIZE: 10pt; COLOR: #330000; FONT-FAMILY: Arial; mso-bidi-font-size: 9.0pt">I do think that these<SPAN style="mso-spacerun: yes"> </SPAN>diagrams must answer most of your questions.<o:p></o:p></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="FONT-SIZE: 10pt; COLOR: #330000; FONT-FAMILY: Arial; mso-bidi-font-size: 9.0pt"> <o:p></o:p ></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="FONT-SIZE: 10pt; COLOR: #330000; FONT-FAMILY: Arial; mso-bidi-font-size: 9.0pt">We might implement the business object using the composite entity pattern (you are right ) or DAO or other different implementation.<o:p></o:p></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="FONT-SIZE: 10pt; COLOR: #330000; FONT-FAMILY: Arial; mso-bidi-font-size: 9.0pt"> <o:p></o:p ></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="FONT-SIZE: 10pt; COLOR: #330000; FONT-FAMILY: Arial; mso-bidi-font-size: 9.0pt">Regarding your question ?</SPAN><TT><SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial">Can the Presentation Tier directly </SPAN></TT><SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial; mso-fareast-font-family: 'Courier New'" ><BR><TT><SPAN style="mso-ascii-font-family: Arial; mso-hansi-font-family: Arial ; mso-bidi-font-family: Arial"><FONT face="Simplified Arabic Fixed">instantiate and use "Data Objects"? ?<o:p></o:p></FONT></SPAN></TT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><TT><SPAN style="FONT-SIZE: 10pt ; COLOR: black; FONT-FAMILY: Arial"> <o:p></o:p></SPAN></TT></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><TT><SPAN style="FONT-SIZE: 10pt ; COLOR: black; FONT-FAMILY: Arial">We always use the business delegate pattern to decouple the tier and hide the implementation details. It is better not to use it directly from client tier (my opinion).</SPAN></TT><SPAN style="FONT -SIZE: 10pt; FONT-FAMILY: Arial; mso-bidi-font-size: 12.0pt"><o:p></o:p></SPAN>< /P> <P><BR><BR> </P><BR><BR><BR> <DIV>Ashraf Galal <BR>(416)804-8359</DIV>>From: Chad Woolley <LISTS @(protected)>>Reply-To: An interest list for Sun Java Center J2EE Pattern Catalog <J2EEPATTERNS-INTEREST@(protected)>>To: J2EEPATTERNS -INTEREST@(protected) >Subject: What is a "Data Object"? >Date: Tue, 30 Dec 2003 21:41:41 -0700 > >On page 387 of the 2nd edition, in Example 7 .21 for the "Business >Object" pattern, there is the following code: > > ;public class CustomerBO { > // CustomerData is a Data Object > private CustomerData customerData; > . . . > public CustomerBO(CustomerData customerData) { > . . . > this.customerData = customerData; > } > . . . >} > > >What is a "Data Object"?? It's not a Transfer Object, because the >design note at the end of the chapter on page 390 specifically >states >that a Business Object should NOT wrap a Transfer Object. It's also >obviously not a Data ACCESS Object. > >It CAN be a comp osite object (contain other Data Objects), because >that >is how it is used in the example. > >It looks like it is just a plain Value Object, except that Value >Objects >no longer exist in the second edition (except for the typo >references in >the index that weren't changed to Transfer Object). > >Is this just an object that holds data? If so, where does it fit >with >the other patterns? Is it encapsulated within the Business Tier, or >can >it be exposed to the Presentation Tier? If so, is it meant to be >transferred within a TransferObject? Can the Presentation Tier > ;directly >instantiate and use "Data Objects"? > >Thanks, >Chad > >==================================================================== > ;Companion Site: http://www.corej2eepatterns.com >J2EE BluePrints: http:/ /java.sun.com/blueprints/corej2eepatterns >List Archive: >http://archives .java.sun.com/archives/j2eepatterns-interest.html > Unsubscribing: email "signoff J2EEPATTERNS-INTEREST" to >listserv@(protected) .com </div><br clear=all><hr>MSN 8 helps <a href="http://g.msn.com/8HMBENCA /2743??PS=">ELIMINATE E-MAIL VIRUSES. </a> Get 2 months FREE*. </html> ==================================================================== Companion Site: http://www.corej2eepatterns.com J2EE BluePrints: http://java.sun.com/blueprints/corej2eepatterns List Archive: http://archives.java.sun.com/archives/j2eepatterns-interest.html Unsubscribing: email "signoff J2EEPATTERNS-INTEREST" to listserv@(protected)
|
|
 |