微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何进一步对实体子类进行分类?

如何解决如何进一步对实体子类进行分类?

例如,我有一个PaymentMethod抽象实体类,并且有不同的付款网关,如AuthorizeNet,FirstData,Amazon,PaypalPay等。其中AuthorizeNet和FirstData用于信用卡付款,另外两个具有自己的客户端UI。因此,我需要将这些子类别归类为信用卡或外部付款类型。我该怎么做呢?是否建议使用具有连接表继承关系的discriminatorColumn,还是可以在PaymentMethod中使用诸如抽象boolean isExternalPay()之类的简单瞬态字段,并在子类中进行相应的覆盖?

@Entity
@Inheritance(strategy = InheritanceType.JOINED)
@Table(name = "PaymentMethod")
public abstract class PaymentMethod { }

@Entity
@Table(name = "AuthorizeNet")
public class AuthorizeNet extends PaymentMethod { }

@Entity
@Table(name = "FirstData")
public class FirstData extends PaymentMethod { }

@Entity
@Table(name = "Amazon")
public class Amazon extends PaymentMethod { }

@Entity
@Table(name = "PayPalPay")
public class PayPalPay extends PaymentMethod { }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。