hibernate的注释信息

来源:互联网 发布:war3 for mac的密匙 编辑:程序博客网 时间:2024/05/30 23:23
 

<1>hibernate的一对多关系 

员工类:
@Entity
@Table(name = "BASE_EMPLOYEE")
public class Employee implements Serializable {

 public Employee() {

 }
 /**
  * ID
  */
 private String id;
       /**
  * 部门
  */
 private Department department;

 @Id
 @GeneratedValue(generator = "system-uuid")
 @GenericGenerator(name = "system-uuid", strategy = "uuid")
 public String getId() {
  return id;
 }

 public void setId(String id) {
  this.id = id;
 }
 @ManyToOne
 @JoinColumn(name = "DEPARTMENT_ID")
 public Department getDepartment() {
  return department;
 }

 public void setDepartment(Department department) {
  this.department = department;
 }
}
部门类:
@Entity
@Table(name = "BASE_DEPARTMENT")
public class Department implements Serializable {

 public Department() {
  super();
 }

 private static final long serialVersionUID = -4579891267703880470L;

 /**
  * ID
  */
 private String id;
 /**
  * ID
  */
 @Id
 @GeneratedValue(generator = "system-uuid")
 @GenericGenerator(name = "system-uuid", strategy = "uuid")
 public String getId() {
  return id;
 }

 public void setId(String id) {
  if ("".equals(id))
   this.id = null;
  else
   this.id = id;
 }
 /**
  * 父级对象
  */
 private Department parentDepartment;
        @ManyToOne
 @JoinColumn(name = "PARENT_DEPARTMENT_ID", nullable = true)
 public Department getParentDepartment() {
  return parentDepartment;
 }

 public void setParentDepartment(Department parentDepartment) {
  this.parentDepartment = parentDepartment;
 }
}

<2>hibernate的多对多关系

客户:

@Entity
@DiscriminatorValue(value = "Client")
public class Client extends Company {

 private String parentId;

 /**
  * 供应商列表

  */
 private List supplierList = new ArrayList();

 /**
  * 品牌列表
  */
 private List<Brand> brandList = new ArrayList<Brand>();

 /**
  * 地址列表
  */
 private List<ClientAddress> addressList = new ArrayList<ClientAddress>();

 /**
  * 折扣设置列表
  */
 private List<BrandDiscountSetup> discountSetupList = new ArrayList();

 private ClientType clientType;

 @ManyToOne(fetch = FetchType.LAZY)
 @JoinColumn(name = "CLIENT_TYPE_ID")
 public ClientType getClientType() {
  return clientType;
 }

 @ManyToOne(fetch = FetchType.LAZY)
 @JoinColumn(name = "CLIENT_TYPE_ID")
 public void setClientType(ClientType clientType) {
  this.clientType = clientType;
 }

 @Column(name = "PARENT_ID")
 public String getParentId() {
  return parentId;
 }

 public void setParentId(String parentId) {
  this.parentId = parentId;
 }

 @ManyToMany(targetEntity = Supplier.class, fetch = FetchType.LAZY)
 @JoinTable(name = "BASE_SUPPLIER_CLIENT", joinColumns = { @JoinColumn(name = "SUPPLIER_ID") }, inverseJoinColumns = { @JoinColumn(name = "CLIENT_ID") })
 public List<Supplier> getSupplierList() {
  return supplierList;
 }

 public void setSupplierList(List<Supplier> supplierList) {
  this.supplierList = supplierList;
 }

 @ManyToMany(targetEntity = Brand.class, fetch = FetchType.LAZY)
 @JoinTable(name = "BASE_CLIENT_BRAND", joinColumns = { @JoinColumn(name = "CLIENT_ID") }, inverseJoinColumns = { @JoinColumn(name = "BRAND_ID") })
 public List<Brand> getBrandList() {
  return brandList;
 }

 public void setBrandList(List<Brand> brandList) {
  this.brandList = brandList;
 }

 @OneToMany(fetch = FetchType.LAZY)
 @JoinColumn(name = "COMPANY_ID")
 @Cascade(value = { CascadeType.DELETE_ORPHAN, CascadeType.ALL })
 public List<ClientAddress> getAddressList() {
  return addressList;
 }

 public void setAddressList(List<ClientAddress> addressList) {
  this.addressList = addressList;
 }

 @OneToMany(fetch = FetchType.LAZY)
 @JoinColumn(name = "COMPANY_ID")
 @Cascade(value = { CascadeType.DELETE_ORPHAN, CascadeType.ALL })
 public List<BrandDiscountSetup> getDiscountSetupList() {
  return discountSetupList;
 }

 public void setDiscountSetupList(List<BrandDiscountSetup> discountSetupList) {
  this.discountSetupList = discountSetupList;
 }
}

品牌类:

@Entity
@Table(name = "BASE_BRAND")
public class Brand implements Serializable {

 private static final long serialVersionUID = -1110607550128690623L;

 /**
  * @see #getId()
  */
 private String id;

 /**
  * @see #getName()
  */
 private String name;
 /**
  * @see #getEnName()
  */
 private String enName;
 /**
  * @see #getCode()
  */
 private String code;
 /**
  * @see #getRemark()
  */
 private String remark;
 /**
  * @see #getBarCodeRule()
  */
 private BarCodeRule barCodeRule;

 /**
  * 编码
  */
 @Column(length = 50, nullable = false)
 public String getCode() {
  return code;
 }

 public void setCode(String code) {
  this.code = code;
 }

 /**
  * 主键id
  */
 @Id
 @GeneratedValue(generator = "system-uuid")
 @GenericGenerator(name = "system-uuid", strategy = "uuid")
 public String getId() {
  return id;
 }

 public void setId(String id) {
  if ("".equals(id)) {
   this.id = null;
  } else {
   this.id = id;
  }
 }

 /**
  * 品牌名称
  */
 @Column(length = 50, nullable = false)
 public String getName() {
  return name;
 }

 public void setName(String name) {
  this.name = name;
 }

 /**
  * 注释
  */
 @Column(length = 200, nullable = true)
 public String getRemark() {
  return remark;
 }

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

 /**
  * 英文名称
  */
 @Column(name = "EN_NAME ", length = 50, nullable = false)
 public String getEnName() {
  return enName;
 }

 public void setEnName(String enName) {
  this.enName = enName;
 }

 /**
  * 条形码规�?(此品牌的商品的条形码生成规则)
  */
 @ManyToOne
 @JoinColumn(name = "BAR_CODE_RULE_ID")
 public BarCodeRule getBarCodeRule() {
  return barCodeRule;
 }

 public void setBarCodeRule(BarCodeRule barCodeRule) {
  this.barCodeRule = barCodeRule;
 }
}

原创粉丝点击