`
phantomhu
  • 浏览: 19897 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

Commons Betwixt 二步

阅读更多
设置输出xml的格式 1 指定元素的格式
默认情况下 输出是按照write("xxx", yyy); 中xxx的方式输出 同时bean的首字母大写
例如
java 代码
  1. public class Music
  2. {
  3. private String name;
  4. private String mp3File;
  5. public Music()
  6. {
  7. }
  8. /**
  9. * @return the name
  10. */
  11. public String getName()
  12. {
  13. return this.name;
  14. }
  15. /**
  16. * @param name
  17. * the name to set
  18. */
  19. public void setName(String name)
  20. {
  21. this.name = name;
  22. }
  23. /**
  24. * @return the mp3File
  25. */
  26. public String getMp3File()
  27. {
  28. return this.mp3File;
  29. }
  30. /**
  31. * @param mp3File
  32. * the mp3File to set
  33. */
  34. public void setMp3File(String mp3File)
  35. {
  36. this.mp3File = mp3File;
  37. }
  38. }

java 代码
  1. Music music = new Music();
  2. music.setName("music_name");
  3. music.setMp3File("music_mp3file");
  4. Writer outputWriter = new FileWriter("e:\\test.xml");
  5. BeanWriter beanWriter = new BeanWriter(outputWriter);


  6. beanWriter.getXMLIntrospector().getConfiguration().setAttributesForPrimitives(false);
  7. beanWriter.getBindingConfiguration().setMapIDs(false);
  8. beanWriter.enablePrettyPrint();
  9. beanWriter.setEndTagForEmptyElement(true);
  10. beanWriter.setIndent("\t");
  11. //
  12. beanWriter.writeXmlDeclaration("");

  13. beanWriter.write("Msg", music);
  14. outputWriter.close();

输出结果为
xml 代码
  1. xml version='1.0' ?>
  2. <Msg>
  3. <Music>
  4. <mp3File>music_mp3file<!---->mp3File>
  5. <name>music_name<!---->name>
  6. <!---->Music>
  7. <!---->Msg>

指定NameMapper来重新定义大小写
java 代码
  1. beanWriter.getXMLIntrospector().getConfiguration().setElementNameMapper(new org.apache.commons.betwixt.strategy.DecapitalizeNameMapper());

输出结果为
xml 代码
  1. xml version='1.0' ?>
  2. <Msg>
  3. <music>
  4. <mp3File>music_mp3file<!---->mp3File>
  5. <name>music_name<!---->name>
  6. <!---->music>
  7. <!---->Msg>

DecapitalizeNameMapper 指定为小写
CapitalizeNameMapper 指定为大写
HyphenatedNameMapper 指定为连接符 比如mp3File ==> mp3-file

使用
HyphenatedNameMapper 结果为
xml 代码
  1. xml version='1.0' ?>
  2. <Msg>
  3. <music>
  4. <mp3-file>music_mp3file<!---->mp3-file>
  5. <name>music_name<!---->name>
  6. <!---->music>
  7. <!---->Msg>

可以通过
java 代码
  1. HyphenatedNameMapper.setUpperCase(true)
设置首字母的大小写

实现NameMapper来定义自己的现实方式
java 代码
  1. class ItsANameMapper implements NameMapper {
  2. public String mapTypeToElementName(String typeName) {
  3. return " its_a_" + typeName;
  4. }
  5. }














分享到:
评论

相关推荐

    commons-betwixt-0.8的相关文件

    描述中提到的两个文件:"commons-betwixt-0.8.zip"和"commons-betwixt-0.8-src.zip" 分别代表了编译后的二进制库和源代码包。`commons-betwixt-0.8.zip`很可能包含了已编译的JAR文件,这些文件可以直接在项目中作为...

    commons-betwixt-0.8.rar源文件及jar包

    2. **智能默认值**:在没有显式映射规则时,Betwixt会使用默认策略来生成XML,如使用字段名作为元素标签,字段值作为文本内容。 3. **自定义转换器**:你可以定义自己的转换器来处理特定类型的字段,比如日期、货币...

    java使用commons-betwixt 实现bean与xml互转

    Java中的Apache Commons Betwixt库提供了一个简单的方法来映射Java Bean对象和XML文档之间的数据,使得在处理数据交换时能轻松地实现bean到XML的转换和XML到bean的反转换。本篇文章将深入探讨如何使用Commons ...

    commons-betwixt-0.5-src.zip_ObjectStringConvert_commons-betwixt_

    Apache Commons Betwixt 是一个Java库,它简化了JavaBean对象与XML文档之间的相互转换。这个工具包的核心功能在于,它允许开发者自动地将JavaBean的属性映射到XML结构,反之亦然,极大地提高了开发效率,尤其是在...

    commons-betwixt-0.8.jar

    commons-betwixt-0.8.jar

    betwixt详细使用说明

    2. `commons-logging-1.0.4.jar`:日志服务框架,用于记录 Betwixt 在运行时的信息。 3. `commons-beanutils-1.8.0-BETA.jar`:包含 Bean 工具,用于处理 Java beans 的属性。 此外,如果你需要将 XML 转换为 Java ...

    orgapache_commons

    包括commons-beanutils-1.8.0-bin、commons-betwixt-0.8、commons-cli-1.1、commons-codec-1.3、commons-collections-3.2.1-bin、commons-digester-1.8、commons-discovery-0.4、commons-email-1.1-bin、commons-...

    xml操作之betwixt实例

    **XML操作之Betwixt实例** XML(Extensible Markup Language)是一种用于标记数据的语言,广泛应用于数据交换、配置文件和文档存储等领域。在Java开发中,处理XML时,Betwixt是一个非常有用的库,它由Apache软件...

    org.apache.commons相关的所以jar包

    commons-betwixt-0.8.zip;commons-cli-1.1.zip;commons-codec-1.3.zip;commons-collections-3.2.1-bin.zip;commons-digester-1.8.zip;commons-discovery-0.4.zip;commons-email-1.1-bin.zip;commons-...

    commons整理的常用的jar包,希望对你们有用

    commons-betwixt-0.8、 commons-cli-1.1、 commons-codec-1.3、 commons-collections-3.2.1-bin、 commons-digester-1.8、 commons-discovery-0.4、 commons-email-1.1-bin、 commons-fileupload-1.2.1-bin、...

    Apache Commons 所有包最新版本 含SRC (6/7)

    commons-attributes-2.2-src.zip commons-attributes-2.2.zip commons-beanutils-1.8.0-BETA-src.zip commons-beanutils-1.8.0-BETA.zip commons-betwixt-0.8-src.zip commons-betwixt-0.8.zip ...

    apache-commons源文件1,包括src,doc,jar,最新的

    commons-betwixt-0.8.zip commons-chain-1.2-bin.zip commons-cli-1.2-bin.zip commons-codec-1.7-bin.zip commons-collections-3.2.1-bin.zip commons-compress-1.4.1-bin.zip commons-configuration-1.9-bin.zip ...

    XML操作之betwixt

    1. **引入库**:你需要将`commons-betwixt-0.8.jar`文件添加到你的项目类路径中,这是使用Betwixt的前提。 2. **创建Java Bean**:定义一个Java类,包含你想要映射到XML的属性。这些属性将对应XML文档中的元素。 3...

    Apache Commons 所有包最新版本 含SRC (2/7)

    commons-attributes-2.2-src.zip commons-attributes-2.2.zip commons-beanutils-1.8.0-BETA-src.zip commons-beanutils-1.8.0-BETA.zip commons-betwixt-0.8-src.zip commons-betwixt-0.8.zip ...

    Apache Commons 所有包最新版本 含SRC (5/7)

    commons-attributes-2.2-src.zip commons-attributes-2.2.zip commons-beanutils-1.8.0-BETA-src.zip commons-beanutils-1.8.0-BETA.zip commons-betwixt-0.8-src.zip commons-betwixt-0.8.zip ...

    commons jar

    5. **commons-betwixt-0.8.jar**:Apache Commons Betwixt是一个对象到XML绑定工具,可以帮助将Java对象序列化为XML,以及从XML反序列化回Java对象。0.8版本提供了一种声明性的方式来描述对象和XML之间的映射。 6. ...

    xml转换java对象

    Apache Commons Betwixt库提供了一种简单的方法来实现这个转换。 Apache Commons Betwixt是Apache软件基金会的一个项目,它提供了一个用于XML到Java对象绑定的工具。通过使用Betwixt,开发者可以轻松地将XML文档...

    apache-commons源码及jar文件

    Apache Commons是一个非常有用的工具包,解决各种实际的通用问题。(附件中提供了该工具包的jar包,及源文件以供研究) BeanUtils Commons-BeanUtils 提供对 Java 反射和自省API的包装 Betwixt Betwixt提供将 ...

    Apache Commons 所有包最新版本 含SRC (1/7)

    commons-attributes-2.2-src.zip commons-attributes-2.2.zip commons-beanutils-1.8.0-BETA-src.zip commons-beanutils-1.8.0-BETA.zip commons-betwixt-0.8-src.zip commons-betwixt-0.8.zip ...

    Apache Commons 所有包最新版本 含SRC (3/7)

    commons-attributes-2.2-src.zip commons-attributes-2.2.zip commons-beanutils-1.8.0-BETA-src.zip commons-beanutils-1.8.0-BETA.zip commons-betwixt-0.8-src.zip commons-betwixt-0.8.zip ...

Global site tag (gtag.js) - Google Analytics