SóProvas


ID
1202893
Banca
FCC
Órgão
TRT - 15ª Região (SP)
Ano
2013
Provas
Disciplina
Programação
Assuntos

Utilizando-se o Hibernate é possível incluir na classe de entidade do banco de dados um conjunto de anotações para fazer o mapeamento dos objetos da classe para uma tabela específica do banco de dados relacional. Algumas destas anotações são destinadas a fazer o mapeamento de atributos da classe para campos da tabela.

As anotações para indicar que um atributo da classe refere-se a um campo da tabela que é primary key e not null são, respectivamente,

Alternativas
Comentários
  • Por padrão, a anotação @Id determinará automaticamente a estratégia de geração da chave primária mais apropriada, mas podemos sobrescrever isto aplicando a anotação @GeneratedValue. Esta anotação exige um par de atributos: strategy e generator. O atributo strategy deve ser um valor da enumeração javax.persistence.GeneratorType. Se não especificarmos o tipo do gerador, o default será AUTO. Existem quatro diferentes tipo de geradores de chave-primária no GeneratorType, são eles:

    >AUTO, onde o Hibernate decide o tipo do gerador a usar, baseado no suporte da base de dados para geração de chave-primárias;
    >IDENTITY, onde a base de dados é responsável por determinar a próxima chave-primária;
    >SEQUENCE, onde algumas bases de dados suportam um tipo de coluna SEQUENCE;
    >TABLE, na qual este tipo mantém uma tabela separada com os valores das chaves primárias.
    >>>A anotação @Basic requer dois atributos opcionais. O primeiro atributo é o optional e requer um valor boleano, o padrão é true. Se esse valor for setado para false tem-se que a coluna será do tipo NOT NULL quando criarmos um esquema. O segundo atributo é o fetch que tem como valor um membro de uma enumeração. Por default o valor é EAGER, mas também podemos setar para LAZY permitindo carregar o valor apenas quando acessarmos ele. O uso de LAZY é mais indicado quando um grande objeto serializável é mapeado como um tipo básico e o seu tempo de recuperação é significante.

    Exemplo:
    @Basic 
    @Column(nullable=false, length=100) 
    String tituloMensagem;
     @Basic 
    @Column(nullable=false, length=5000) 
    String textoMensagem;