Pessoal tenho um campo calculável na minha aplicacao, Qual anotação é usada para campo calculável no JPA?
Obrigado
Campo calculável vc diz um campo que não é persistido?
@Transient
Boa noite rogelgarcia ate onde eu conheco não existe notação especifica para isso, se o campo é persistido ele é um atributo na classe e a anotation para ele é @Column, mais como vc disse se ele é calculavel e seu valor não é persisitido então ele é uma simples variavel que calcula os valores de acordo com os parametros passados por ela vindo ou não do banco! espero que tenha ajudado! abraços…
Como o colega acima falou o que o jpa faz é relacionado a persistência no banco de dados.
Como esse campo não está no banco você usa a anotação
@Transient
private Float campo;
Se o calculo for entre colunas do banco vc pode usar formula:
@Formula("obj_length * obj_height * obj_width")
public long getObjectVolume()
[quote]Como o colega acima falou o que o jpa faz é relacionado a persistência no banco de dados.
Como esse campo não está no banco você usa a anotação [/quote]
Mas e se o campo for calculado pelo próprio banco de dados, como o tipo COMPUTED BY do Firebird?
Qual o problema que está tendo?
Salvar?
Utilize @Column(updatable=false, insertable=false)
para campos COMPUTED BY do Firebird vc tambem pode usar @Formula ou tentar mapear da forma que o AGAraujo mencionou acima.
[quote=AGAraujo]Qual o problema que está tendo?
Salvar?
Utilize @Column(updatable=false, insertable=false)
[/quote]
Obrigado sua resposta me ajudou, apesar do meu problema ser diferente.
Um campo no MS SQL SERVER estava definido como INSERT OFF.
Porém usando JPA este insistia em fazer insert no campo.
Configurei a coluna e o problema foi resolvido.
vlw