javax.persistence.criteria

## Interface Join<Z,X>

- Type Parameters:
    `Z` - the source type of the join
    `X` - the target type of the join
  All Superinterfaces:
    Expression<X>, FetchParent<Z,X>, From<Z,X>, Path<X>, Selection<X>, TupleElement<X>
  All Known Subinterfaces:
    CollectionJoin<Z,E>, ListJoin<Z,E>, MapJoin<Z,K,V>, PluralJoin<Z,C,E>, SetJoin<Z,E>

      public interface Join<Z,X>
      extends From<Z,X>

  A join to an entity, embeddable, or basic type.
  Since:
    Java Persistence 2.0

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Attribute<? super Z,?>` | `getAttribute()` Return the metamodel attribute corresponding to the join.
    `JoinType` | `getJoinType()` Return the join type.
    `Predicate` | `getOn()` Return the predicate that corresponds to the ON restriction(s) on the join, or null if no ON condition has been specified.
    `From<?,Z>` | `getParent()` Return the parent of the join.
    `Join<Z,X>` | `on(Expression<Boolean> restriction)` Modify the join to restrict the result according to the specified ON condition and return the join object.
    `Join<Z,X>` | `on(Predicate... restrictions)` Modify the join to restrict the result according to the specified ON condition and return the join object.

    - ### Methods inherited from interface javax.persistence.criteria.From

      `getCorrelationParent, getJoins, isCorrelated, join, join, join, join, join, join, join, join, join, join, join, join, joinCollection, joinCollection, joinList, joinList, joinMap, joinMap, joinSet, joinSet`

    - ### Methods inherited from interface javax.persistence.criteria.Path

      `get, get, get, get, getModel, getParentPath, type`

    - ### Methods inherited from interface javax.persistence.criteria.Expression

      `as, in, in, in, in, isNotNull, isNull`

    - ### Methods inherited from interface javax.persistence.criteria.Selection

      `alias, getCompoundSelectionItems, isCompoundSelection`

    - ### Methods inherited from interface javax.persistence.TupleElement

      `getAlias, getJavaType`

    - ### Methods inherited from interface javax.persistence.criteria.FetchParent

      `fetch, fetch, fetch, fetch, fetch, fetch, getFetches`

- - ### Method Detail

    - #### on

          Join<Z,X> on(Expression<Boolean> restriction)

      Modify the join to restrict the result according to the specified ON condition and return the join object. Replaces the previous ON condition, if any.
      Parameters:
        `restriction` - a simple or compound boolean expression
      Returns:
        the modified join object
      Since:
        Java Persistence 2.1

    - #### on

          Join<Z,X> on(Predicate... restrictions)

      Modify the join to restrict the result according to the specified ON condition and return the join object. Replaces the previous ON condition, if any.
      Parameters:
        `restrictions` - zero or more restriction predicates
      Returns:
        the modified join object
      Since:
        Java Persistence 2.1

    - #### getOn

          Predicate getOn()

      Return the predicate that corresponds to the ON restriction(s) on the join, or null if no ON condition has been specified.
      Returns:
        the ON restriction predicate
      Since:
        Java Persistence 2.1

    - #### getAttribute

          Attribute<? super Z,?> getAttribute()

      Return the metamodel attribute corresponding to the join.
      Returns:
        metamodel attribute corresponding to the join

    - #### getParent

          From<?,Z> getParent()

      Return the parent of the join.
      Returns:
        join parent

    - #### getJoinType

          JoinType getJoinType()

      Return the join type.
      Returns:
        join type

Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.