欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

hibernate注解实现set集合排序

程序员文章站 2022-04-16 22:41:37
...
package com.dc.product.entity.res;

// Generated 2014-11-28 16:53:22 by Hibernate Tools 3.4.0.CR1

import java.math.BigDecimal;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.OrderBy;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import org.hibernate.validator.Length;
import org.hibernate.validator.NotNull;

/**
 * ResourceGroupDef generated by hbm2java
 */
@Entity
@Table(name = "T_RES_RESOURCEGROUPDEF", schema = "PROD")
public class ResourceGroupDef implements java.io.Serializable {

	private String resourceGroup;
	private ResourceGroupDef resourceGroupDef;
	private ResourceClass resourceClass;
	private String groupName;
	private String groupAttr;
	private BigDecimal groupLevel;
	private BigDecimal displayOrder;
	private String modifyStaff;
	private Date modifyDate;
	private String remark;
	private Set<ResourceGroupDef> resourceGroupDefs = new HashSet<ResourceGroupDef>(
			0);
	private Set<ResourceBaseInfo> resourceBaseInfos = new HashSet<ResourceBaseInfo>(
			0);

	public ResourceGroupDef() {
	}

	public ResourceGroupDef(String resourceGroup, String groupName,
			String groupAttr, BigDecimal groupLevel, BigDecimal displayOrder) {
		this.resourceGroup = resourceGroup;
		this.groupName = groupName;
		this.groupAttr = groupAttr;
		this.groupLevel = groupLevel;
		this.displayOrder = displayOrder;
	}

	public ResourceGroupDef(String resourceGroup,
			ResourceGroupDef resourceGroupDef, ResourceClass resourceClass,
			String groupName, String groupAttr, BigDecimal groupLevel,
			BigDecimal displayOrder, String modifyStaff, Date modifyDate,
			String remark, Set<ResourceGroupDef> resourceGroupDefs,
			Set<ResourceBaseInfo> resourceBaseInfos) {
		this.resourceGroup = resourceGroup;
		this.resourceGroupDef = resourceGroupDef;
		this.resourceClass = resourceClass;
		this.groupName = groupName;
		this.groupAttr = groupAttr;
		this.groupLevel = groupLevel;
		this.displayOrder = displayOrder;
		this.modifyStaff = modifyStaff;
		this.modifyDate = modifyDate;
		this.remark = remark;
		this.resourceGroupDefs = resourceGroupDefs;
		this.resourceBaseInfos = resourceBaseInfos;
	}

	@Id
	@Column(name = "RESOURCE_GROUP", unique = true, nullable = false, length = 15)
	@NotNull
	@Length(max = 15)
	public String getResourceGroup() {
		return this.resourceGroup;
	}

	public void setResourceGroup(String resourceGroup) {
		this.resourceGroup = resourceGroup;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "UP_RESOURCE_GROUP")
	public ResourceGroupDef getResourceGroupDef() {
		return this.resourceGroupDef;
	}

	public void setResourceGroupDef(ResourceGroupDef resourceGroupDef) {
		this.resourceGroupDef = resourceGroupDef;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "RESOURCE_CLASS")
	public ResourceClass getResourceClass() {
		return this.resourceClass;
	}

	public void setResourceClass(ResourceClass resourceClass) {
		this.resourceClass = resourceClass;
	}

	@Column(name = "GROUP_NAME", nullable = false, length = 128)
	@NotNull
	@Length(max = 128)
	public String getGroupName() {
		return this.groupName;
	}

	public void setGroupName(String groupName) {
		this.groupName = groupName;
	}

	@Column(name = "GROUP_ATTR", length = 2)
	@NotNull
	@Length(max = 2)
	public String getGroupAttr() {
		return this.groupAttr;
	}

	public void setGroupAttr(String groupAttr) {
		this.groupAttr = groupAttr;
	}

	@Column(name = "GROUP_LEVEL", nullable = false, precision = 22, scale = 0)
	@NotNull
	public BigDecimal getGroupLevel() {
		return this.groupLevel;
	}

	public void setGroupLevel(BigDecimal groupLevel) {
		this.groupLevel = groupLevel;
	}

	@Column(name = "DISPLAY_ORDER", nullable = false, precision = 22, scale = 0)
	@NotNull
	public BigDecimal getDisplayOrder() {
		return this.displayOrder;
	}

	public void setDisplayOrder(BigDecimal displayOrder) {
		this.displayOrder = displayOrder;
	}

	@Column(name = "MODIFY_STAFF", length = 15)
	@Length(max = 15)
	public String getModifyStaff() {
		return this.modifyStaff;
	}

	public void setModifyStaff(String modifyStaff) {
		this.modifyStaff = modifyStaff;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "MODIFY_DATE", length = 7)
	public Date getModifyDate() {
		return this.modifyDate;
	}

	public void setModifyDate(Date modifyDate) {
		this.modifyDate = modifyDate;
	}

	@Column(name = "REMARK", length = 128)
	@Length(max = 128)
	public String getRemark() {
		return this.remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "resourceGroupDef")
	@OrderBy("displayOrder")
	public Set<ResourceGroupDef> getResourceGroupDefs() {
		return this.resourceGroupDefs;
	}

	public void setResourceGroupDefs(Set<ResourceGroupDef> resourceGroupDefs) {
		this.resourceGroupDefs = resourceGroupDefs;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "resourceGroupDef")
	public Set<ResourceBaseInfo> getResourceBaseInfos() {
		return this.resourceBaseInfos;
	}

	public void setResourceBaseInfos(Set<ResourceBaseInfo> resourceBaseInfos) {
		this.resourceBaseInfos = resourceBaseInfos;
	}

}

核心的部分:

@OneToMany(fetch = FetchType.LAZY, mappedBy = "resourceGroupDef")
	@OrderBy("displayOrder")
	public Set<ResourceGroupDef> getResourceGroupDefs() {
		return this.resourceGroupDefs;
	}


hibernate注解实现set集合排序


hibernate注解实现set集合排序

转载于:https://my.oschina.net/u/855386/blog/351993