package com.oa.model; import java.io.Serializable; import java.util.HashSet; import java.util.Set; import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.OneToMany; import javax.persistence.OrderBy; import javax.persistence.Table; @Entity @Table(name="oa_dynamicField") public class DynamicField implements Serializable{ private Integer id; private String fieldLabel; private String fieldName; // private FiledInput input; private FieldType type; // private DynamicForm dynamicForm; /// private Set<FieldItem> fieldItems=new HashSet<FieldItem>(); @Id @GeneratedValue public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getFieldLabel() { return fieldLabel; } public void setFieldLabel(String fieldLabel) { this.fieldLabel = fieldLabel; } public String getFieldName() { return fieldName; } public void setFieldName(String fieldName) { this.fieldName = fieldName; } @ManyToOne(fetch=FetchType.LAZY) @JoinColumn(name="fieldInput", referencedColumnName="id") public FiledInput getInput() { return input; } public void setInput(FiledInput input) { this.input = input; } @ManyToOne(fetch=FetchType.LAZY) @JoinColumn(name="fieldtype",referencedColumnName="id") public FieldType getType() { return type; } public void setType(FieldType type) { this.type = type; } @OneToMany(mappedBy="dynamicField",cascade={CascadeType.ALL}) @OrderBy("id ASC") public Set<FieldItem> getFieldItems() { return fieldItems; } public void setFieldItems(Set<FieldItem> fieldItems) { this.fieldItems = fieldItems; } @ManyToOne(fetch=FetchType.LAZY,cascade={CascadeType.ALL}) @JoinColumn(name="dynamicFormId",referencedColumnName="id") public DynamicForm getDynamicForm() { return dynamicForm; } public void setDynamicForm(DynamicForm dynamicForm) { this.dynamicForm = dynamicForm; } @Override public String toString() { return "DynamicField [id=" + id + ", fieldLabel=" + fieldLabel + ", fieldName=" + fieldName + ", input=" + input + ", type=" + type + "]"; } }