OrderDTO 为什么要重写一份, 不直接继承 OrderMaster
来源:6-3 买家订单-service创建_A
Erase_Liu
2017-09-12
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.sybinal.sell.domain.enums.EnumUtil;
import com.sybinal.sell.domain.enums.OrderStatusEnum;
import com.sybinal.sell.domain.enums.PayStatusEnum;
import com.sybinal.sell.domain.model.OrderDetail;
import com.sybinal.sell.domain.model.OrderMaster;
import lombok.Data;
import java.util.List;
@Data
public class OrderDTO extends OrderMaster {
List<OrderDetail> orderDetailList;
@JsonIgnore
public OrderStatusEnum getOrderStatusEnum() {
return EnumUtil.getByCode(super.getOrderStatus(), OrderStatusEnum.class);
}
@JsonIgnore
public PayStatusEnum getPayStatusEnum() {
return EnumUtil.getByCode(super.getPayStatus(), PayStatusEnum.class);
}
}写回答
2回答
-
用途不一样,就不要耦合在一起。我举个例子好了,假如有个UserDTO和UserMaster, UserDTO继承UserMaster, 某一天,UserMaster增加了个password字段, 这样UserDTO里也有这个字段了,但其实我是不想暴露password字段的。UserMaster和数据库保持一致, UserDTO用于传输。
512017-09-18 -
Roce_
2017-09-13
单一职责
10
相似问题