Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JPA/Hibernate@embeddedable和@EmbeddedId-不必要的列_Hibernate_Jpa - Fatal编程技术网

JPA/Hibernate@embeddedable和@EmbeddedId-不必要的列

JPA/Hibernate@embeddedable和@EmbeddedId-不必要的列,hibernate,jpa,Hibernate,Jpa,伙计们! 我正在使用JPA/Hibernate创建带有复合PKs的JoinTable。除了数据库中不必要的列之外,所有内容都可以使用 package com.exhibitors.model; import java.io.Serializable; import javax.persistence.AssociationOverride; import javax.persistence.AssociationOverrides; import javax.persistence.Colu

伙计们! 我正在使用JPA/Hibernate创建带有复合PKs的JoinTable。除了数据库中不必要的列之外,所有内容都可以使用

package com.exhibitors.model;

import java.io.Serializable;

import javax.persistence.AssociationOverride;
import javax.persistence.AssociationOverrides;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.Table;

import org.hibernate.annotations.Type;
import org.joda.time.DateTime;

@Entity
@Table(name = "distributor_samples")
@AssociationOverrides({
    @AssociationOverride(name="samplesPK.distributor", joinColumns=@JoinColumn(name="distributor_id")),
    @AssociationOverride(name="samplesPK.tile", joinColumns=@JoinColumn(name="tile_id"))
})
public class Samples implements Serializable{

    @EmbeddedId
    SamplesPK samplesPK;

    @Column(name="created_date", nullable = false, updatable = false)
    @Type(type = "org.jadira.usertype.dateandtime.joda.PersistentDateTime")
    private DateTime createdDate = new DateTime();



    public DateTime getCreatedDate() {
        return createdDate;
    }

    public void setCreatedDate(DateTime createdDate) {
        this.createdDate = createdDate;
    }

    public SamplesPK getSamplesPK() {
        return samplesPK;
    }

    public void setSamplesPK(SamplesPK samplesPK) {
        this.samplesPK = samplesPK;
    }

}
还有那个能说会道的人

package com.exhibitors.model;

import java.io.Serializable;

import javax.persistence.Embeddable;
import javax.persistence.ManyToOne;


@Embeddable
public class SamplesPK implements Serializable{

    @ManyToOne
    private Distributor distributor;

    @ManyToOne
    private Tile tile;

    public Distributor getDistributor() {
        return distributor;
    }

    public void setDistributor(Distributor distributor) {
        this.distributor = distributor;
    }

    public Tile getTile() {
        return tile;
    }

    public void setTile(Tile tile) {
        this.tile = tile;
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((distributor == null) ? 0 : distributor.hashCode());
        result = prime * result + ((tile == null) ? 0 : tile.hashCode());
        return result;
    }

    @Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;
        if (getClass() != obj.getClass())
            return false;
        SamplesPK other = (SamplesPK) obj;
        if (distributor == null) {
            if (other.distributor != null)
                return false;
        } else if (!distributor.equals(other.distributor))
            return false;
        if (tile == null) {
            if (other.tile != null)
                return false;
        } else if (!tile.equals(other.tile))
            return false;
        return true;
    }

}
My My table distributor\u samples包含一个额外的列,即samples\u id 每次我删除列时,在重新启动后,休眠状态下再次创建它。 本专栏来自何处,如何删除?