<span>Mandragora</span> (<a href="http://mandragora.sourceforge.net/" target="_blank">http://<span>mandragora</span>.sourceforge.net/</a>) is an opensource framework that provides a pre-built infrastructure for every kind of java application.<br>



<br> <span>Mandragora </span>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.<br>


<br>If you use a MVC pattern in the application that you have to design and implement,  <span>Mandragora</span> provides you the infrastructure for the Model.<br>
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.<br>
<span>Mandragora</span> 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
<span>Mandragora</span> 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.<br>
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 <span>Mandragora</span>  (<a href="http://mandragora.sourceforge.net/" target="_blank">http://<span>mandragora</span>.sourceforge.net/</a>)
for the business method that you have to implement because you don&#39;t
find in the  provided ones, you are guaranteed to implement a well done
architecture. <br>
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.<br>
<br>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.<br><br><br>Best regards<br><br>Alessandro Colantoni<br><br><a href="http://mandragora.sourceforge.net/" target="_blank">http://<span>mandragora</span>.sourceforge.net/</a>