Jakarta-Common-BetWixt使用笔记

可以使用它把Javabean转换成XML并输出。

下载地址:http://commons.apache.org/beanutils/                代码如下:

Javabean:

package  demo.bean;

public   class  Music  {

    
private String name;

    
private String mp3File;

    
public String getName() {
        
return name;
    }


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


    
public String getMp3File() {
        
return mp3File;
    }


    
public void setMp3File(String mp3File) {
        
this.mp3File = mp3File;
    }

}

测试代码:

package  demo;

import  java.beans.IntrospectionException;
import  java.io.FileWriter;
import  java.io.IOException;
import  java.io.Writer;

import  org.apache.commons.betwixt.io.BeanWriter;
import  org.xml.sax.SAXException;

import  demo.bean.Music;

public   class  BetwixtDemo  {

    
public static void main(String[] args) throws IOException, SAXException, IntrospectionException {
        
        Music music 
= new Music(); 
        music.setName(
"music_name"); 
        music.setMp3File(
"music_mp3file"); 
        Writer outputWriter 
= new FileWriter("e:/test.xml"); 
        BeanWriter beanWriter 
= new BeanWriter(outputWriter);
        beanWriter.getXMLIntrospector().getConfiguration().setAttributesForPrimitives(
false); 
        beanWriter.getBindingConfiguration().setMapIDs(
false); 
        beanWriter.enablePrettyPrint(); 
        beanWriter.setEndTagForEmptyElement(
true); 
        beanWriter.setIndent(
" "); 
        beanWriter.writeXmlDeclaration(
"<?xml version="1.0" encoding="UTF-8" ?>"); 
        beanWriter.write(
"Msg", music); 
        outputWriter.close(); 
    }

}

可指定 NameMapper 来重新定 大小写
beanWriter.getXMLIntrospector().getConfiguration().setElementNameMapper(new org.apache.commons.betwixt.strategy.DecapitalizeNameMapper());
其中:
DecapitalizeNameMapper 指定 小写
CapitalizeNameMapper 指定 大写
HyphenatedNameMapper 指定 为连 接符 比如 mp3File ==> mp3-file
可以通过 HyphenatedNameMapper.setUpperCase(true)设置首字母的大小写
也可实现NameMapper来定义自己的现实方式
如:class ItsANameMapper implements NameMapper { ...... }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值