java通用Hibernate DAO
如果有人能帮忙,我将不胜感激
我的计划是有两层。一个是服务层,第二个是DAO层。服务层将执行业务逻辑,DAO层将执行CRUD数据操作
有两个名为Person和Order的休眠实体。这两个实体实现了BaseEntity接口。想在DAO层编写一个通用方法,这样它就可以接受任何实体
有没有关于如何编写通用dao方法的建议
@Entity
@Table(name = "PERSON")
public class Person implements BaseEntity, java.io.Serializable {
private int id;
private String firstName;
public Person() {
}
@Id
@Column(name = "PERSON_ID")
@GeneratedValue(strategy = GenerationType.AUTO)
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
@Column(name = "FIRST_NAME", nullable = false, length = 50)
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
}
@Entity
@Table(name = "PURCHASE_ORDER")
public class Order implements BaseEntity java.io.Serializable {
private int id;
public Order() {
}
@Id
@Column(name = "ORDER_ID")
@GeneratedValue(strategy = GenerationType.AUTO)
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
@Transient
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
public Set<OrderItem> getOrderItems() {
return orderItems;
}
public void setOrderItems(Set<OrderItem> orderItems) {
this.orderItems = orderItems;
}
}
您能否建议如何创建一个通用方法,该方法应将Person或Order实体作为输入参数
# 1 楼答案
下面是编写通用获取方法的方法:
忽略异常处理。使用自己的异常处理技术
# 2 楼答案
让Person和Order子类化一个基本的DAO,让方法接受DAO