There is a comprehensive "verticals" framework that is
Struts-based at basicportal.sourceforge.net, which is
a Struts-based alternative to JetSpeed. A DAO
framework is also a part of it.

-Mete

--- Jacob Hookom <[EMAIL PROTECTED]> wrote:
>
http://www.javaworld.com/javaworld/jw-03-2002/jw-0301-dao.html
> 
> Jacob Hookom 
> Comprehensive Computer Science 
> University of Wisconsin, Eau Claire 
> 
> 
> -----Original Message-----
> From: David Graham [mailto:[EMAIL PROTECTED]] 
> Sent: Monday, July 29, 2002 4:44 PM
> To: [EMAIL PROTECTED]
> Subject: Re: DAO Addition to struts
> 
> Ok, I can live without DAO being part of struts.
> 
> Thanks,
> Dave
> 
> >
> >On Mon, 29 Jul 2002, David Graham wrote:
> >
> > > Date: Mon, 29 Jul 2002 15:15:46 -0600
> > > From: David Graham <[EMAIL PROTECTED]>
> > > Reply-To: Struts Users Mailing List
> <[EMAIL PROTECTED]>
> > > To: [EMAIL PROTECTED]
> > > Subject: DAO Addition to struts
> > >
> > > Craig,
> > > You mentioned the DAO pattern in this last post
> on architectures.
> I'm
> > > wondering if you have any plans on adding a DAO
> framework to struts?
> I
> > > think it would be a nice addition and provide
> something that many
> people
> > > have to design themselves.  I suppose it may be
> outside of the scope
> for
> > > struts but I'll leave that up to you :-).
> > >
> >
> >As popular as it might be, I've been a little
> hesitant to add model
> layer
> >patterns to the core part of Struts.  After all,
> one of the values of
> >these patterns is you should be able to use the
> same DAO objects in
> >non-web contexts (so we wouldn't want to put in
> dependencies on servlet
> >and JSP, or even Struts, APIs).  Also, putting
> *one* implementation of
> the
> >pattern into Struts would seem to imply that
> alternative
> implementations
> >are less legitimate -- and the spectrum of use
> cases for DAOs is so
> broad
> >that I'm not sure that is a good alternative.
> >
> >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.
> >
> > > Thanks,
> > > Dave
> > >
> >
> >Craig
> >
> > >
> > > >From: "Craig R. McClanahan"
> <[EMAIL PROTECTED]>
> > > >Reply-To: "Struts Users Mailing List"
> <[EMAIL PROTECTED]>
> > > >To: Struts Users Mailing List
> <[EMAIL PROTECTED]>
> > > >Subject: RE: Architecture advice....
> > > >Date: Mon, 29 Jul 2002 14:09:46 -0700 (PDT)
> > > >
> > > >
> > > >
> > > >On Mon, 29 Jul 2002, Chappell, Simon P wrote:
> > > >
> > > > > Date: Mon, 29 Jul 2002 14:06:03 -0500
> > > > > From: "Chappell, Simon P"
> <[EMAIL PROTECTED]>
> > > > > Reply-To: Struts Users Mailing List
> <[EMAIL PROTECTED]>
> > > > > To: Struts Users Mailing List
> <[EMAIL PROTECTED]>
> > > > > Subject: RE: Architecture advice....
> > > > >
> > > > > Well, what we did to seperate Struts from
> the backend was to 
> >implement
> > > > > what we called a "Firebreak". We created an
> abstract Java class 
> >called
> > > > > API.java. It's whole purpose in life was to
> be the application
> API 
> >to
> > > > > the model component. This would enable us to
> utilise alternative
> 
> >views
> > > > > and/or controllers if our needs ever took us
> in that direction.
> > > > >
> > > >
> > > >Design pattern books call this the Data Access
> Object (DAO)
> pattern.  
> >It's
> > > >quite commonly implemented.  The best scenaro
> is where your DAO
> object
> > > >returns JavaBeans that represent the underlying
> data (like
> customers 
> >and
> > > >orders), instead of just providing pass-through
> access to the 
> >connection
> > > >pool.
> > > >
> > > >One of the big things I like about it is that
> the actual technology
> 
> >used
> > > >to store the persistent data (and any changes
> to it you make later)
> are
> > > >hidden from the business logic that uses the
> data.
> > > >
> > > >For example, you might start out by embedding
> JDBC calls in your
> DAO to
> > > >load and store the data.  Later on, your DBA
> might split one table
> into
> > > >two (or combine two into one) to improve
> efficiency -- you can
> tweak 
> >the
> > > >JDBC calls inside your DAO and never touch the
> business logic that
> uses
> > > >it.  Later on, you might find it necessary to
> switch to EJBs for
> > > >scalability -- as long as you're not adding
> properties to the data
> > > >objects, these kinds of changes are
> transparent.
> > > >
> > > > > All functionality in the application is
> accessable through
> static
> > > > > methods in the API class. This is nice for
> us, we removed all 
> >processing
> > > > > logic from the actions and put it in the
> main application space.
> Now 
> >our
> > > > > actions concentrate on ActionForms and
> calling the API methods.
> > > > >
> > > >
> > > >Servlet context attributes can be thought of
> like "per-webapp
> statics",
> > > >because they have exactly the same memory
> impact.  However, they 
> >provide
> > > >slightly more flexibility because you can
> subtitute different
> > > >implementations of the same API interface more
> easily.  The
> negative is
> > > >that you have to have a reference to the
> ServletContext to acquire
> your
> > > >DAO object.
> > > >
> > > >The standard J2EE approach to that is to use
> JNDI resources - they
> 
=== message truncated ===


__________________________________________________
Do You Yahoo!?
Yahoo! Health - Feel better, live better
http://health.yahoo.com

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to