Package javax.persistence

Examples of javax.persistence.JoinTable


    assertAnnotationNotPresent( PrimaryKeyJoinColumn.class );
    assertAnnotationNotPresent( PrimaryKeyJoinColumns.class );
    assertAnnotationPresent( JoinTable.class );
    assertAnnotationNotPresent( JoinColumns.class );
    assertAnnotationNotPresent( JoinColumn.class );
    JoinTable joinTableAnno = reader.getAnnotation( JoinTable.class );
    assertEquals( "cat1", joinTableAnno.catalog() );
    assertEquals( "table1", joinTableAnno.name() );
    assertEquals( "schema1", joinTableAnno.schema() );

    // JoinColumns
    JoinColumn[] joinColumns = joinTableAnno.joinColumns();
    assertEquals( 2, joinColumns.length );
    assertEquals( "", joinColumns[0].name() );
    assertEquals( "", joinColumns[0].referencedColumnName() );
    assertEquals( "", joinColumns[0].table() );
    assertEquals( "", joinColumns[0].columnDefinition() );
    assertTrue( joinColumns[0].insertable() );
    assertTrue( joinColumns[0].updatable() );
    assertTrue( joinColumns[0].nullable() );
    assertFalse( joinColumns[0].unique() );
    assertEquals( "col1", joinColumns[1].name() );
    assertEquals( "col2", joinColumns[1].referencedColumnName() );
    assertEquals( "table2", joinColumns[1].table() );
    assertEquals( "int", joinColumns[1].columnDefinition() );
    assertFalse( joinColumns[1].insertable() );
    assertFalse( joinColumns[1].updatable() );
    assertFalse( joinColumns[1].nullable() );
    assertTrue( joinColumns[1].unique() );

    // InverseJoinColumns
    JoinColumn[] inverseJoinColumns = joinTableAnno.inverseJoinColumns();
    assertEquals( 2, inverseJoinColumns.length );
    assertEquals( "", inverseJoinColumns[0].name() );
    assertEquals( "", inverseJoinColumns[0].referencedColumnName() );
    assertEquals( "", inverseJoinColumns[0].table() );
    assertEquals( "", inverseJoinColumns[0].columnDefinition() );
    assertTrue( inverseJoinColumns[0].insertable() );
    assertTrue( inverseJoinColumns[0].updatable() );
    assertTrue( inverseJoinColumns[0].nullable() );
    assertFalse( inverseJoinColumns[0].unique() );
    assertEquals( "col3", inverseJoinColumns[1].name() );
    assertEquals( "col4", inverseJoinColumns[1].referencedColumnName() );
    assertEquals( "table3", inverseJoinColumns[1].table() );
    assertEquals( "int", inverseJoinColumns[1].columnDefinition() );
    assertFalse( inverseJoinColumns[1].insertable() );
    assertFalse( inverseJoinColumns[1].updatable() );
    assertFalse( inverseJoinColumns[1].nullable() );
    assertTrue( inverseJoinColumns[1].unique() );

    // UniqueConstraints
    UniqueConstraint[] uniqueConstraints = joinTableAnno
        .uniqueConstraints();
    assertEquals( 2, uniqueConstraints.length );
    assertEquals( "", uniqueConstraints[0].name() );
    assertEquals( 1, uniqueConstraints[0].columnNames().length );
    assertEquals( "col5", uniqueConstraints[0].columnNames()[0] );
View Full Code Here


    reader = getReader( Entity2.class, "field1", "one-to-many.orm16.xml" );
    assertAnnotationPresent( OneToMany.class );
    assertAnnotationPresent( JoinTable.class );
    assertAnnotationNotPresent( JoinColumns.class );
    assertAnnotationNotPresent( JoinColumn.class );
    JoinTable joinTableAnno = reader.getAnnotation( JoinTable.class );
    assertEquals( "", joinTableAnno.catalog() );
    assertEquals( "", joinTableAnno.name() );
    assertEquals( "", joinTableAnno.schema() );
    assertEquals( 0, joinTableAnno.joinColumns().length );
    assertEquals( 0, joinTableAnno.inverseJoinColumns().length );
    assertEquals( 0, joinTableAnno.uniqueConstraints().length );
  }
View Full Code Here

    reader = getReader( Entity2.class, "field1", "one-to-many.orm17.xml" );
    assertAnnotationPresent( OneToMany.class );
    assertAnnotationPresent( JoinTable.class );
    assertAnnotationNotPresent( JoinColumns.class );
    assertAnnotationNotPresent( JoinColumn.class );
    JoinTable joinTableAnno = reader.getAnnotation( JoinTable.class );
    assertEquals( "cat1", joinTableAnno.catalog() );
    assertEquals( "table1", joinTableAnno.name() );
    assertEquals( "schema1", joinTableAnno.schema() );

    // JoinColumns
    JoinColumn[] joinColumns = joinTableAnno.joinColumns();
    assertEquals( 2, joinColumns.length );
    assertEquals( "", joinColumns[0].name() );
    assertEquals( "", joinColumns[0].referencedColumnName() );
    assertEquals( "", joinColumns[0].table() );
    assertEquals( "", joinColumns[0].columnDefinition() );
    assertTrue( joinColumns[0].insertable() );
    assertTrue( joinColumns[0].updatable() );
    assertTrue( joinColumns[0].nullable() );
    assertFalse( joinColumns[0].unique() );
    assertEquals( "col1", joinColumns[1].name() );
    assertEquals( "col2", joinColumns[1].referencedColumnName() );
    assertEquals( "table2", joinColumns[1].table() );
    assertEquals( "int", joinColumns[1].columnDefinition() );
    assertFalse( joinColumns[1].insertable() );
    assertFalse( joinColumns[1].updatable() );
    assertFalse( joinColumns[1].nullable() );
    assertTrue( joinColumns[1].unique() );

    // InverseJoinColumns
    JoinColumn[] inverseJoinColumns = joinTableAnno.inverseJoinColumns();
    assertEquals( 2, inverseJoinColumns.length );
    assertEquals( "", inverseJoinColumns[0].name() );
    assertEquals( "", inverseJoinColumns[0].referencedColumnName() );
    assertEquals( "", inverseJoinColumns[0].table() );
    assertEquals( "", inverseJoinColumns[0].columnDefinition() );
    assertTrue( inverseJoinColumns[0].insertable() );
    assertTrue( inverseJoinColumns[0].updatable() );
    assertTrue( inverseJoinColumns[0].nullable() );
    assertFalse( inverseJoinColumns[0].unique() );
    assertEquals( "col3", inverseJoinColumns[1].name() );
    assertEquals( "col4", inverseJoinColumns[1].referencedColumnName() );
    assertEquals( "table3", inverseJoinColumns[1].table() );
    assertEquals( "int", inverseJoinColumns[1].columnDefinition() );
    assertFalse( inverseJoinColumns[1].insertable() );
    assertFalse( inverseJoinColumns[1].updatable() );
    assertFalse( inverseJoinColumns[1].nullable() );
    assertTrue( inverseJoinColumns[1].unique() );

    // UniqueConstraints
    UniqueConstraint[] uniqueConstraints = joinTableAnno
        .uniqueConstraints();
    assertEquals( 2, uniqueConstraints.length );
    assertEquals( "", uniqueConstraints[0].name() );
    assertEquals( 1, uniqueConstraints[0].columnNames().length );
    assertEquals( "col5", uniqueConstraints[0].columnNames()[0] );
View Full Code Here

    reader = getReader( Entity2.class, "field1", "many-to-many.orm16.xml" );
    assertAnnotationPresent( ManyToMany.class );
    assertAnnotationPresent( JoinTable.class );
    assertAnnotationNotPresent( JoinColumns.class );
    assertAnnotationNotPresent( JoinColumn.class );
    JoinTable joinTableAnno = reader.getAnnotation( JoinTable.class );
    assertEquals( "", joinTableAnno.catalog() );
    assertEquals( "", joinTableAnno.name() );
    assertEquals( "", joinTableAnno.schema() );
    assertEquals( 0, joinTableAnno.joinColumns().length );
    assertEquals( 0, joinTableAnno.inverseJoinColumns().length );
    assertEquals( 0, joinTableAnno.uniqueConstraints().length );
  }
View Full Code Here

    reader = getReader( Entity2.class, "field1", "many-to-many.orm17.xml" );
    assertAnnotationPresent( ManyToMany.class );
    assertAnnotationPresent( JoinTable.class );
    assertAnnotationNotPresent( JoinColumns.class );
    assertAnnotationNotPresent( JoinColumn.class );
    JoinTable joinTableAnno = reader.getAnnotation( JoinTable.class );
    assertEquals( "cat1", joinTableAnno.catalog() );
    assertEquals( "table1", joinTableAnno.name() );
    assertEquals( "schema1", joinTableAnno.schema() );

    // JoinColumns
    JoinColumn[] joinColumns = joinTableAnno.joinColumns();
    assertEquals( 2, joinColumns.length );
    assertEquals( "", joinColumns[0].name() );
    assertEquals( "", joinColumns[0].referencedColumnName() );
    assertEquals( "", joinColumns[0].table() );
    assertEquals( "", joinColumns[0].columnDefinition() );
    assertTrue( joinColumns[0].insertable() );
    assertTrue( joinColumns[0].updatable() );
    assertTrue( joinColumns[0].nullable() );
    assertFalse( joinColumns[0].unique() );
    assertEquals( "col1", joinColumns[1].name() );
    assertEquals( "col2", joinColumns[1].referencedColumnName() );
    assertEquals( "table2", joinColumns[1].table() );
    assertEquals( "int", joinColumns[1].columnDefinition() );
    assertFalse( joinColumns[1].insertable() );
    assertFalse( joinColumns[1].updatable() );
    assertFalse( joinColumns[1].nullable() );
    assertTrue( joinColumns[1].unique() );

    // InverseJoinColumns
    JoinColumn[] inverseJoinColumns = joinTableAnno.inverseJoinColumns();
    assertEquals( 2, inverseJoinColumns.length );
    assertEquals( "", inverseJoinColumns[0].name() );
    assertEquals( "", inverseJoinColumns[0].referencedColumnName() );
    assertEquals( "", inverseJoinColumns[0].table() );
    assertEquals( "", inverseJoinColumns[0].columnDefinition() );
    assertTrue( inverseJoinColumns[0].insertable() );
    assertTrue( inverseJoinColumns[0].updatable() );
    assertTrue( inverseJoinColumns[0].nullable() );
    assertFalse( inverseJoinColumns[0].unique() );
    assertEquals( "col3", inverseJoinColumns[1].name() );
    assertEquals( "col4", inverseJoinColumns[1].referencedColumnName() );
    assertEquals( "table3", inverseJoinColumns[1].table() );
    assertEquals( "int", inverseJoinColumns[1].columnDefinition() );
    assertFalse( inverseJoinColumns[1].insertable() );
    assertFalse( inverseJoinColumns[1].updatable() );
    assertFalse( inverseJoinColumns[1].nullable() );
    assertTrue( inverseJoinColumns[1].unique() );

    // UniqueConstraints
    UniqueConstraint[] uniqueConstraints = joinTableAnno
        .uniqueConstraints();
    assertEquals( 2, uniqueConstraints.length );
    assertEquals( "", uniqueConstraints[0].name() );
    assertEquals( 1, uniqueConstraints[0].columnNames().length );
    assertEquals( "col5", uniqueConstraints[0].columnNames()[0] );
View Full Code Here

        AssociationOverride... assocs) {
        FieldMapping sup;
        JoinColumn[] scols;
        int unique;
        List<Column> jcols;
        JoinTable joinTbl;
        for (AssociationOverride assoc : assocs) {
            if (StringUtils.isEmpty(assoc.name()))
                throw new MetaDataException(_loc.get("no-override-name", cm));
            sup = (FieldMapping) cm.getDefinedSuperclassField(assoc.name());
            if (sup == null)
View Full Code Here

        FieldMapping efm;
        JoinColumn[] ecols;
        int unique;
        List<Column> jcols;
        JoinTable joinTbl;
        for (AssociationOverride assoc : assocs) {
            efm = getEmbeddedFieldMapping(fm, assoc.name());
            if (efm == null)
                throw new MetaDataException(_loc.get("embed-override-name",
                    fm, assoc.name()));
View Full Code Here

        AssociationOverride... assocs) {
        FieldMapping sup;
        JoinColumn[] scols;
        int unique;
        List<Column> jcols;
        JoinTable joinTbl;
        for (AssociationOverride assoc : assocs) {
            if (StringUtils.isEmpty(assoc.name()))
                throw new MetaDataException(_loc.get("no-override-name", cm));
            sup = (FieldMapping) cm.getDefinedSuperclassField(assoc.name());
            if (sup == null)
View Full Code Here

        FieldMapping efm;
        JoinColumn[] ecols;
        int unique;
        List<Column> jcols;
        JoinTable joinTbl;
        for (AssociationOverride assoc : assocs) {
            efm = getEmbeddedFieldMapping(fm, assoc.name());
            if (efm == null)
                throw new MetaDataException(_loc.get("embed-override-name",
                    fm, assoc.name()));
View Full Code Here

        Cascade hibernateCascade = property.getAnnotation( Cascade.class );
        NotFound notFound = property.getAnnotation( NotFound.class );
        boolean ignoreNotFound = notFound != null && notFound.action().equals( NotFoundAction.IGNORE );
        OnDelete onDeleteAnn = property.getAnnotation( OnDelete.class );
        boolean onDeleteCascade = onDeleteAnn != null && OnDeleteAction.CASCADE.equals( onDeleteAnn.action() );
        JoinTable assocTable = propertyHolder.getJoinTable( property );
        if ( assocTable != null ) {
          Join join = propertyHolder.addJoin( assocTable, false );
          for ( Ejb3JoinColumn joinColumn : joinColumns ) {
            joinColumn.setSecondaryTableName( join.getTable().getName() );
          }
        }
        final boolean mandatory = !ann.optional() || forcePersist;
        bindManyToOne(
            getCascadeStrategy( ann.cascade(), hibernateCascade, false, forcePersist ),
            joinColumns,
            !mandatory,
            ignoreNotFound, onDeleteCascade,
            ToOneBinder.getTargetEntity( inferredData, mappings ),
            propertyHolder,
            inferredData, false, isIdentifierMapper,
            inSecondPass, propertyBinder, mappings
        );
      }
      else if ( property.isAnnotationPresent( OneToOne.class ) ) {
        OneToOne ann = property.getAnnotation( OneToOne.class );

        //check validity
        if ( property.isAnnotationPresent( Column.class )
            || property.isAnnotationPresent( Columns.class ) ) {
          throw new AnnotationException(
              "@Column(s) not allowed on a @OneToOne property: "
                  + BinderHelper.getPath( propertyHolder, inferredData )
          );
        }

        //FIXME support a proper PKJCs
        boolean trueOneToOne = property.isAnnotationPresent( PrimaryKeyJoinColumn.class )
            || property.isAnnotationPresent( PrimaryKeyJoinColumns.class );
        Cascade hibernateCascade = property.getAnnotation( Cascade.class );
        NotFound notFound = property.getAnnotation( NotFound.class );
        boolean ignoreNotFound = notFound != null && notFound.action().equals( NotFoundAction.IGNORE );
        OnDelete onDeleteAnn = property.getAnnotation( OnDelete.class );
        boolean onDeleteCascade = onDeleteAnn != null && OnDeleteAction.CASCADE.equals( onDeleteAnn.action() );
        JoinTable assocTable = propertyHolder.getJoinTable( property );
        if ( assocTable != null ) {
          Join join = propertyHolder.addJoin( assocTable, false );
          for ( Ejb3JoinColumn joinColumn : joinColumns ) {
            joinColumn.setSecondaryTableName( join.getTable().getName() );
          }
        }
        //MapsId means the columns belong to the pk => not null
        //@PKJC must be constrained
        final boolean mandatory = !ann.optional() || forcePersist || trueOneToOne;
        bindOneToOne(
            getCascadeStrategy( ann.cascade(), hibernateCascade, ann.orphanRemoval(), forcePersist ),
            joinColumns,
            !mandatory,
            getFetchMode( ann.fetch() ),
            ignoreNotFound, onDeleteCascade,
            ToOneBinder.getTargetEntity( inferredData, mappings ),
            propertyHolder,
            inferredData,
            ann.mappedBy(),
            trueOneToOne,
            isIdentifierMapper,
            inSecondPass,
            propertyBinder,
            mappings
        );
      }
      else if ( property.isAnnotationPresent( org.hibernate.annotations.Any.class ) ) {

        //check validity
        if ( property.isAnnotationPresent( Column.class )
            || property.isAnnotationPresent( Columns.class ) ) {
          throw new AnnotationException(
              "@Column(s) not allowed on a @Any property: "
                  + BinderHelper.getPath( propertyHolder, inferredData )
          );
        }

        Cascade hibernateCascade = property.getAnnotation( Cascade.class );
        OnDelete onDeleteAnn = property.getAnnotation( OnDelete.class );
        boolean onDeleteCascade = onDeleteAnn != null && OnDeleteAction.CASCADE.equals( onDeleteAnn.action() );
        JoinTable assocTable = propertyHolder.getJoinTable( property );
        if ( assocTable != null ) {
          Join join = propertyHolder.addJoin( assocTable, false );
          for ( Ejb3JoinColumn joinColumn : joinColumns ) {
            joinColumn.setSecondaryTableName( join.getTable().getName() );
          }
View Full Code Here

TOP

Related Classes of javax.persistence.JoinTable

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.