Re: [CONF] Apache Cayenne Documentation: Inheritance overview (page created)

From: Craig L Russell (Craig.Russel..un.COM)
Date: Sat Jun 02 2007 - 19:00:51 EDT

  • Next message: Andrus Adamchik: "Re: [CONF] Apache Cayenne Documentation: Inheritance overview (page created)"

    Hi Ari,

    I hope this doesn't confuse things more, but in reality, you often
    have schema that fall into multiple categories of mapping.

    For example, a hierarchy might have a table that maps all of the
    fields of the superclass A. Class B extends A and has a table BS
    containing a discriminator column WHICHB and the fields of all of the
    subclasses of B. Another class C extends A and its table C maps only
    the fields of class C while subclasses C1 and C2 each have their own
    table for their fields.

    To make it easier on the ORM, table A might also include a
    discriminator column WHICHA that explicitly identifies the class that
    the row corresponds to.

    Craig

    On Jun 2, 2007, at 3:53 PM, Aristedes Maniatis wrote:

    >
    > On 03/06/2007, at 3:25 AM, Kevin Menard wrote:
    >
    >> I think what you may have missed is that it's a single
    >> table-per-class-hierarchy, not table-per-class.
    >
    > Yes, you are right. I read it as (table-per-class)-hierarchy rather
    > than table-per-(class-hierarchy).
    >
    > I've made a little translation table for the docs to help users
    > coming from Hibernate/WO/JPA. Personally I far prefer the vertical/
    > horizontal/single-table naming since it is nicely evocative of the
    > diagram.
    >
    > Ari
    >
    >
    >
    >
    > -------------------------->
    > Aristedes Maniatis
    > phone +61 2 9660 9700
    > PGP fingerprint 08 57 20 4B 80 69 59 E2 A9 BF 2D 48 C2 20 0C C8
    >
    >

    Craig Russell
    Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
    408 276-5638 mailto:Craig.Russel..un.com
    P.S. A good JDO? O, Gasp!





    This archive was generated by hypermail 2.0.0 : Sat Jun 02 2007 - 20:47:53 EDT