Nesse artigo veremos as anotações disponíves no Veloster Framework.
Conjunto de Anotações
O Veloster possuí um conjunto de anotações usadas para seus mapeamento e válidações. Agora veremos as anotações usadas para a configuração do mapeamento de entidades:
| Annotation | Element Type | Application |
|---|---|---|
| @Table | TYPE | Indica que a classe é um entidade persistente. |
| @Column | FIELD | Indica que o campo da classe é persistente. |
| @Id | FIELD | Indica que o campo da classe é o identificador. |
| @JoinColumn | FIELD | Indica que o campo da classe é uma ligação com outra classe persistente (foreign key). |
| @Enumerated | FIELD | Indica que o campo é um enum. |
| @DefaultValue | FIELD | Indica que o campo tem um valor default que deve ser gerado em tempo de execução, implementando a interface br.com.mobilemind.veloster.sql.ColumnDefaultValueGenarator. |
Uso das anotações
A seguir as regras do uso das anotações:
@Table
Obrigatório para que uma classe persistente possa ser manipulada.
| Attribute | Default | Description |
|---|---|---|
| name | Nome da própria classe | Nome da tabela no banco de dados |
@Column
Obrigatório para que qualquer campo possa ser manipulado.
| Attribute | Default | Description |
|---|---|---|
| name | Nome do próprio atributo | Nome da tabela no banco de dados |
| nullable | false | Se aceita nulo |
| defaultValue | Vazio | Valor default para a criação do campo |
| lengtd | 100 | Tamanho do campo. Aplicado para String. |
| ignoreInsert | false | Se a operação de insert deve ignorar esse atributo. |
| ignoreUpdate | false | Se a operação de update deve ignorar esse atributo. |
@DefaultValue
Deve ser usada quando um atributo precise gerar um valor default de criação em tempo de execução.
| Attribute | Default | Description |
|---|---|---|
| generator | - | Tipo da classe que implementa ColumnDefaultValueGenarator. |
@Enumerated
Usada para enuns.
| Attribute | Default | Description |
|---|---|---|
| enumType | EnumType.ORDINAL | Se o valor do enum deve ser persistido como String ou Integer. |
@Id
Identificador da coluna que será chave primária.
| Attribute | Default | Description |
|---|---|---|
| ignoreInsert | true | Se o valor inserido deve ser ignorado (campo auto-incremento no banco de dados). |
@JoinColumn
Usado quando o atributo é do tipo de outra classe persistente (chave estrangeira).
| Attribute | Default | Description |
|---|---|---|
| foreignKeyName | Vazio | Nome da chave estrangeira que será gerada. |
| cascadeOnInsert | false | Se valores do atributo devem ser inseridos na manipulação da entidade principal. |
| cascadeOnUpdate | false | Se valores do atributo devem ser alterados na manipulação da entidade principal. |