zoukankan      html  css  js  c++  java
  • Jackson解析XML

    使用Jackson

    maven项目的pom.xml依赖

            <dependency>
    	  <groupId>com.fasterxml.jackson.dataformat</groupId>
    	  <artifactId>jackson-dataformat-xml</artifactId>
    	  <version>2.9.0</version>
    	</dependency>
    	<dependency>
    	  <groupId>com.fasterxml.woodstox</groupId>
    	  <artifactId>woodstox-core</artifactId>
    	  <version>5.1.0</version>
    	</dependency>    
    

      

    User.java

    public class User {
    	private int id;
    	private String username;
    	private String sex;
    	private String birthday;
    	private String address;
    	public int getId() {
    		return id;
    	}
    	public void setId(int id) {
    		this.id = id;
    	}
    	public String getUsername() {
    		return username;
    	}
    	public void setUsername(String username) {
    		this.username = username;
    	}
    	public String getSex() {
    		return sex;
    	}
    	public void setSex(String sex) {
    		this.sex = sex;
    	}
    	public String getBirthday() {
    		return birthday;
    	}
    	public void setBirthday(String birthday) {
    		this.birthday = birthday;
    	}
    	public String getAddress() {
    		return address;
    	}
    	public void setAddress(String address) {
    		this.address = address;
    	}
    	@Override
    	public String toString() {
    		return "User [id=" + id + ", username=" + username + ", sex=" + sex + ", birthday=" + birthday + ", address="
    				+ address + "]";
    	}
    	public User() {
    	}
    	public User(int id, String username, String sex, String birthday, String address) {
    		super();
    		this.id = id;
    		this.username = username;
    		this.sex = sex;
    		this.birthday = birthday;
    		this.address = address;
    	}
    }
    

      

    Jackson.java

     POJO转为XML

    public static void jacksonBean2XML() throws JsonProcessingException{
    //		JacksonXmlModule module = new JacksonXmlModule();
    //		module.setDefaultUseWrapper(false);
    		
    		XmlMapper xmlMapper = new XmlMapper();
    		xmlMapper.setDefaultUseWrapper(false);
    		User user=new User(1,"lucas","nan","2019-10-01","上海");
    		String xml=xmlMapper.writeValueAsString(user);
    		System.out.println(xml);
    	}
    

      

    返回

    <User><id>1</id><username>lucas</username><sex>nan</sex><birthday>2019-10-01</birthday><address>上海</address></User>
    

      

    XML转为POJO

    public static void jacksonXML2Bean() throws JsonParseException, JsonMappingException, IOException{
    //		JacksonXmlModule module = new JacksonXmlModule();
    //		module.setDefaultUseWrapper(false);
    		XmlMapper xmlMapper = new XmlMapper();
    		xmlMapper.setDefaultUseWrapper(false);
    		//自动忽略无法对应pojo的字段
    		xmlMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
    		User user=xmlMapper.readValue("<User><id>1</id><username>lucas</username><sex>nan</sex><birthday>2019-10-01</birthday><address>上海</address></User>", User.class);
    		System.out.println(user);
    	}
    

      

    返回

    User [id=1, username=lucas, sex=nan, birthday=2019-10-01, address=上海]
    

      

  • 相关阅读:
    关于SNS网络
    面向对象中的IS A和HAS A 问题
    项目进度检查
    【php】php Apache 怎么创建虚拟目录
    【IE6】iframe在IE6下出现横向滚动条的解决方案
    【javascript基础】Javascript的getYear、getFullYear、getUTCFullYear异同
    【java】JAVA环境配置
    UTF8 GBK UTF8 GB2312 之间的区别和关系
    【转发】10 个技巧助你写出卓越的jQuery插件
    【前端优化】你想不到的压缩方法:将javascript文件压缩成PNG图像存储
  • 原文地址:https://www.cnblogs.com/1906859953Lucas/p/10751078.html
Copyright © 2011-2022 走看看