最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springMarchal集成xStream的完整示例代碼

 更新時間:2022年03月01日 11:54:20   作者:JaxYoun  
這篇文章主要介紹了springMarchal集成xStream的示例代碼,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

Xstream是一個庫, 用于將對象序列化為xml, 反之亦然, 而無需任何映射文件。注意, castor需要一個映射文件。

XStreamMarshaller類提供了將對象封送為xml的工具, 反之亦然。

1.maven GAV(1.4.11.1版本才兼容):

<dependency>
    <groupId>com.thoughtworks.xstream</groupId>
    <artifactId>xstream</artifactId>
    <version>1.4.11.1</version>
</dependency>

2.POJO類:

package com.yang.alibabamysql.domain.bo;

import com.thoughtworks.xstream.annotations.XStreamAlias;
import lombok.Data;
import java.util.List;
@XStreamAlias(value = "man", impl = Man.class)
@Data
public class Man {
    @XStreamAlias("id")
    private Long id;
    @XStreamAlias("name")
    private String name;
    @XStreamAlias("sonList")
    protected List<Son> sonList;
    @XStreamAlias(value = "son", impl = Son.class)
    @Data
    public static class Son {
        @XStreamAlias("id")
        private Long id;
        @XStreamAlias("name")
        private String name;
    }
}

3.配置類:

package com.yang.alibabamysql.config;

import com.thoughtworks.xstream.io.naming.NoNameCoder;
import com.thoughtworks.xstream.io.xml.Xpp3Driver;
import com.yang.alibabamysql.domain.bo.Man;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.oxm.xstream.XStreamMarshaller;
@Configuration
public class XStreamMarshallerConfig {
    @Bean
    public XStreamMarshaller getXStreamMarshaller() {
        XStreamMarshaller xStreamMarshaller = new XStreamMarshaller();
        xStreamMarshaller.setStreamDriver(new Xpp3Driver(new NoNameCoder()));
        xStreamMarshaller.setAnnotatedClasses(Man.class, Man.Son.class);
        xStreamMarshaller.setAutodetectAnnotations(true);
        return xStreamMarshaller;
    }
}

4.測試類:

package com.yang.alibabamysql.controller;

import com.google.common.collect.Lists;
import com.thoughtworks.xstream.io.naming.NoNameCoder;
import com.thoughtworks.xstream.io.xml.Xpp3Driver;
import com.yang.alibabamysql.AlibabaMysqlApplicationTests;
import com.yang.alibabamysql.domain.bo.Man;
import org.springframework.oxm.xstream.XStreamMarshaller;
import java.util.ArrayList;
class UserControllerTest extends AlibabaMysqlApplicationTests {
    private static final XStreamMarshaller xStreamMarshaller;
    static {
        xStreamMarshaller = new XStreamMarshaller();
        xStreamMarshaller.setStreamDriver(new Xpp3Driver(new NoNameCoder()));
        xStreamMarshaller.setAnnotatedClasses(Man.class, Man.Son.class);
        xStreamMarshaller.setAutodetectAnnotations(true);
    }
    public static void marshal() {
        Man.Son son = new Man.Son();
        son.setId(2L);
        son.setName("ypw");
        ArrayList<Man.Son> sonArrayList = Lists.newArrayList(son);
        Man man = new Man();
        man.setId(1L);
        man.setName("yjx");
        man.setSonList(sonArrayList);
        System.err.println(xStreamMarshaller.getXStream().toXML(man));
    public static void unmarshal() {
        String xml = "<man><id>1</id><name>yjx</name><sonList><son><id>2</id><name>ypw</name></son></sonList></man>";
        Man man = (Man) xStreamMarshaller.getXStream().fromXML(xml);
        System.err.println(man.getSonList().get(0).getName());
    public static void main(String[] args) {
        marshal();
        System.out.println("=============");
        unmarshal();
}

輸出:

<man>
  <id>1</id>
  <name>yjx</name>
  <sonList>
    <son>
      <id>2</id>
      <name>ypw</name>
    </son>
  </sonList>
</man>
=============
ypw

到此這篇關于springMarchal集成xStream的文章就介紹到這了,更多相關springMarchal集成xStream內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • SpringBoot過濾敏感詞的兩種實現方式

    SpringBoot過濾敏感詞的兩種實現方式

    Spring Boot本身并不直接提供過濾敏感詞的功能,但你可以使用第三方庫或者自定義過濾器來實現這個需求,所以本文給大家介紹了SpringBoot過濾敏感詞的兩種實現方式,感興趣的朋友可以參考下
    2024-06-06
  • Mybatis如何通過出入Map參數作為條件進行查詢

    Mybatis如何通過出入Map參數作為條件進行查詢

    這篇文章主要介紹了Mybatis如何通過出入Map參數作為條件進行查詢,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Java異常 Factory method''sqlSessionFactory''rew exception;ested exception is java.lang.NoSuchMethodError:

    Java異常 Factory method''sqlSessionFactory''rew exception;este

    這篇文章主要介紹了Java異常 Factory method ‘sqlSessionFactory‘ threw exception; nested exception is java.lang.NoSuchMethodError:,本文介紹了springboot 引入mybatis-plus后報錯的解決方案,以下就是詳細內容,需要的朋友可以參考下
    2021-07-07
  • Log4j如何屏蔽某個類的日志打印

    Log4j如何屏蔽某個類的日志打印

    這篇文章主要介紹了Log4j如何屏蔽某個類的日志打印,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • 解析Java的InputStream類并借助其讀取ppt文件

    解析Java的InputStream類并借助其讀取ppt文件

    這篇文章主要介紹了Java的InputStream類并借助其讀取ppt文件,講到了InputStream類中一些常用的方法的問題,需要的朋友可以參考下
    2015-11-11
  • Java中LinkedHashSet的實現原理詳解

    Java中LinkedHashSet的實現原理詳解

    這篇文章主要介紹了Java中LinkedHasSet的實現原理詳解,LinkedHashSet?是具有可預知迭代順序的?Set?接口的哈希表和鏈接列表實現,此實現與HashSet?的不同之處在于,后者維護著一個運行于所有條目的雙重鏈接列表,需要的朋友可以參考下
    2023-09-09
  • idea.vmoptions 最佳配置方案

    idea.vmoptions 最佳配置方案

    本文介紹了針對IntelliJ IDEA的優(yōu)化配置建議,包括提升內存設置、啟用G1垃圾回收器、優(yōu)化垃圾回收策略以及調整網絡設置等,旨在提高IDE的性能和響應速度,同時,指導用戶如何修改vmoptions文件以應用這些配置,并提供了監(jiān)控內存使用和插件管理的建議
    2024-09-09
  • 實例講解Java設計模式編程中如何運用代理模式

    實例講解Java設計模式編程中如何運用代理模式

    這篇文章主要介紹了Java設計模式編程中如何運用代理模式,文中舉了普通代理和強制代理的例子作為代理模式的擴展內容,需要的朋友可以參考下
    2016-02-02
  • spring boot前后端傳參的實現

    spring boot前后端傳參的實現

    這篇文章主要介紹了spring boot前后端傳參的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-01-01
  • jdbc鏈接遠程數據庫進行修改url操作

    jdbc鏈接遠程數據庫進行修改url操作

    這篇文章主要為大家詳細介紹了jdbc鏈接遠程數據庫進行修改url操作,感興趣的小伙伴們可以參考一下
    2016-06-06

最新評論

满城县| 潼南县| 子洲县| 鹤庆县| 大关县| 永善县| 安吉县| 临夏县| 凤冈县| 墨脱县| 轮台县| 伊宁县| 白银市| 大姚县| 棋牌| 广河县| 台南市| 通榆县| 浠水县| 二手房| 乾安县| 聂荣县| 夏邑县| 临沭县| 柳河县| 闵行区| 和静县| 仁寿县| 涞源县| 黎平县| 鸡泽县| 鹤山市| 股票| 太白县| 突泉县| 新沂市| 松滋市| 微山县| 洞口县| 清涧县| 宝山区|