Many-to-one mapping

Use a Many-to-One mapping to defines a single-valued association to another entity class that has many-to-one multiplicity.

  1. In the JPA Structure view, select the field to map. The JPA Details view (for attributes) displays the properties for the selected.

  2. In the Map As field, select Many-to-One.

  3. Use this table to complete the General information fields JPA Details view.

    Property Description Default
    Target Entity The entity to which this attribute is mapped. null

    You do not need to explicitly specify the target entity, since it can be inferred from the type of object being referenced.

    Fetch Type Defines how data is loaded from the database. See "Fetch Type" for details.
    • Eager

    • Lazy

    Eager
    Cascade Type See "Cascade Type" for details.
    • Default

    • All

    • Persist

    • Merge

    • Remove

    Default
    Optional Specifies if this field is can be null. Yes

  4. Use this table to complete the fields on the Join Columns Information tab in the JPA Details view.

    Property Description Default
    Join Column Specify a mapped column for joining an entity association. This field corresponds to the @JoinColum attribute.

    Select Override Default, then Add, Edit, or Remove the join columns.

    By default, the mapping is assumed to have a single join.

Eclipse adds the following annotations to the field:

@JoinTable(joinColumns=@JoinColumn(name="<JOIN_COLUMN>"), 
    name = "<JOIN_TABLE_NAME>")
@ManyToOne(targetEntity=<TARGET_ENTITY>, fetch=<FETCH_TYPE>, 
    cascade=<CASCADE_TYPE>)

 

Related task

Mapping an entity

 

Related reference

JPA Structure view
JPA Details view (for attributes)

 

Related concept

Understanding OR mappings
Understanding EJB 3.0 Java Persistence API