`
wjcom1127
  • 浏览: 42063 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

castor对xml、object数据进行换转Demo(一)

    博客分类:
  • JAVA
阅读更多
javabean对象数据通过castor转换成xml格式数据

CastorBeanToXmlTest.java
package com.wj.castor;

import java.util.*;
import java.io.*;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.exolab.castor.xml.Marshaller;
import org.exolab.castor.mapping.Mapping;

/**
 * 
 * 根据bean数据生成xml格式数据
 * 
 * 测试:
 * (A):不要Mapping.xml
 * (B):加入Mapping.xml进行
 * 
 * @author  wjcom
 * @version  [版本号, 2010-7-28]
 * @see  [相关类/方法]
 * @since  [产品/模块版本]
 */
public class CastorBeanToXmlTest
{
	private static final Log LOGGER = LogFactory.getLog(CastorBeanToXmlTest.class);
	
    public static void main(String[] args)
    {
        /*
         * 初始化bean数据
         */
        List<Person> beans = new ArrayList<Person>();
        Person bean1 = new Person();
        bean1.setName("David");
        bean1.setSex("女");
        bean1.setAge(24);
        beans.add(bean1);
        
        Person bean2 = new Person();
        bean2.setName("WJ");
        bean2.setSex("男");
        bean2.setAge(25);
        beans.add(bean2);
        
        try
        {
            
            /*
             *  write it out as XML   
             *  生成xml文档
             */
            File file = new File("D:\\eclipse3.5.1\\workspace\\learning\\src\\com\\wj\\castor\\Person1.xml");
            Writer writer = new FileWriter(file);
            
            /*
             * 加载mapping文件
             * 这个地方一定要这样初始化
             */
            Marshaller mar = new Marshaller(writer);
            
            Mapping map = new Mapping();
            map.loadMapping("D:\\eclipse3.5.1\\workspace\\learning\\src\\com\\wj\\castor\\mapping_beanToxml.xml");
            mar.setMapping(map);
           
            /*
             * 生成xml文档
             */
            mar.marshal(beans);
                          
        }
        catch (Exception ex)
        {
        	LOGGER.info(ex.getMessage());
        }
        
    }
    
}



Person.java

package com.wj.castor;

/**
 * 实体bean
 * @author wjcom
 *
 */
public class Person
{
    /*
     * 名次
     */
    private String name;
    
    /*
     * 性别
     */
    private String sex;
    
    /*
     * 年龄
     */
    private int age;
   
    
    /**
     * set get方法略
     */


	@Override
	public String toString() {
		return "Person [age=" + age + ", name=" + name + ", sex=" + sex + "]";
	}

    
}


mapping_beanToxml.xml
转换规则配置文件如下

<!DOCTYPE databases PUBLIC   
"-//EXOLAB/Castor Mapping DTD Version 1.0//EN"  
"http://castor.exolab.org/mapping.dtd">
<mapping>
	<description>Basic mapping example</description>
	<class name="com.wj.castor.Person" auto-complete="true">
		<map-to xml="Person" />
		
		<field name="name">
			<bind-xml name="name" node="attribute" />
		</field>
		
		<field name="sex">
			<bind-xml name="sex" node="attribute" />
		</field>
		
		<field name="age">
			<bind-xml name="age" node="attribute" />
		</field>
	</class>
</mapping> 


转换生成结果文件person1.xml

<?xml version="1.0" encoding="UTF-8"?>
<array-list>
	<Person name="David" sex="女" age="24"/>
	<Person name="WJ" sex="男" age="25" />
</array-list>

分享到:
评论

相关推荐

    Castor的使用,如何将java object转换为xml

    Castor是一个开源的数据绑定框架,它允许Java开发者在Java对象和XML之间进行无缝转换。这个强大的工具能够将复杂的Java对象模型映射到XML文档,同时也能够将XML数据解析回等效的Java对象,极大地简化了Java应用中的...

    xml object 互转

    - `Castor`:另一个强大的Java对象与XML数据绑定工具,支持XML到Java对象以及Java对象到XML的双向转换。 5. **XML与JSON对比**: - JSON通常被认为比XML更简洁,更适合网络传输,因为它的语法更接近编程语言,...

    Castor实现XML与Java的互转

    Castor实现XML与Java的互转,是目前非常流行的WSDL中常用的方法。有兴趣的可以下载看看

    castor解析xml与xsd校验xml

    Castor是一个Java库,它提供了一种方便的方式来映射XML数据到Java对象,反之亦然。这个工具在处理XML文档时特别有用,因为它允许开发者通过简单的对象操作来处理复杂的XML结构,而无需直接处理XML语法。本文将深入...

    castor :Java与xml互转示例---代码

    Castor是一个开源的Java库,它提供了一个强大的框架,用于在Java对象和XML文档之间进行映射和转换。这个库的使用使得数据序列化和反序列化变得简单,尤其是在处理复杂的对象模型时。本文将深入探讨如何使用Castor在...

    castor样例xml to bean和bean to xml样例

    Castor是一个Java库,用于将XML数据映射到Java对象(即bean)和从Java对象反向映射回XML。这个“castor-1.3.1-examples.zip”文件包含了一些示例,展示了如何使用Castor进行XML到Bean以及Bean到XML的转换。这个过程...

    castor插件java对象和XML自动绑定maping文件生成和java对象一键生成工具

    Castor是一款强大的Java库,它提供了Java对象到XML数据的自动转换功能,反之亦然。这个插件的主要目的是简化XML处理,特别是在Java应用程序中。它通过创建映射文件(Mapping Files)来定义Java对象和XML元素之间的...

    castor-xml-1.3.2.jar

    Unmarshall与Marshall使用的castor-xml-1.3.2.jar包

    Spring 的Object/XML 映射支持Demo

    Spring 的Object/XML 映射支持Demo,spring结合第三方Castor Spring 3.0 的一个新特性是 O/X Mapper。O/X 映射器这个概念并不新鲜,O 代表 Object,X 代表 XML。它的目的是在 Java 对象(几乎总是一个 plain old ...

    castor解析xml

    castor解析xml

    xml的一个解析工具castor

    Castor是一个强大的Java库,主要用于XML到对象绑定和对象到XML的数据转换。它提供了一种简单的方法来将复杂的XML文档映射为Java对象,并且能够反向操作,将Java对象序列化为XML格式。这个工具在处理XML数据时极大地...

    castor1.4 xsd生成java

    在XML Schema(XSD)广泛应用于定义XML数据结构的今天,Castor提供了一个方便的方法,将XSD文件自动转化为Java类,使得开发者能够更轻松地处理XML数据。以下是关于"Castor 1.4 xsd生成java"的相关知识点: 1. **...

    javabean到XML的转换

    Castor提供了灵活性和便利性,可以处理复杂的数据结构和嵌套对象,是Java开发中进行对象-XML转换的一个有效工具。但需要注意的是,与JAXB等其他API相比,Castor的社区支持和更新可能相对较弱,因此在选择时需权衡...

    castor1-2(java and xml 数据绑定过程所需数据包)

    Castor是Java中一个强大的数据绑定框架,它允许开发者将XML文档与Java对象之间进行映射,从而实现XML数据的序列化和反序列化。在Java应用开发中,处理XML数据时,通常需要将XML文件内容转换为Java对象,或者将Java...

    castor插件java对象和XML自动绑定maping文件生成和java对象一键生成工具1.2

    Castor是一个Java库,它提供了一种将Java对象序列化为XML和反序列化XML回Java对象的能力。这个工具在处理XML数据时非常有用,尤其是当你需要在Java应用程序和XML数据之间建立映射关系时。在Java开发中,XML常用于...

    castor castor castor 资料

    Castor是一种开源的数据绑定框架,它允许在Java对象和XML之间进行双向转换。这个框架的主要目的是简化数据交换,使得开发者可以轻松地将Java对象序列化为XML,或者将XML反序列化为Java对象。这对于处理XML数据,如...

    XML数据绑定【castor】

    博客链接提到的是iteye上的一篇关于Castor的博客文章,可能详细介绍了如何使用Castor进行XML数据绑定,包括安装、配置、映射文件的创建以及示例代码等。 在实际应用中,使用Castor通常涉及以下步骤: 1. **安装与...

    XML_与_Java_技术_用_Castor_进行数据绑定.doc

    XML与Java技术之间的一种高效交互方式是通过数据绑定来实现的,其中Castor是一个流行的开源框架。数据绑定允许开发者将XML文档直接映射到Java对象,反之亦然,从而简化了处理XML数据的过程。这种方式特别适合那些...

    castor-1.2-xml-schema castor转化XML需要的jar包

    Castor 项目采用 BSD 类型的证书,因此可在任何类型的应用程序(包括完整版权的项目)中使用。 Castor 实际上仅仅有 XML 数据绑定,它还支持 SQL 和 LDAP 绑定

Global site tag (gtag.js) - Google Analytics