我为@Entities
的单独的业务逻辑创建了结构,我做了@Entity
,如 POJO ,这类似于{{{{ 1}}包含业务逻辑和验证。
我认为发送我的BO
CRUD ,但问题是当我想要阅读返回我"BO"
对象时(我不知道是否我必须创建转换器或其他内容)但是当我想要创建,更新或删除时返回错误说@Entity
不知道"BO"
(我知道这一点但我应该在某种程度上参加父班)。
有什么想法吗?
更新
实体类
@Entity
公共类员工{
@Entity
}
我的BO:
protected String id;
protected String name;
protected float salary;
protected Employee() { }
public final String getId() {
return id
}
public void setId(String id) {
this.id = id;
}
public final String getName() {
return name
}
public void setName(String name) {
this.name = name;
}
public final float getSalary() {
return salary
}
public void setSalary(float salary) {
this.salary = salary;
}
}
然后我只工作EmployeeBO。例如public class EmployeeBO extends Employee{
public EmployeeBO(String id, String name, float salary) {
setId(id);
setName(name)
setSalary(salary);
}
public final void setSalary(float salary) {
//bussines logic
}
public final void setName(String name) {
//bussines logic
}
public final void setId(String id) {
//bussines logic
}
答案 0 :(得分:-1)
您的业务层应在数据层之上运行,并组织成逻辑连接的组。像这样:
public class EmployeeInfoOperations {
public final void updateName(Employee employee, String newName) {
//bussines logic: trigger name update on external systems?
}
public final void updateContactAddress(Employee employee, Address newAddress) {
}
}
public class EmployeeAccounting {
public final void changeSalary(Employee employee,float newSalary) {
}
public final void giveBonus(Employee employee, bigdecimal bonusAmount) {
}
}
您的业务操作类甚至不必围绕一个实体类型居中。考虑一组业务操作,小到足以成为一个类,并使用任何实体类型作为参数。