java—rest客户端和soap客户端的同一实体

1mrurvl1  于 2021-07-12  发布在  Java
关注(0)|答案(1)|浏览(538)

我在一个有rest客户机部分和soap客户机的项目上工作。两者都可以使用实体,例如,您可以从soapweb服务获得实体person,也可以从rest服务获得实体person。
为了实现这一点,我必须创建两个具有相同字段的独立实体,因为字段“出生日期”有问题。所以现在我有了personrest(用于rest服务)和personsoap(用于soap服务)
我是personsoap

@XmlRootElement
   @JsonIdentityInfo(generator = JSOGGenerator.class)
    @XmlAccessorType(XmlAccessType.FIELD)
    public class PersonSoap implements Serializable{

        private static final long serialVersionUID = 1L;

        private Integer perId;

        @XmlSchemaType(name = "dateTime")
        protected XMLGregorianCalendar perBirthDate;

这是个人休息

@XmlRootElement
    @JsonIdentityInfo(generator = JSOGGenerator.class)
    public class PersonRest implements Serializable{

        private static final long serialVersionUID = 1L;

        private Integer perId;

        protected LocalDate perBirthDate;

实体具有相同的字段,但问题是perbirthdate,这是我必须根据客户机类型分离实体的唯一原因。有办法把两个实体统一起来吗?

qvtsj1bj

qvtsj1bj1#

使用多态性。
例如:定义一个超类 Person 两个儿童班:
PersonRest extends Person PersonSoap extends Person

相关问题