hibernate工具注解异常:列数错误

e37o9pze  于 2021-06-25  发布在  Mysql
关注(0)|答案(0)|浏览(177)

我使用hibernate工具从mysql数据库中生成了这个java类,我遇到了一个注解异常:

org.hibernate.AnnotationException: A Foreign key refering pt.sicad.model.Wfatividade from pt.sicad.model.Wfhistoricoatividade has the wrong number of column. should be 7

生成的文件是:
WFC类:

public class Wfhistoricoatividade implements java.io.Serializable {

    private WfhistoricoatividadeId id;
    private Wfatividade wfatividade;
    private Wfworkflow wfworkflow;

    public Wfhistoricoatividade() {
    }

    public Wfhistoricoatividade(WfhistoricoatividadeId id, Wfatividade wfatividade, Wfworkflow wfworkflow) {
        this.id = id;
        this.wfatividade = wfatividade;
        this.wfworkflow = wfworkflow;
    }

    @EmbeddedId

    @AttributeOverrides({
        @AttributeOverride(name = "wfhistoricoatividadeId", column = @Column(name = "WFHISTORICOATIVIDADE_ID", nullable = false)),
        @AttributeOverride(name = "wfworkflowId", column = @Column(name = "WFWORKFLOW_ID", nullable = false)),
        @AttributeOverride(name = "estadoInicialId", column = @Column(name = "ESTADO_INICIAL_ID", nullable = false)),
        @AttributeOverride(name = "estadoFinalId", column = @Column(name = "ESTADO_FINAL_ID", nullable = false)),
        @AttributeOverride(name = "dataCriacao", column = @Column(name = "DATA_CRIACAO", length = 19)),
        @AttributeOverride(name = "userCriador", column = @Column(name = "USER_CRIADOR")),
        @AttributeOverride(name = "atividadeId", column = @Column(name = "ATIVIDADE_ID", nullable = false)) })

    public WfhistoricoatividadeId getId() {
        return this.id;
    }

    public void setId(WfhistoricoatividadeId id) {
        this.id = id;
    }

    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "ATIVIDADE_ID", nullable = false, insertable = false, updatable = false)
    public Wfatividade getWfatividade() {
        return this.wfatividade;
    }

    public void setWfatividade(Wfatividade wfatividade) {
        this.wfatividade = wfatividade;
    }

    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "WFWORKFLOW_ID", nullable = false, insertable = false, updatable = false)
    public Wfworkflow getWfworkflow() {
        return this.wfworkflow;
    }

    public void setWfworkflow(Wfworkflow wfworkflow) {
        this.wfworkflow = wfworkflow;
    }

}

wfHistoricActividadeId类:

public class WfhistoricoatividadeId implements java.io.Serializable {

    private int wfhistoricoatividadeId;
    private int wfworkflowId;
    private int estadoInicialId;
    private int estadoFinalId;
    private Date dataCriacao;
    private Integer userCriador;
    private int atividadeId;

    public WfhistoricoatividadeId() {
    }

    public WfhistoricoatividadeId(int wfhistoricoatividadeId, int wfworkflowId, int estadoInicialId, int estadoFinalId,
            int atividadeId) {
        this.wfhistoricoatividadeId = wfhistoricoatividadeId;
        this.wfworkflowId = wfworkflowId;
        this.estadoInicialId = estadoInicialId;
        this.estadoFinalId = estadoFinalId;
        this.atividadeId = atividadeId;
    }

    public WfhistoricoatividadeId(int wfhistoricoatividadeId, int wfworkflowId, int estadoInicialId, int estadoFinalId,
            Date dataCriacao, Integer userCriador, int atividadeId) {
        this.wfhistoricoatividadeId = wfhistoricoatividadeId;
        this.wfworkflowId = wfworkflowId;
        this.estadoInicialId = estadoInicialId;
        this.estadoFinalId = estadoFinalId;
        this.dataCriacao = dataCriacao;
        this.userCriador = userCriador;
        this.atividadeId = atividadeId;
    }

    @Column(name = "WFHISTORICOATIVIDADE_ID", nullable = false)
    public int getWfhistoricoatividadeId() {
        return this.wfhistoricoatividadeId;
    }

    public void setWfhistoricoatividadeId(int wfhistoricoatividadeId) {
        this.wfhistoricoatividadeId = wfhistoricoatividadeId;
    }

    @Column(name = "WFWORKFLOW_ID", nullable = false)
    public int getWfworkflowId() {
        return this.wfworkflowId;
    }

    public void setWfworkflowId(int wfworkflowId) {
        this.wfworkflowId = wfworkflowId;
    }

    @Column(name = "ESTADO_INICIAL_ID", nullable = false)
    public int getEstadoInicialId() {
        return this.estadoInicialId;
    }

    public void setEstadoInicialId(int estadoInicialId) {
        this.estadoInicialId = estadoInicialId;
    }

    @Column(name = "ESTADO_FINAL_ID", nullable = false)
    public int getEstadoFinalId() {
        return this.estadoFinalId;
    }

    public void setEstadoFinalId(int estadoFinalId) {
        this.estadoFinalId = estadoFinalId;
    }

    @Column(name = "DATA_CRIACAO", length = 19)
    public Date getDataCriacao() {
        return this.dataCriacao;
    }

    public void setDataCriacao(Date dataCriacao) {
        this.dataCriacao = dataCriacao;
    }

    @Column(name = "USER_CRIADOR")
    public Integer getUserCriador() {
        return this.userCriador;
    }

    public void setUserCriador(Integer userCriador) {
        this.userCriador = userCriador;
    }

    @Column(name = "ATIVIDADE_ID", nullable = false)
    public int getAtividadeId() {
        return this.atividadeId;
    }

    public void setAtividadeId(int atividadeId) {
        this.atividadeId = atividadeId;
    }

}

wfaviidade类:

public class Wfatividade implements java.io.Serializable {

    private WfatividadeId id;
    private Wfestado wfestado;
    private Wftipo wftipo;
    private Wfworkflow wfworkflow;
    private Set<Wfhistoricoatividade> wfhistoricoatividades = new HashSet<Wfhistoricoatividade>(0);

    public Wfatividade() {
    }

    public Wfatividade(WfatividadeId id) {
        this.id = id;
    }

    public Wfatividade(WfatividadeId id, Wfestado wfestado, Wftipo wftipo, Wfworkflow wfworkflow,
            Set<Wfhistoricoatividade> wfhistoricoatividades) {
        this.id = id;
        this.wfestado = wfestado;
        this.wftipo = wftipo;
        this.wfworkflow = wfworkflow;
        this.wfhistoricoatividades = wfhistoricoatividades;
    }

    @EmbeddedId

    @AttributeOverrides({
            @AttributeOverride(name = "wfatividadeId", column = @Column(name = "WFATIVIDADE_ID", nullable = false)),
            @AttributeOverride(name = "wfworkflowId", column = @Column(name = "WFWORKFLOW_ID")),
            @AttributeOverride(name = "wftipoId", column = @Column(name = "WFTIPO_ID")),
            @AttributeOverride(name = "instanciaId", column = @Column(name = "INSTANCIA_ID")),
            @AttributeOverride(name = "estadoAtual", column = @Column(name = "ESTADO_ATUAL")),
            @AttributeOverride(name = "dataCriacao", column = @Column(name = "DATA_CRIACAO", length = 19)),
            @AttributeOverride(name = "userCriador", column = @Column(name = "USER_CRIADOR")) })
    public WfatividadeId getId() {
        return this.id;
    }

    public void setId(WfatividadeId id) {
        this.id = id;
    }

    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "ESTADO_ATUAL", insertable = false, updatable = false)
    public Wfestado getWfestado() {
        return this.wfestado;
    }

    public void setWfestado(Wfestado wfestado) {
        this.wfestado = wfestado;
    }

    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "WFTIPO_ID", insertable = false, updatable = false)
    public Wftipo getWftipo() {
        return this.wftipo;
    }

    public void setWftipo(Wftipo wftipo) {
        this.wftipo = wftipo;
    }

    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "WFWORKFLOW_ID", insertable = false, updatable = false)
    public Wfworkflow getWfworkflow() {
        return this.wfworkflow;
    }

    public void setWfworkflow(Wfworkflow wfworkflow) {
        this.wfworkflow = wfworkflow;
    }

    @OneToMany(fetch = FetchType.LAZY, mappedBy = "wfatividade")
    public Set<Wfhistoricoatividade> getWfhistoricoatividades() {
        return this.wfhistoricoatividades;
    }

    public void setWfhistoricoatividades(Set<Wfhistoricoatividade> wfhistoricoatividades) {
        this.wfhistoricoatividades = wfhistoricoatividades;
    }
}

wfaviidadeId类:

public class WfatividadeId implements java.io.Serializable {

    private int wfatividadeId;
    private Integer wfworkflowId;
    private Integer wftipoId;
    private Integer instanciaId;
    private Integer estadoAtual;
    private Date dataCriacao;
    private Integer userCriador;

    public WfatividadeId() {
    }

    public WfatividadeId(int wfatividadeId) {
        this.wfatividadeId = wfatividadeId;
    }

    public WfatividadeId(int wfatividadeId, Integer wfworkflowId, Integer wftipoId, Integer instanciaId,
            Integer estadoAtual, Date dataCriacao, Integer userCriador) {
        this.wfatividadeId = wfatividadeId;
        this.wfworkflowId = wfworkflowId;
        this.wftipoId = wftipoId;
        this.instanciaId = instanciaId;
        this.estadoAtual = estadoAtual;
        this.dataCriacao = dataCriacao;
        this.userCriador = userCriador;
    }

    @Column(name = "WFATIVIDADE_ID", nullable = false)
    public int getWfatividadeId() {
        return this.wfatividadeId;
    }

    public void setWfatividadeId(int wfatividadeId) {
        this.wfatividadeId = wfatividadeId;
    }

    @Column(name = "WFWORKFLOW_ID")
    public Integer getWfworkflowId() {
        return this.wfworkflowId;
    }

    public void setWfworkflowId(Integer wfworkflowId) {
        this.wfworkflowId = wfworkflowId;
    }

    @Column(name = "WFTIPO_ID")
    public Integer getWftipoId() {
        return this.wftipoId;
    }

    public void setWftipoId(Integer wftipoId) {
        this.wftipoId = wftipoId;
    }

    @Column(name = "INSTANCIA_ID")
    public Integer getInstanciaId() {
        return this.instanciaId;
    }

    public void setInstanciaId(Integer instanciaId) {
        this.instanciaId = instanciaId;
    }

    @Column(name = "ESTADO_ATUAL")
    public Integer getEstadoAtual() {
        return this.estadoAtual;
    }

    public void setEstadoAtual(Integer estadoAtual) {
        this.estadoAtual = estadoAtual;
    }

    @Column(name = "DATA_CRIACAO", length = 19)
    public Date getDataCriacao() {
        return this.dataCriacao;
    }

    public void setDataCriacao(Date dataCriacao) {
        this.dataCriacao = dataCriacao;
    }

    @Column(name = "USER_CRIADOR")
    public Integer getUserCriador() {
        return this.userCriador;
    }

    public void setUserCriador(Integer userCriador) {
        this.userCriador = userCriador;
    }
}

可能是什么?我已经生成了所有的7列,并且我在其他2个类之间有其他类似的关系,没有这个异常。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题