RESOLVIDO!! Setar Valor Default Hibernate Annotations  XML
Índice dos Fóruns » Persistência: Hibernate, JPA, JDBC e outros
Autor Mensagem
diogo soares
Virtual Machine Man

Membro desde: 17/06/2008 12:46:19
Mensagens: 585
Localização: RS
Offline

Galera estou com uma pequena duvida, preciso mapear uma coluna sendo que ao ser gerada no banco ela tem que ter seu valor default = 0

Meu atributo é esse


preciso que ele seja criado assim


Tem como fazer isso, mepeando o atributo?

This message was edited 1 time. Last update was at 08/04/2009 09:05:34


Sigam-me no Twitter.: @diogoprosoft
Meu Skype.: diogoprosoft
Meu msn.: diogoprosoft@gmail.com
Meu Gtalk.: diogoprosoft@gmail.com
Meu Facebook.: diogoprosoft@gmail.com
[Email]
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

http://www.hibernate.org/hib_docs/annotations/reference/en/html_single/ wrote:
@Column(
name="columnName"; (1)
boolean unique() default false; (2)
boolean nullable() default true; (3)
boolean insertable() default true; (4)
boolean updatable() default true; (5)
String columnDefinition() default ""; (6)
String table() default ""; (7)
int length() default 255; (8)
int precision() default 0; // decimal precision (9)
int scale() default 0; // decimal scale


Pelo que vimos, é possível modificar o nome da coluna (como você já fez), o seu caráter nullable (no seu caso você quer NOT NULL, ou seja, teria de usar nullable=false ), mas não dá para especificar o default; talvez você tenha de experimentar com o parâmetro "columnDefinition", ou seja, talvez você tenha de usar algo como columnDefinition="real NOT NULL DEFAULT 0" por causa desse default que você não pode incluir como propriedade da anotação. De qualquer maneira, leia em http://blog.tremend.ro/2007/08/27/hibernate-annotations-default-value/ como é que ele usou "columnDefinition".

[WWW]
ebarros
JavaGuru

Membro desde: 16/01/2008 10:08:54
Mensagens: 230
Offline



Mais detalhes:

http://www.hibernate.org/hib_docs/annotations/reference/en/html_single/

This message was edited 2 times. Last update was at 08/04/2009 08:57:33


Everton Barros
Fil 4:13 ?Tudo posso naquele que me fortalece?
Javafree
diogo soares
Virtual Machine Man

Membro desde: 17/06/2008 12:46:19
Mensagens: 585
Localização: RS
Offline

Valeu galera, muito obrigado pela ajuda

ficou assim


Sigam-me no Twitter.: @diogoprosoft
Meu Skype.: diogoprosoft
Meu msn.: diogoprosoft@gmail.com
Meu Gtalk.: diogoprosoft@gmail.com
Meu Facebook.: diogoprosoft@gmail.com
[Email]
belatra
What is classpath?
[Avatar]

Membro desde: 05/05/2006 15:21:18
Mensagens: 5
Offline

Bom pessoal, depois de quebrar a cabeça quase meio dia.... achei a solucao para Annotation do Hibernate na inserção de valores Default.


@Column(name = "DELETE_FLAG", columnDefinition = "NUMBER(2) default 0", insertable = false, updatable = true)
private Long deleteFlag ;

A grande mágica esta no: "insertable = false" pq ele nao ira passar esse atributo para o INSERT, logo o BD coloca o valor default:NUMBER(2) default 0"

depois o parametro: "updatable = true" é para poder mudar o valor do Delete_flag para "1" no futuro, caso necessario.

Espero ter ajudado
[Email] [MSN]
 
Índice dos Fóruns » Persistência: Hibernate, JPA, JDBC e outros
Ir para:   
Powered by JForum 2.1.8 © JForum Team