【问题标题】:Different sets of parameters converted/serialized for the same object for different REST methods?针对不同 REST 方法的同一对象转换/序列化的不同参数集?
【发布时间】:2012-11-05 19:18:30
【问题描述】:

http://www.mkyong.com/webservices/jax-rs/download-xml-with-jersey-jaxb/为例

是否可以将同一个 Customer 类与两种不同的 REST 方法一起使用,以便我为一种 REST 方法转换/序列化不同的 Customer 参数而不是另一种?

例如,如果对于第二种 REST 方法,我只想在 XML 输出中包含客户名称并排除 pin。

我该怎么做呢?

【问题讨论】:

    标签: java web-services rest jaxb jersey


    【解决方案1】:

    null 值在输出 XML 中始终不存在。因此,您可以将 null 值设置为字段,您不希望在输出中看到该值
    例如。类

    @XmlRootElement(name = "customer")
    class Customer {
        @XmlElement  
        String name;
    
        @XmlElement
        Integer pin;  
    

    在这个例子中

    Customer customer = new Customer();
    customer.setName("value");
    customer.setPin(null);  
    

    在输出中会给你

    <customer>
        <name>value</name>
    </customer>  
    

    Customer customer = new Customer();
    customer.setName(null);
    customer.setPin(12);  
    

    在输出中会给你

    <customer>
        <pin>12</pin>
    </customer>
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-09
    • 2018-01-13
    • 2020-07-17
    • 2019-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多