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,
Fernando