Definir tipos atributos

4 respostas
vanzella

Como defino os tipos de atributos na anotação de hibernate.

Tipo:
@Entity
@Table (name="NATUREZA")
public class NaturezaBean{
    
    @Id
    @Column(name="CODIGO" <Aqui eu definiria o tipo do atributo, mas como?> )
    private String codigo;
    
    @Column(name="DESCRICAO")
    private String descricao;

4 Respostas

casmeiron
vanzella:
Como defino os tipos de atributos na anotação de hibernate. Tipo:
@Entity
@Table (name="NATUREZA")
public class NaturezaBean{
    
    @Id
    @Column(name="CODIGO" <Aqui eu definiria o tipo do atributo, mas como?> )
    private String codigo;
    
    @Column(name="DESCRICAO")
    private String descricao;

Não entendi que tipo de atributo você deseja definir. Pois você já definiu o tipo do atributo codigo, que é String.

Se você tá querendo definir algo como "varchar2", isso não tem como, pois como o hibernate é uma camada de persistência abstrata, pode funcionar emcima de qualquer banco de dados, ele define qual é o melhor tipo pra coluna de acordo com o banco.

vanzella

Boa tarde casmeiron, o meu problema na verdade é o seguinte:

To com uma tabela do banco com uma chave primaria que é do tipo char(3),
Usei somente @Id, mas ta dando conflito com o banco, nunca encontra o valor.

Deduso que o hibernate esta indentificando a chave primaria como um tipo numerico, sendo assim o problema
"A " é diferente de “A”.

casmeiron

Boa Noite vanzella.

Nós utilizamos sempre tipo numérico para chave, isso facilita na hora de fazer pesquisas, pode usar Integer e/ou Long.

Para ver o que o hibernate está fazendo, utilize algum banco de dados como mysql, oracle, após inserir os registros, dê uma olhada no banco o que virou.

O hibernate tem o mapeamento para todos os bancos de dados comerciais, então provavelmente é erro no códgo dele. Mas existem bugs…

Faça esse teste do select no próprio banco.

Espero ter ajudado, até mais.

vanzella

Bom dia casmeiron, obrigado pela ajuda.
As vezes nos deparamos com algumas criaturas, rsrs no meu caso me deparei com esse banco, com chaves primarias do tipo char, não posso mudar pois o sistema já esta rodando.

Estou usando o hibernate somente pra consultar, nada a mais, bou tentar mapear de uma forma que consiga consultar.

Valeu, obrigado pela atenção.

Criado 31 de janeiro de 2007
Ultima resposta 1 de fev. de 2007
Respostas 4
Participantes 2