This thread is getting really OT, but I thought when the relational elements come into play, it is no longer a DAO, but a JDO implementation.
Jacob Hookom Comprehensive Computer Science University of Wisconsin, Eau Claire -----Original Message----- From: Dan Cancro [mailto:[EMAIL PROTECTED]] Sent: Monday, July 29, 2002 8:01 PM To: 'Struts Users Mailing List' Subject: RE: DAO Addition to struts So, do object-relational mapping tools provide relational-database-type Data Access Objects? Or are there two distinct levels of insulation between the business logic and the persistence mechanism, where one is swapped out when the database changes and the other stays around unchanged? Thanks again, Dan > -----Original Message----- > From: Craig R. McClanahan [mailto:[EMAIL PROTECTED]] > Sent: Monday, July 29, 2002 5:33 PM > To: Struts Users Mailing List > Subject: RE: DAO Addition to struts > > > At a relatively simplistic level, I view object/relational > mapping tools > as focused on the second word ("relational" as in "relational > database"). > In other words, there is a presumption about the persistence mechanism > that will be used. > > While that need is very definitely legitimate and common, my (again > relatively simplistic) view of DAOs is that they don't have > to make that > assumption. It's quite feasible (in many use cases) to write a common > abstraction over data that might ulimately get stored in a > database, in a > directory server, in flatfiles, in XML, accessed remotely via CORBA or > RMI, and so on ...). The point is to isolate the user of the data > provided by the DAO from the grubby details of the chosen persistence > mechanism, and/or to insulate the user from changes in the choice of > persistence. > > A very trivial DAO object is the "database" in the 1.1 version of the > Struts example app. Although the default implementation > reads and writes > an XML file, it is easy to conceive of writing a JDBC-based > implementation > of the same interface. > > Craig > > On Mon, 29 Jul 2002, Dan Cancro wrote: > > > Date: Mon, 29 Jul 2002 16:37:26 -0700 > > From: Dan Cancro <[EMAIL PROTECTED]> > > Reply-To: Struts Users Mailing List <[EMAIL PROTECTED]> > > To: 'Struts Users Mailing List' <[EMAIL PROTECTED]> > > Subject: RE: DAO Addition to struts > > > > What's the difference between DAO frameworks and Object Relational > > frameworks? > > > > Here's a list of things I was calling Object Relational > Mapping Tools. Are > > these the same things as DAO tools? If not, what are the > distinct parts of > > this business-to-db middle layer, and what are the distinctions? > > > > *Apache:Betwixt > > *Apache:ObjectRelationalBridge > > *Apache:Peers > > *Apache:Torque > > *ChiMu:FreeForm > > *JCorporate:Expresso > > *Persistence Layer > > *SourceForge:DataBind > > *SourceForge:jRelationalFramework > > *SourceForge:MiddleGen > > *sql2java > > *Sun:Entity Enterprise JavaBeans > > *Sun:DAO > > *Sun:JDO > > *Sun:JMX > > ChiMu:Form > > eQ! > > exolab.org:Castor > > Microsoft:ADO > > Objectwave:Jgrinder > > Thought Inc:CoCoBase > > Village > > Webgain:Toplink > > > > Thanks, > > Dan > > > > > > > -----Original Message----- > > > From: Craig R. McClanahan [mailto:[EMAIL PROTECTED]] > > > Sent: Monday, July 29, 2002 2:53 PM > > > To: Struts Users Mailing List > > > Subject: Re: DAO Addition to struts > > > > > > > > > > > > > > > On Mon, 29 Jul 2002, Craig R. McClanahan wrote: > > > > > > > > > > > There are DAO-like design patterns in some of the > > > applications in the > > > > "contrib" directory of the CVS repository, and in many > of the apps > > > > referenced on the resources page. And, of course, the DAO > > > descriptions > > > > from any competent patterns book should work just fine with > > > Struts -- many > > > > of them come with example code that can give you a > starting point. > > > > > > > > > > I should also point out that there are also tools in the > > > world that start > > > from a description of your data (or introspect the > metadata of your > > > database) and generate DAO classes for you. Two open > source ones to > > > check out (off the top of my head) are Torque and Castor, but > > > there are > > > many alternatives. > > > > > > Craig > > > > > > > > > -- > > > To unsubscribe, e-mail: > > > <mailto:[EMAIL PROTECTED]> > > > For additional commands, e-mail: > > > <mailto:[EMAIL PROTECTED]> > > > > > > > -- > > To unsubscribe, e-mail: > <mailto:[EMAIL PROTECTED]> > > For additional commands, e-mail: > <mailto:[EMAIL PROTECTED]> > > > > > > > -- > To unsubscribe, e-mail: > <mailto:[EMAIL PROTECTED]> > For additional commands, e-mail: > <mailto:[EMAIL PROTECTED]> > -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> --- Incoming mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.380 / Virus Database: 213 - Release Date: 7/24/2002 --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.380 / Virus Database: 213 - Release Date: 7/24/2002 -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

