溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何進行springMVC xml與實體對象的互轉(zhuǎn)

發(fā)布時間:2022-01-07 10:55:09 來源:億速云 閱讀:219 作者:柒染 欄目:軟件技術(shù)

如何進行springMVC xml與實體對象的互轉(zhuǎn),針對這個問題,這篇文章詳細介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

RequestMapping注解

   @PostMapping(value = "/testXmlRequest", 
     produces = "application/xml; charset=UTF-8", 
     consumes = "application/xml; charset=UTF-8")
     public UserDto testXmlRequest(@RequestBody UserDto dto){
        dto.chgName("2342424sdfsdfsdf");
        return dto;
    }

produces 設(shè)置響應(yīng)的數(shù)據(jù)格式。最終httpMessageConverter根據(jù)produces的響應(yīng)media-type來選擇對應(yīng)的轉(zhuǎn)換類。
consumes 設(shè)置請求的數(shù)據(jù)格式最終httpMessageConverter根據(jù)consumes的響應(yīng)media-type來選擇對應(yīng)的轉(zhuǎn)換類。

實體類

@XmlRootElement(name = "xml")
public class UserDto {
    @XmlElement(name = "id")
    private Integer id;
    @XmlElement(name = "name")
    private String name;
    @XmlElement(name = "sex")
    private Integer sex;

    public UserDto() {
    }

    public UserDto(Integer id, String name, Integer sex) {
        this.id = id;
        this.name = name;
        this.sex = sex;
    }

    public void chgName(String name){
        this.name = name;
    }
}

javax.xml.bind.annotation.*的相關(guān)注解。會自動封裝和解析。注意:對應(yīng)的field不能有g(shù)etter和setter,不然會報錯。
因此,通常對于屬性的設(shè)置,創(chuàng)建對應(yīng)的builder類就可以了。

例子

headers:Content-Type=application/xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xml>
    <id>12131</id>
    <name>test</name>
    <sex>1</sex>
</xml>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xml>
    <id>12131</id>
    <name>2342424sdfsdfsdf</name>
    <sex>1</sex>
</xml>

關(guān)于如何進行springMVC xml與實體對象的互轉(zhuǎn)問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI