| #if ($table.package != "") |
| package ${table.package}; |
| #end |
| |
| import java.io.Serializable; |
| import javax.persistence.*; |
| ${table.importStatements} |
| |
| /** |
| * The persistent class for the ${table.name} database table. |
| * |
| */ |
| @Entity |
| #if( !${table.defaultname} || $customizer.generateDDLAnnotations) |
| @Table(name="${table.name}") |
| #end |
| public class ${table.className} ${table.generateExtendsImplements()} { |
| private static final long serialVersionUID = 1L; |
| ##### |
| ##### fields |
| ##### |
| #if ($table.compositeKey) |
| #if ($table.access == "field") |
| |
| @EmbeddedId |
| #end |
| private ${table.compositeKeyClassName} ${table.compositeKeyPropertyName}; |
| #end |
| #foreach ($column in $table.getSimpleColumns(true, true, false)) |
| #if ($table.access == "field") |
| |
| #parse("mappingKind.vm") |
| #parse("column.vm") |
| #end |
| ${column.fieldScope} ${column.simplePropertyType} ${column.propertyName}; |
| #end |
| #foreach ($role in $table.associationRoles) |
| ##### |
| ##### field annotations |
| ##### |
| #if ($table.access == "field") |
| |
| //${role.description} |
| #if ($role.cardinality == "many-to-one") |
| #parse("manyToOne.vm") |
| #elseif ($role.cardinality == "many-to-many") |
| #parse("manyToMany.vm") |
| #elseif ($role.cardinality == "one-to-many") |
| #parse("oneToMany.vm") |
| #elseif ($role.cardinality == "one-to-one") |
| #parse("oneToOne.vm") |
| #end |
| #end |
| ##### |
| ##### field declaration |
| ##### |
| #if ($role.cardinality == "many-to-one" || $role.cardinality == "one-to-one") |
| #set ($propertyType = ${role.referencedTable.className}) |
| #elseif ($role.cardinality == "many-to-many" || $role.cardinality == "one-to-many") |
| #set ($propertyType = "${role.referencedTable.simpleCollectionType}<${role.referencedTable.className}>") |
| #end |
| private $propertyType $role.propertyName; |
| #end |
| |
| public ${table.className}() { |
| } |
| |
| ##### |
| ##### simple properties getters and setters |
| ##### |
| #if ($table.compositeKey) |
| #if ($table.access == "property") |
| |
| @EmbeddedId |
| #end |
| public $table.compositeKeyClassName $customizer.propertyGetter($table.compositeKeyPropertyName)() { |
| return this.${table.compositeKeyPropertyName}; |
| } |
| |
| public void $customizer.propertySetter($table.compositeKeyPropertyName)($table.compositeKeyClassName $table.compositeKeyPropertyName) { |
| this.${table.compositeKeyPropertyName} = ${table.compositeKeyPropertyName}; |
| } |
| |
| #end |
| #foreach ($column in $table.getSimpleColumns(true, true, false)) |
| #if ($table.access == "property") |
| |
| #parse("mappingKind.vm") |
| #parse("column.vm") |
| #end |
| $column.propertyGetScope $column.simplePropertyType $customizer.propertyGetter($column.propertyName)() { |
| return this.${column.propertyName}; |
| } |
| |
| $column.propertySetScope void $customizer.propertySetter($column.propertyName)($column.simplePropertyType $column.propertyName) { |
| this.${column.propertyName} = ${column.propertyName}; |
| } |
| |
| #end |
| ##### |
| ##### associations getters and setters |
| ##### |
| #foreach ($role in $table.associationRoles) |
| #if ($table.access == "property") |
| |
| //${role.description} |
| #if ($role.cardinality == "many-to-one") |
| #parse("manyToOne.vm") |
| #elseif ($role.cardinality == "many-to-many") |
| #parse("manyToMany.vm") |
| #elseif ($role.cardinality == "one-to-many") |
| #parse("oneToMany.vm") |
| #elseif ($role.cardinality == "one-to-one") |
| #parse("oneToOne.vm") |
| #end |
| #end |
| ## |
| #if ($role.cardinality == "many-to-one" || $role.cardinality == "one-to-one") |
| #set ($propertyType = $role.referencedTable.className) |
| #elseif ($role.cardinality == "many-to-many" || $role.cardinality == "one-to-many") |
| #set ($propertyType = "${role.referencedTable.simpleCollectionType}<${role.referencedTable.className}>") |
| #end |
| public $propertyType $customizer.propertyGetter($role.propertyName)() { |
| return this.${role.propertyName}; |
| } |
| |
| public void ${customizer.propertySetter($role.propertyName)}($propertyType $role.propertyName) { |
| this.${role.propertyName} = $role.propertyName; |
| } |
| |
| ## |
| #end |
| ## |
| } |