Comment generer les annotations JPa ,au niveau des attributs de la classe JAVA générer avec hibernate tool
Comment generer les annotations JPa ,au niveau des attributs de la classe JAVA générer avec hibernate tool
Il faut modifier les fichiers PojoFields.ftl et PojoPropertyAccessors.ftl qui se trouvent dans le jar hibernate-tools-version.jar
Dans pojoPropertyAccessors.ftl il faut supprimer la ligne <#include "GetPropertyAnnotation.ftl"/>
Créer le fichier Ejb3FieldAnnotation.ftl
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 <#-- // Property accessors --> <#foreach property in pojo.getAllPropertiesIterator()> <#if pojo.getMetaAttribAsBool(property, "gen-property", true)> <#if pojo.hasFieldJavaDoc(property)> /** * ${pojo.getFieldJavaDoc(property, 4)} */ </#if> <#include "GetPropertyAnnotation.ftl"/> ${pojo.getPropertyGetModifiers(property)} ${pojo.getJavaTypeName(property, jdk5)} ${pojo.getGetterSignature(property)}() { return this.${property.name}; } ${pojo.getPropertySetModifiers(property)} void set${pojo.getPropertyName(property)}(${pojo.getJavaTypeName(property, jdk5)} ${property.name}) { this.${property.name} = ${property.name}; } </#if> </#foreach>
Importer le fichier Ejb3FieldAnnotation.ftl dans PojoFiels.ftl
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 <#if ejb3> <#if pojo.hasIdentifierProperty()> <#if field.equals(clazz.identifierProperty)> ${pojo.generateAnnIdGenerator()} </#if> </#if> <#if c2h.isManyToOne(field)> <#--TODO support @OneToOne true and false--> ${pojo.generateManyToOneAnnotation(field)} <#--TODO support optional and targetEntity--> ${pojo.generateJoinColumnsAnnotation(field, cfg)} <#elseif c2h.isCollection(field)> ${pojo.generateCollectionAnnotation(field, cfg)} //TODO @OrderBy(name="columnName") <#else> ${pojo.generateBasicAnnotation(field)} ${pojo.generateAnnColumnAnnotation(field)} </#if> </#if>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <#-- // Fields --> <#foreach field in pojo.getAllPropertiesIterator()><#if pojo.getMetaAttribAsBool(field, "gen-property", true)> <#if pojo.hasMetaAttribute(field, "field-description")> /** ${pojo.getFieldJavaDoc(field, 0)} */ </#if> <#include "Ejb3FieldAnnotation.ftl"/> ${pojo.getFieldModifiers(field)} ${pojo.getJavaTypeName(field, jdk5)} ${field.name}<#if pojo.hasFieldInitializor(field, jdk5)> = ${pojo.getFieldInitialization(field, jdk5)}</#if>; </#if> </#foreach>
Partager