精华内容
下载资源
问答
  • JAXB工具类 xml转为java对象 java对象转为xml ,本人亲测,可以使用!!!
  • Java对象转为XML

    2020-07-21 12:42:34
    import java.beans.XMLEncoder; import java.io.ByteArrayOutputStream;... //对象Xml public static String object2XML(Object obj){ // 定义返回对象 String ret = ""; if(obj == null){ .

    1.JAVA代码

    import java.beans.XMLEncoder;
    import java.io.ByteArrayOutputStream;
    import java.io.IOException;
    import java.util.HashMap;
    import java.util.Map;
    
    public class XmlUtil {
        //对象转Xml
        public static String object2XML(Object obj){
            // 定义返回对象
            String ret = "";
            if(obj == null){
                return ret;
            }
            // 构造输出XML文件的字节流
            ByteArrayOutputStream bos = new ByteArrayOutputStream();
            try {
                // 构造一个XML编辑器
                XMLEncoder xmlEncoder = new XMLEncoder(bos);
                // 使用XML编辑器写对象
                xmlEncoder.writeObject(obj);
                // 关闭XML编辑器
                xmlEncoder.flush();
                xmlEncoder.close();
                // 输出流转为字符串
                ret = new String(bos.toByteArray(),"UTF-8");
            }catch (Exception e){
                e.printStackTrace();
            }finally {
                try {
                    if(bos != null){
                        // 关闭输出流
                        bos.flush();
                        bos.close();
                    }
                }catch (IOException e){
                    e.printStackTrace();
                }
            }
            return ret;
        }
    
        public static void main(String args[]){
            Map map = new HashMap();
            map.put("name","测试");
            map.put("age",30);
    
            System.out.println(XmlUtil.object2XML(map));
        }
    }

    2.打印结果

    <?xml version="1.0" encoding="UTF-8"?>
    <java version="1.8.0_181" class="java.beans.XMLDecoder">
     <object class="java.util.HashMap">
      <void method="put">
       <string>name</string>
       <string>测试</string>
      </void>
      <void method="put">
       <string>age</string>
       <int>30</int>
      </void>
     </object>
    </java>

     

    展开全文
  • 主要使用到的Java类有:javax.xml.bind.JAXBContext,javax.xml.bind.Marshaller(编排)代码主要展示如下:public classStudent {private intid;privateString name;private intage;public intgetId() {returnid;}...

    主要使用到的Java类有:javax.xml.bind.JAXBContext,javax.xml.bind.Marshaller(编排)

    代码主要展示如下:

    public classStudent {private intid;privateString name;private intage;public intgetId() {returnid;

    }public void setId(intid) {this.id =id;

    }publicString getName() {returnname;

    }public voidsetName(String name) {this.name =name;

    }public intgetAge() {returnage;

    }public void setAge(intage) {this.age =age;

    }public Student(int id, String name, intage) {super();this.id =id;this.name =name;this.age =age;

    }publicStudent() {super();//TODO Auto-generated constructor stub

    }

    }

    importjavax.xml.bind.annotation.XmlRootElement;

    @XmlRootElementpublic classClassRoom {private intclassRoomId;privateString classRoomName;privateStudent student;public intgetClassRoomId() {returnclassRoomId;

    }public void setClassRoomId(intclassRoomId) {this.classRoomId =classRoomId;

    }publicString getClassRoomName() {returnclassRoomName;

    }public voidsetClassRoomName(String classRoomName) {this.classRoomName =classRoomName;

    }publicStudent getStudent() {returnstudent;

    }public voidsetStudent(Student student) {this.student =student;

    }public ClassRoom(intclassRoomId, String classRoomName, Student student) {super();this.classRoomId =classRoomId;this.classRoomName =classRoomName;this.student =student;

    }publicClassRoom() {super();//TODO Auto-generated constructor stub

    }

    }

    测试:

    importjavax.xml.bind.JAXBContext;importjavax.xml.bind.Marshaller;public classTest {/***@paramargs*/

    public static void main(String[] args)throwsException{//TODO Auto-generated method stub

    JAXBContext jbt= JAXBContext.newInstance(ClassRoom.class);

    ClassRoom cr= new ClassRoom(1, "一班", new Student(10, "张三", 22));

    Marshaller ms=jbt.createMarshaller();

    ms.marshal(cr, System.out);

    }

    }

    结果:<?xml version="1.0" encoding="UTF-8" standalone="yes"?>1一班2210张三

    在这个简单的示例中主要留意的地方:1.Test.java 中的代码

    2. ClassRoom 类中加注解@XmlRootElement

    把生成的xml文件生成Java对象:

    主要代码:

    String xml ="<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>1一班2210张三";

    JAXBContext unjbt= JAXBContext.newInstance(ClassRoom.class);

    Unmarshaller unms=unjbt.createUnmarshaller();

    ClassRoom uncr=(ClassRoom) unms.unmarshal(newStringReader(xml));

    System.out.println(uncr.getClassRoomId()+uncr.getClassRoomName());

    展开全文
  • Java对象转为xml格式

    2019-10-08 17:54:21
    主要使用到的Java类有:javax.xml.bind.JAXBContext,javax.xml.bind.Marshaller(编排) 代码主要展示如下: public class Student { private int id; private String name; private int age; public int...

    主要使用到的Java类有:javax.xml.bind.JAXBContext,javax.xml.bind.Marshaller(编排)

    代码主要展示如下:

    public class Student {
    
        private int id;
        private String name;
        private int age;
        public int getId() {
            return id;
        }
        public void setId(int id) {
            this.id = id;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public int getAge() {
            return age;
        }
        public void setAge(int age) {
            this.age = age;
        }
        public Student(int id, String name, int age) {
            super();
            this.id = id;
            this.name = name;
            this.age = age;
        }
        public Student() {
            super();
            // TODO Auto-generated constructor stub
        }
    }

     

    import javax.xml.bind.annotation.XmlRootElement;
    
    @XmlRootElement
    public class ClassRoom {
        private int classRoomId;
        private String classRoomName;
        private Student student;
        public int getClassRoomId() {
            return classRoomId;
        }
        public void setClassRoomId(int classRoomId) {
            this.classRoomId = classRoomId;
        }
        public String getClassRoomName() {
            return classRoomName;
        }
        public void setClassRoomName(String classRoomName) {
            this.classRoomName = classRoomName;
        }
        public Student getStudent() {
            return student;
        }
        public void setStudent(Student student) {
            this.student = student;
        }
        public ClassRoom(int classRoomId, String classRoomName, Student student) {
            super();
            this.classRoomId = classRoomId;
            this.classRoomName = classRoomName;
            this.student = student;
        }
        public ClassRoom() {
            super();
            // TODO Auto-generated constructor stub
        }
    
    }

    测试:

    import javax.xml.bind.JAXBContext;
    import javax.xml.bind.Marshaller;
    
    public class Test {
    
        /**
         * @param args
         */
        public static void main(String[] args)throws Exception{
            // TODO Auto-generated method stub
    
            JAXBContext jbt = JAXBContext.newInstance(ClassRoom.class);
            
            ClassRoom cr = new ClassRoom(1, "一班", new Student(10, "张三", 22));
            
            Marshaller ms = jbt.createMarshaller();
            
            ms.marshal(cr, System.out);
            
            
        }
    
    }

    结果:<?xml version="1.0" encoding="UTF-8" standalone="yes"?><classRoom><classRoomId>1</classRoomId><classRoomName>一班</classRoomName><student><age>22</age><id>10</id><name>张三</name></student></classRoom>

    在这个简单的示例中主要留意的地方:1.Test.java 中的代码

    2. ClassRoom 类中加注解@XmlRootElement

     

    把生成的xml文件生成Java对象:

     

    主要代码:

    String xml ="<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><classRoom><classRoomId>1</classRoomId><classRoomName>一班</classRoomName><student><age>22</age><id>10</id><name>张三</name></student></classRoom>";
            
            JAXBContext unjbt = JAXBContext.newInstance(ClassRoom.class);
            
            Unmarshaller unms = unjbt.createUnmarshaller();
            
            ClassRoom uncr =(ClassRoom) unms.unmarshal(new StringReader(xml));
            
            System.out.println(uncr.getClassRoomId()+uncr.getClassRoomName());

    转载于:https://www.cnblogs.com/haoke/p/4448919.html

    展开全文
  • 在开发中有时候需要将xml文件解析为一个对象,方便在程序书写时获取相关的值或属性,有时需要将对象翻译成一个xml格式的内容,比如发报时,或内容传输时用xml格式是比较方便的,那如何将二者之间转化呢?不多说了,...

    在开发中有时候需要将xml文件解析为一个对象,方便在程序书写时获取相关的值或属性,有时需要将对象翻译成一个xml格式的内容,比如发报时,或内容传输时用xml格式是比较方便的,那如何将二者之间转化呢?不多说了,直接看代码:

        /**
         * 将xml字符串转化为对象
         * 
         * @param xmlString xml字符串
         * @param className 对象的class名称
         * @return 转化成的对象
         */
        public Object xmlStringTObject(String xmlString, String className) {
            // 创建一个读取xml文件的流
            StringReader xmlReader = new StringReader(xmlString);
            // 创建一个BeanReader实例,相当于转化器
            BeanReader beanReader = new BeanReader();
            // 注册要转换对象的类,并指定根节点名称
            Class clazz = null;
            try {
                clazz = Class.forName(className);
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
            try {
                beanReader.registerBeanClass(clazz);
            } catch (IntrospectionException e) {
                e.printStackTrace();
            }
            // 将XML解析Java Object
            Object obj = null;
            try {
                obj = beanReader.parse(xmlReader);
            } catch (IOException e) {
                e.printStackTrace();
    
            } catch (SAXException e) {
                e.printStackTrace();
            }
            return obj;
        }
    
        /**
         * 将对象转换为xml字符串
         * @param object 需要被转化的对象
         * @return
         */
        public String ObjectTXmlString(Object object) {
            String xmlString = null;
            // 创建一个输出流,将用来输出Java转换的XML文件
            StringWriter outputWriter = new StringWriter();
            // 输出XML的文件头
            outputWriter.write("<?xml version='1.0' encoding='ISO8859-1'?>\n");
            // 创建一个BeanWriter实例,并将BeanWriter的输出重定向到指定的输出流
            BeanWriter beanWriter = new BeanWriter(outputWriter);
            // 配置BeanWriter对象
            beanWriter.getXMLIntrospector().getConfiguration().setAttributesForPrimitives(false);
            beanWriter.getBindingConfiguration().setMapIDs(false);
            beanWriter.setWriteEmptyElements(false);
            try {
                beanWriter.write(object);
            } catch (Exception e) {
                e.printStackTrace();
            }
            xmlString = outputWriter.toString();
            // 关闭输出流
            try {
                outputWriter.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
            return xmlString;
        }

     

    展开全文
  • java对象XML代码

    2018-01-25 15:32:16
    将文java对象转为xml 需要的jar包下载地址http://download.csdn.net/download/weixin_39549656/10223485 /** * 消息父类 * @author Stephen * */ public class BaseMessage { //接收方微信号 private ...
  • 在项目中我们常常需要将java对象转为Xml,将xml转为java对象,这些繁琐的操作我们使用JAXB的话就可以很轻松的实现,一起看一个例子吧package com.xiongpan.model;import java.util.ArrayList;import java.util.List;...
  • 在项目中我们常常需要将java对象转为Xml,将xml转为java对象,这些繁琐的操作我们使用JAXB的话就可以很轻松的实现,一起看一个例子吧 package com.xiongpan.model; import java.util.ArrayList; import java....
  • 我们经常会有需求,比如调用别人的接口,别人会返回给你json或者xml格式的数据,然后我们要转换为相应的对象供我们自己使用; 也有的时候是别人的调我们的接口,让我们提供xml格式的数据或者json格式的数据,json的...
  • 我们经常会有需求,比如调用别人的接口,别人会返回给你json或者xml格式的数据,然后我们要转换为相应的对象供我们自己使用; 也有的时候是别人的调我们的接口,让我们提供xml格式的数据或者json格式的数据,json...
  • java对象转为JSON

    2020-05-10 17:48:53
    在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML、JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很多的标签,这无疑占据了网络流量,JSON在这方面则做的很好 1、添加maven依赖 <...
  • 1.[代码][Java]代码package ...import java.io.InputStream;import java.util.HashMap;import java.util.List;import java.util.Map;import javax.servlet.http.HttpServletRequest;import org.dom4j.Documen...
  • 问: Java中有几种XML解析方式 ? 分别是什么 ? 有什么样的优缺点 ? 答: 四种. 1. SAX解析 解析方式是事件驱动机制 ! SAX解析器, 逐行读取XML文件解析 , 每当解析到一个标签的开始/结束/内容/属性时,触 发...
  • 我有一个程序可以从json对象生成xml。String str = "{'name':'JSON','integer':1,'double':2.0,'boolean':true,'nested':{'id':42},'array':[1,2,3]}";JSON json = JSONSerializer.toJSON( str );XMLSerializer ...
  • /** * 将xml字符串转为相对应的对象 * * @param xml * @return */ public static <T> T fromXML (String xml){ return fromXML(xml, null ); } public static <T> T fromXML (String xml,...
  • XStream将JavaBean转为xml

    2020-03-02 23:33:47
    在项目中突然要想使用xml ,又涉及到java对象转为xml ,于是就学习了XStream,并封装了Xml工具类,于是就编写本博客作为记录。 具体使用可以看这篇文章:XStream 简介 不多说,直接上代码 ,如下所示: import ...
  • 1. 初始化要转为 XML 的数据: // 生成第一条地址数据; Address address1 = new Address(1, "地址一", "广东省XX市", "XX公司"); // 生成第二条地址数据; Address address2 = new Address(2, "地址二", "广东省XX...
  • XmlBuilder读取Xml文件并转为java对象

    千次阅读 2018-07-06 00:17:16
    xml文件: <?xml version="1.0" encoding="UTF-8"?> <c c1="0"> <d d1="101280101" d2="广州" d3="guangzhou" d4="广东"/> <d d1="101280102" d2="番禺" d3="panyu" d4="广东"/> <...
  • -- xml => Object --> <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-xml</artifactId> <version>2.10.1</...
  • xmljava对象

    2020-07-31 15:29:36
    针对xml直接生成java对象方法(解决方法的要点) 一、JABX注解: 参考W3C文档:https://www.w3cschool.cn/jaxb2/jaxb2-8pa22zoi.html 二、直接生成java对象的方法: 1、xml转xsd 在线转换工具:...
  • 如下所示:import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.DocumentBuilder;import javax.xml.transform.TransformerFactory;import javax.xml.transform.OutputKeys;import javax.xml....
  • javaxml格式字符串转为javabean(对象)

    万次阅读 2018-07-05 17:04:55
    本文简介了如何将xml格式的字符串转为对象(javabean)。一、建立实体类新建一个user实体类如下:给每一个属性都添加set和get方法。注解说明: @XmlRootElement:将类或枚举类型映射到 XML 元素。 @XmlElement:将...
  • Java对象属性转为Map

    千次阅读 2019-10-22 21:42:16
    1、在pom.xml中添加依赖包 <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-core</artifactId> <version>4.3.1</version> </dependency&...

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 174
精华内容 69
关键字:

java对象转为xml

java 订阅