hibernate adicionar tipo numa join column

24/03/2020

3

Boa noite, galera!

Estou com um problema em criar tabelas num banco mysql utilizando hibernate.hbm2ddl.auto

minhas entidades:
@Entity
@Table(name="cliente")
public class Cliente implements Serializable {

    private static final long serialVersionUID = 6193898636018045289L;

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name="codigo_cli")
    private Long codigoCli;

    @Column(name="email_cli", nullable = true)
    private String email;

    @Column(name="nome_cli", nullable = true)
    private String nome;

    @Column(name="cep_cli" , nullable = false)
    private String cep;

    @Column(name="cel_cli", nullable = true)
    private String celular;

    @Column(name="senha_cli", nullable = true)
    private String senha;

    @JoinColumn(name = "cod_bairro_cli",referencedColumnName="id")
    @Column(name="cod_bairro_cli")
    private Bairro bairro;

    @Column(name = "numero", nullable = false)
    private Integer numero;

    public Cliente() {
        super();
    }

    public Long getCodigoCli() {
        return codigoCli;
    }

    public void setCodigoCli(Long codigoCli) {
        this.codigoCli = codigoCli;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getCep() {
        return cep;
    }

    public void setCep(String cep) {
        this.cep = cep;
    }

    public String getCelular() {
        return celular;
    }

    public void setCelular(String celular) {
        this.celular = celular;
    }

    public String getSenha() {
        return senha;
    }

    public void setSenha(String senha) {
        this.senha = senha;
    }

    public Bairro getBairro() {
        return bairro;
    }

    public void setBairro(Bairro bairro) {
        this.bairro = bairro;
    }

    public Integer getNumero() {
        return numero;
    }

    public void setNumero(Integer numero) {
        this.numero = numero;
    }    





@Entity
@Table(name = "bairro")
public class Bairro implements Serializable{

    private static final long serialVersionUID = 6437676189864185368L;

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id")
    private Integer id;

    @JoinColumn(name = "cod_municipio")
    @Column(name = "cod_municipio")
    private Municipio codMunicipio;

    @Column(name = "descricao", nullable = false)
    private String descricao;

    @Column(name = "cod_bairro", nullable = true)
    private Integer codBairro;


    public Bairro() {
        super();
    }

    public Integer getId() {
        return id;
    }

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

    public Municipio getCodMunicipio() {
        return codMunicipio;
    }

    public void setCodMunicipio(Municipio codMunicipio) {
        this.codMunicipio = codMunicipio;
    }

    public String getDescricao() {
        return descricao;
    }

    public void setDescricao(String descricao) {
        this.descricao = descricao;
    }

    public Integer getCodBairro() {
        return codBairro;
    }

    public void setCodBairro(Integer codBairro) {
        this.codBairro = codBairro;
    }


Porém ao gerar as tabelas o cod_bairro_cli que é foreign key aparece com o tipo tinyBlob, porém a pk id do bairro, aparece como integer, como consigo configurar o cod_bairro_cli para integer?

Hibernate:

create table bairro (
id integer not null auto_increment,
cod_bairro integer,
cod_municipio tinyblob,
descricao varchar(255) not null,
primary key (id)
) engine=InnoDB
Hibernate:

create table cliente (
codigo_cli bigint not null auto_increment,
cod_bairro_cli tinyblob,
cel_cli varchar(255),
cep_cli varchar(255) not null,
email_cli varchar(255),
nome_cli varchar(255),
numero integer not null,
senha_cli varchar(255),
primary key (codigo_cli)
) engine=InnoDB]
Grato,
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar