58,454
社区成员
发帖
与我相关
我的任务
分享
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.MappedSuperclass;
import javax.persistence.OneToMany;
import javax.persistence.OrderBy;
import javax.persistence.Transient;
import com.huizhiyida._msshje.base.utils.FieldValues;
@MappedSuperclass
public abstract class TreeEntity<T extends TreeNodeEntity<?>, TGroup extends TreeEntity<T, TGroup>> extends BaseEntity {
protected String name;
protected Integer orderindex = 0;
protected TGroup parent;
protected List<TGroup> children = new ArrayList<TGroup>();
protected List<T> nodes = new ArrayList<T>();
@ManyToOne
@JoinColumn(name = "parent_id")
public TGroup getParent() {
return parent;
}
public void setParent(TGroup parent) {
this.parent = parent;
}
@OneToMany(mappedBy = "parent")
@OrderBy("id")
public List<TGroup> getChildren() {
return children;
}
public void setChildren(List<TGroup> children) {
this.children = children;
}
@OneToMany(mappedBy = "group")
public List<T> getNodes() {
return nodes;
}
public void setNodes(List<T> nodes) {
this.nodes = nodes;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getOrderindex() {
return orderindex;
}
public void setOrderindex(Integer orderindex) {
this.orderindex = orderindex;
}
}