On Tue, Jun 3, 2008 at 8:57 AM, Florian Holeczek <[EMAIL PROTECTED]> wrote: > I'm trying to find out whether (and how) e.g. a relational data layer > differs from a JCR data layer.
With JCR, there is typically less abstraction needed in the backend. With databases you often have 2 or even 3 layers in the persistence part (database schema, DAO objects, sometimes another DAO layer), whereas JCR makes it easy to access your data directly, since the API with Node and Property objects very much acts like a DAO already. If you want mapping to custom objects, though, you can do so by using the Jackrabbit-OCM library. If you take a look at Apache Sling (http://incubator.apache.org/sling/), which is a web application framework on top of JCR, you will see that by using JCR it simplifies the implementation of the MVC pattern in the context of web apps (generally assuming MVC is a good thing for writing user interfaces ;-) ): Sling already provides the controller (URL request processing based on hierarchical resources in JCR + default servlets that write standard POST requests into the repository) and the model (JCR nodes), so all you have to do is write some views in your favorite scripting language or as Java servlets. Ok, enough Sling marketing ;-) Regards, Alex -- Alexander Klimetschek [EMAIL PROTECTED]
