Mandragora (
http://mandragora.sourceforge.net/) is an opensource framework
that provides a pre-built infrastructure for every kind of java application.
Mandragora is a generic business layer highly configurable and easily
extensible, suitable for distributed applications as well, that come with
more than 100 generic business methods , and that allows you to reuse the
methods you write, keeping the infrastructure that implements the J2ee
patterns. It has been fully tested for JBOSS, and it can be considered a
component of the middleware.
If you use a MVC pattern in the application that you have to design and
implement, Mandragora provides you the infrastructure for the Model.
Typically, with MVC, the controller has to update or query the model, and
the view can query the model as well. The model should be decoupled from
controller or view by a business delegate layer. So all access to the model
should pass trough the BD.
Mandragora provides more than one hundred of business methods, that your
controller for example, has just to call, without worrying about their
implementation (IoC). So How such methods call service facade, application
services ,and DAO methods, is not about your care. Just do
bd.findByPrimarykey(....) or bd. storePathsCascade(...) and much more, to
execute very complex operations and queries such storing or modifying very
complex objects in the DB. Then you can extend the service facade,
application services and Dao implementation very easily, to better fit your
requirements, as Mandragora porvides a very easy to use IoC mechanism, to
allow you to choose which implementation of BD, ApplicationService, Service
FAcade or DAO interface to use, even at runtime.
You should spend some minutes downloading and trying it, to see, how much
time you can save, having yet ready to use the most common operations (many
crud methods and much more complex business methods), so in your work you
have just to focus on the particular Business Intelligence of your concrete
project, as all such bothering operations that you have to repeat project
after project, are already done, once for ever, and if you improve them,
such work is done for all your projects. Moreover all of that is implemented
using a well done infrastructure using the J2ee patterns, so extending
Mandragora (
http://mandragora.sourceforge.net/) for the business method
that you have to implement because you don't find in the provided ones, you
are guaranteed to implement a well done architecture.
If you wish to write new BD methods, you can do in terms of the already
existing Servcice Facade methods, or mixing with new SF methods written by
your own, that in turn ca be implemented in terms of existing Application
Service or DAO methods, or in terms of new ones that you write. All this is
very easy to use. Download and spend 30 minutes. You will save week of
work.
I hope you will appreciate this work , and come with new idea and methods to
make it grow up. Any kind of critic is of course welcome.
Best regards
Alessandro Colantoni
http://mandragora.sourceforge.net/