Java 类javax.persistence.JoinColumn 实例源码

项目:lams    文件:AbstractPropertyHolder.java   
private void buildHierarchyColumnOverride(XClass element) {
    XClass current = element;
    Map<String, Column[]> columnOverride = new HashMap<String, Column[]>();
    Map<String, JoinColumn[]> joinColumnOverride = new HashMap<String, JoinColumn[]>();
    Map<String, JoinTable> joinTableOverride = new HashMap<String, JoinTable>();
    while ( current != null && !mappings.getReflectionManager().toXClass( Object.class ).equals( current ) ) {
        if ( current.isAnnotationPresent( Entity.class ) || current.isAnnotationPresent( MappedSuperclass.class )
                || current.isAnnotationPresent( Embeddable.class ) ) {
            //FIXME is embeddable override?
            Map<String, Column[]> currentOverride = buildColumnOverride( current, getPath() );
            Map<String, JoinColumn[]> currentJoinOverride = buildJoinColumnOverride( current, getPath() );
            Map<String, JoinTable> currentJoinTableOverride = buildJoinTableOverride( current, getPath() );
            currentOverride.putAll( columnOverride ); //subclasses have precedence over superclasses
            currentJoinOverride.putAll( joinColumnOverride ); //subclasses have precedence over superclasses
            currentJoinTableOverride.putAll( joinTableOverride ); //subclasses have precedence over superclasses
            columnOverride = currentOverride;
            joinColumnOverride = currentJoinOverride;
            joinTableOverride = currentJoinTableOverride;
        }
        current = current.getSuperclass();
    }

    holderColumnOverride = columnOverride.size() > 0 ? columnOverride : null;
    holderJoinColumnOverride = joinColumnOverride.size() > 0 ? joinColumnOverride : null;
    holderJoinTableOverride = joinTableOverride.size() > 0 ? joinTableOverride : null;
}
项目:lams    文件:JPAOverriddenAnnotationReader.java   
private void getCollectionTable(List<Annotation> annotationList, Element element, XMLContext.Default defaults) {
    Element subelement = element != null ? element.element( "collection-table" ) : null;
    if ( subelement != null ) {
        AnnotationDescriptor annotation = new AnnotationDescriptor( CollectionTable.class );
        copyStringAttribute( annotation, subelement, "name", false );
        copyStringAttribute( annotation, subelement, "catalog", false );
        if ( StringHelper.isNotEmpty( defaults.getCatalog() )
                && StringHelper.isEmpty( (String) annotation.valueOf( "catalog" ) ) ) {
            annotation.setValue( "catalog", defaults.getCatalog() );
        }
        copyStringAttribute( annotation, subelement, "schema", false );
        if ( StringHelper.isNotEmpty( defaults.getSchema() )
                && StringHelper.isEmpty( (String) annotation.valueOf( "schema" ) ) ) {
            annotation.setValue( "schema", defaults.getSchema() );
        }
        JoinColumn[] joinColumns = getJoinColumns( subelement, false );
        if ( joinColumns.length > 0 ) {
            annotation.setValue( "joinColumns", joinColumns );
        }
        buildUniqueConstraints( annotation, subelement );
        buildIndex( annotation, subelement );
        annotationList.add( AnnotationFactory.create( annotation ) );
    }
}
项目:lams    文件:AbstractPropertyHolder.java   
/**
 * Get column overriding, property first, then parent, then holder
 */
private JoinColumn[] getExactOverriddenJoinColumn(String propertyName) {
    JoinColumn[] override = null;
    if ( parent != null ) {
        override = parent.getExactOverriddenJoinColumn( propertyName );
    }
    if ( override == null && currentPropertyJoinColumnOverride != null ) {
        override = currentPropertyJoinColumnOverride.get( propertyName );
    }
    if ( override == null && holderJoinColumnOverride != null ) {
        override = holderJoinColumnOverride.get( propertyName );
    }
    return override;
}
项目:lams    文件:Ejb3JoinColumn.java   
public static Ejb3JoinColumn[] buildJoinColumns(
        JoinColumn[] anns,
        String mappedBy,
        Map<String, Join> joins,
        PropertyHolder propertyHolder,
        String propertyName,
        Mappings mappings) {
    return buildJoinColumnsWithDefaultColumnSuffix(
            anns, mappedBy, joins, propertyHolder, propertyName, "", mappings
    );
}
项目:tinyshop8    文件:GoodsType8JPA.java   
@ManyToOne(targetEntity = GoodsType8JPA.class, cascade = ALL,
          fetch = EAGER)
@JoinColumn(name = "parent_id", foreignKey =
@ForeignKey(name = "fk_parent"))
public GoodsType8JPA getParentType()
{
    return parentType;
}
项目:financisto1-holo    文件:EntityManager.java   
private static EntityDefinition parseDefinition(Class<?> clazz) {
    if (!clazz.isAnnotationPresent(Entity.class)) {
        throw new IllegalArgumentException("Class "+clazz+" is not an @Entity");
    }
    EntityDefinition.Builder edb = new EntityDefinition.Builder(clazz);
    try {
        Constructor<?> constructor = clazz.getConstructor();
        edb.withConstructor(constructor);
    } catch (Exception e) {
        throw new IllegalArgumentException("Entity must have an empty constructor");
    }       
    if (clazz.isAnnotationPresent(Table.class)) {
        Table tableAnnotation = clazz.getAnnotation(Table.class);
        edb.withTable(tableAnnotation.name());
    }
    Field[] fields = clazz.getFields();
    if (fields != null) {
        int index = 0;
        for (Field f : fields) {
            if ((f.getModifiers() & Modifier.STATIC) == 0) {
                if (f.isAnnotationPresent(Id.class)) {
                    edb.withIdField(parseField(f));
                } else {
                    if (f.isAnnotationPresent(Transient.class)) {
                        continue;
                    } else if (f.isAnnotationPresent(JoinColumn.class)) {
                        JoinColumn c = f.getAnnotation(JoinColumn.class);
                        edb.withField(FieldInfo.entity(index++, f, c.name(), c.required()));
                    } else {
                        edb.withField(parseField(f));                           
                    }                       
                }
            }
        }
    }
    return edb.create();
}
项目:lams    文件:JPAOverriddenAnnotationReader.java   
private void buildJoinColumns(List<Annotation> annotationList, Element element) {
    JoinColumn[] joinColumns = getJoinColumns( element, false );
    if ( joinColumns.length > 0 ) {
        AnnotationDescriptor ad = new AnnotationDescriptor( JoinColumns.class );
        ad.setValue( "value", joinColumns );
        annotationList.add( AnnotationFactory.create( ad ) );
    }
}
项目:aws-photosharing-example    文件:User.java   
@XmlTransient
 @LazyCollection(LazyCollectionOption.EXTRA)
 @ManyToMany(fetch=FetchType.LAZY, cascade=CascadeType.ALL)
 @JoinTable(name = "role_mappings", joinColumns = { 
@JoinColumn(name = "user_id", nullable = false, updatable = false) }, 
inverseJoinColumns = { @JoinColumn(name = "role", 
        nullable = false, updatable = false) })
 public List<Role> getRoles() {return _roles;}
项目:tianti    文件:User.java   
@ManyToMany(fetch = FetchType.LAZY)
@JoinTable(name = "org_user_role_rel", 
        joinColumns = {@JoinColumn(name = "user_id")}, 
        inverseJoinColumns = {@JoinColumn(name = "role_id")})
@Where(clause="delete_flag=0")
@OrderBy("no")
public Set<Role> getRoles() {
    return roles;
}
项目:Equella    文件:LanguageString.java   
@JoinColumn(nullable = false)
@ManyToOne(fetch = FetchType.LAZY)
@Index(name = "bundleIndex")
public LanguageBundle getBundle()
{
    return bundle;
}
项目:tinyshop8    文件:GoodsType8JPA.java   
@OneToMany(targetEntity = Goods8JPA.class, cascade = ALL,
          fetch = EAGER)
@JoinColumn(name = "join_goods_type_m2o", foreignKey =
@ForeignKey(name = "fk_goods_type_m2o"))
@JoinTable(name = "jpa_goods_type_set", foreignKey =
@ForeignKey(name = "fk_jpa_goods_type_set"))
public Set<Goods8JPA> getGoods8JPASet()
{
    return goods8JPASet;
}
项目:oasp-tutorial-sources    文件:VisitorEntity.java   
/**
 * @return code
 */
@OneToOne(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
@JoinColumn(name = "idCode")
public AccessCodeEntity getCode() {

  return this.code;
}
项目:sbc-qsystem    文件:QCustomer.java   
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "service_id")
public QService getService() {
    return service;
}
项目:lemon    文件:SendmailAttachment.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "TEMPLATE_ID")
public SendmailTemplate getSendmailTemplate() {
    return this.sendmailTemplate;
}
项目:GitHub    文件:OrderDetail.java   
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="productCode", nullable=false, insertable=false, updatable=false)
@JsonBackReference("order-product")
public Product getProduct() {
    return this.product;
}
项目:lemon    文件:TaskLog.java   
/** @return 外键,任务. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "TASK_ID")
public TaskInfo getTaskInfo() {
    return this.taskInfo;
}
项目:DocIT    文件:Employee.java   
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="did", nullable=false)
public Department getDepartment() {
    return this.department;
}
项目:lemon    文件:CmsCatalog.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "SITE_ID")
public CmsSite getCmsSite() {
    return this.cmsSite;
}
项目:lemon    文件:ReportDim.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "QUERY_ID")
public ReportQuery getReportQuery() {
    return this.reportQuery;
}
项目:tianti    文件:Article.java   
@ManyToOne
@JoinColumn(name = "root_column_info_id")
public ColumnInfo getRootColumnInfo() {
    return rootColumnInfo;
}
项目:lemon    文件:WhitelistService.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "PACKAGE_ID")
public WhitelistPackage getWhitelistPackage() {
    return this.whitelistPackage;
}
项目:lemon    文件:BookBorrow.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "INFO_ID")
public BookInfo getBookInfo() {
    return this.bookInfo;
}
项目:lemon    文件:WorkReportAttachment.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "INFO_ID")
public WorkReportInfo getWorkReportInfo() {
    return this.workReportInfo;
}
项目:lemon    文件:BpmConfRule.java   
/** @return 外键,配置节点. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "NODE_ID")
public BpmConfNode getBpmConfNode() {
    return this.bpmConfNode;
}
项目:tap17-muggl-javaee    文件:VendorPart.java   
@JoinColumn(name="VENDORID")
@ManyToOne
public Vendor getVendor() {
    return vendor;
}
项目:lemon    文件:BpmTaskDef.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "PROCESS_ID")
public BpmProcess getBpmProcess() {
    return this.bpmProcess;
}
项目:lemon    文件:BpmTaskDefNotice.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "TEMPLATE_ID")
public BpmMailTemplate getBpmMailTemplate() {
    return this.bpmMailTemplate;
}
项目:lemon    文件:TemplateField.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "INFO_ID")
public TemplateInfo getTemplateInfo() {
    return this.templateInfo;
}
项目:lemon    文件:BpmProcess.java   
/** @return 外键,流程配置. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "CONF_BASE_ID")
public BpmConfBase getBpmConfBase() {
    return this.bpmConfBase;
}
项目:lemon    文件:BpmConfNotice.java   
/** @return 外键,模板. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "TEMPLATE_ID")
public BpmMailTemplate getBpmMailTemplate() {
    return this.bpmMailTemplate;
}
项目:lemon    文件:BpmConfCountersign.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "NODE_ID")
public BpmConfNode getBpmConfNode() {
    return this.bpmConfNode;
}
项目:java-course    文件:BlogEntry.java   
/**
 * Returns blog entry author.
 * 
 * @return Blog entry author.
 */
@ManyToOne
@JoinColumn(nullable = false)
public BlogUser getCreator() {
    return creator;
}
项目:lemon    文件:BpmConfForm.java   
/** @return 外键,配置节点. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "NODE_ID")
public BpmConfNode getBpmConfNode() {
    return this.bpmConfNode;
}
项目:lemon    文件:BpmConfOperation.java   
/** @return 外键,配置节点. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "NODE_ID")
public BpmConfNode getBpmConfNode() {
    return this.bpmConfNode;
}
项目:lemon    文件:CmsTagArticle.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "ARTICLE_ID")
public CmsArticle getCmsArticle() {
    return this.cmsArticle;
}
项目:lemon    文件:CmsComment.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "ARTICLE_ID")
public CmsArticle getCmsArticle() {
    return this.cmsArticle;
}
项目:lemon    文件:WorkcalRule.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "TYPE_ID")
public WorkcalType getWorkcalType() {
    return this.workcalType;
}
项目:lemon    文件:PortalItem.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "INFO_ID")
public PortalInfo getPortalInfo() {
    return this.portalInfo;
}
项目:lemon    文件:PortalItem.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "WIDGET_ID")
public PortalWidget getPortalWidget() {
    return this.portalWidget;
}
项目:lemon    文件:ActivityUser.java   
/** @return null. */
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "INFO_ID")
public ActivityInfo getActivityInfo() {
    return this.activityInfo;
}