- 浏览: 20065 次
- 性别:
- 来自: 北京
最新评论
-
lyo:
性能方面写的过于简单了,而且经过试验没有效果,我得数据量才 1 ...
SOLR 性能调优 -
wutao8818:
Solr在tomcat上的部署 -
hejian1860:
it's simple to install solr, we ...
Solr在tomcat上的部署 -
抛出异常的爱:
出处不详.不要放到这个版 。。。。
Java开发者的十大戒律
稍微复杂一点的应用实例,idf项目所用的xml更为复杂头晕中
Doc.betwixt
Resource.betwixt
测试代码
输出结果
java 代码
- package betwixt;
- /**
- *
- */
- /**
- * @author huyunan
- *
- *
- * 2007 aspire
- */
- public class Music
- {
- private String name;
- private String mp3File;
- public Music()
- {
- }
- /**
- * @return the name
- */
- public String getName()
- {
- return this.name;
- }
- /**
- * @param name
- * the name to set
- */
- public void setName(String name)
- {
- this.name = name;
- }
- /**
- * @return the mp3File
- */
- public String getMp3File()
- {
- return this.mp3File;
- }
- /**
- * @param mp3File
- * the mp3File to set
- */
- public void setMp3File(String mp3File)
- {
- this.mp3File = mp3File;
- }
- }
java 代码
- package betwixt;
- /**
- *
- */
- /**
- * @author huyunan
- *
- *
- * 2007 aspire
- */
- public class Doc
- {
- private String version;
- private String name;
- private String url;
- public Doc()
- {
- }
- /**
- * @return the name
- */
- public String getDocName()
- {
- return this.name;
- }
- /**
- * @param name
- * the name to set
- */
- public void setName(String name)
- {
- this.name = name;
- }
- /**
- * @return the url
- */
- public String getUrl()
- {
- return this.url;
- }
- /**
- * @param url
- * the url to set
- */
- public void setUrl(String url)
- {
- this.url = url;
- }
- /**
- * @return the version
- */
- public String getVersion()
- {
- return this.version;
- }
- /**
- * @param version
- * the version to set
- */
- public void setVersion(String version)
- {
- this.version = version;
- }
- }
Doc.betwixt
xml 代码
- <?xml version="1.0" encoding="UTF-8" ?>
- <info primitiveTypes="element">
- <element name="docResource">
- <attribute name="version" property="version" />
- <element name="contentUrl" property="url" />
- <addDefaults />
- </element>
- </info>
java 代码
- /**
- *
- */
- package betwixt;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- /**
- * @author huyunan
- *
- *
- * 2007 aspire
- */
- public class Resource
- {
- private String version;
- private String name;
- private String author;
- private Doc doc;
- private Music music;
- private List<Doc> docList;
- private List<Music> musicList;
- private HashMap<String, Doc> docMap;
- private int docsSize;
- private int musicsSize;
- public Resource()
- {
- docList = new ArrayList<Doc>();
- musicList = new ArrayList<Music>();
- docMap = new HashMap<String, Doc>();
- }
- public void addToDocMap(String key, Doc doc)
- {
- docMap.put(key, doc);
- }
- public Map getDocMap()
- {
- return docMap;
- }
- public void addToDocList(Doc doc)
- {
- docList.add(doc);
- docsSize = docList.size();
- }
- public void addToMusicList(Music music)
- {
- musicList.add(music);
- musicsSize = musicList.size();
- }
- /**
- * @return the docsSize
- */
- public int getDocsSize()
- {
- return this.docsSize;
- }
- /**
- * @param docsSize
- * the docsSize to set
- */
- public void setDocsSize(int docsSize)
- {
- this.docsSize = docsSize;
- }
- /**
- * @return the docList
- */
- public List<Doc> getDocList()
- {
- return this.docList;
- }
- /**
- * @return the name
- */
- public String getName()
- {
- return this.name;
- }
- /**
- * @param name
- * the name to set
- */
- public void setName(String name)
- {
- this.name = name;
- }
- /**
- * @return the author
- */
- public String getAuthor()
- {
- return this.author;
- }
- /**
- * @return the doc
- */
- public Doc getDoc()
- {
- return this.doc;
- }
- /**
- * @param doc
- * the doc to set
- */
- public void setDoc(Doc doc)
- {
- this.doc = doc;
- }
- /**
- * @param author
- * the author to set
- */
- public void setAuthor(String author)
- {
- this.author = author;
- }
- /**
- * @return the version
- */
- public String getVersion()
- {
- return this.version;
- }
- /**
- * @param version
- * the version to set
- */
- public void setVersion(String version)
- {
- this.version = version;
- }
- /**
- * @return the music
- */
- public Music getMusic()
- {
- return this.music;
- }
- /**
- * @param music
- * the music to set
- */
- public void setMusic(Music music)
- {
- this.music = music;
- }
- /**
- * @return the musicList
- */
- public List<Music> getMusicList()
- {
- return this.musicList;
- }
- /**
- * @return the musicsSize
- */
- public int getMusicsSize()
- {
- return this.musicsSize;
- }
- /**
- * @param musicsSize
- * the musicsSize to set
- */
- public void setMusicsSize(int musicsSize)
- {
- this.musicsSize = musicsSize;
- }
- }
Resource.betwixt
xml 代码
- <?xml version="1.0" encoding="UTF-8" ?>
- <info primitiveTypes="element">
- <element name="sync">
- <attribute name="version" property="version"/>
- <element name="resource">
- <!--
- <hide property="name" />
- -->
- <element name="musicRes" property="music"/>
- <element name="docList">
- <attribute name="docsSize" property="docsSize"/>
- <element name="doc" property="docList"/>
- </element>
- <element name="musicList">
- <attribute name="musicsSize" property="musicsSize"/>
- <element name="music" property="musicList"/>
- </element>
- <element name="docMap">
- <element name="doc" property="docMap"/>
- </element>
- <addDefaults/>
- </element>
- </element>
- </info>
测试代码
java 代码
- Doc doc = new Doc();
- doc.setName("doc_name");
- doc.setUrl("doc_url");
- doc.setVersion("1.0.0");
- Music music = new Music();
- music.setName("music_name");
- music.setMp3File("music_mp3file");
- Resource resource = new Resource();
- resource.setVersion("1.0.0");
- resource.setDoc(doc);
- resource.setMusic(music);
- resource.setName("resource_name");
- resource.setAuthor("resource_author");
- //
- resource.addToDocList(doc);
- resource.addToDocList(doc);
- resource.addToMusicList(music);
- resource.addToMusicList(music);
- //
- resource.addToDocMap("doc1", doc);
- // resource.addToMap("mucis1", music);
- //
- Writer outputWriter = new FileWriter("e:\\test.xml");
- BeanWriter beanWriter = new BeanWriter(outputWriter);
- /**
- * beanWriter.getXMLIntrospector().getConfiguration().setElementNameMapper(new
- * org.apache.commons.betwixt.strategy.DecapitalizeNameMapper());
- * beanWriter.getXMLIntrospector().getConfiguration().setElementNameMapper(new
- * org.apache.commons.betwixt.strategy.CapitalizeNameMapper());
- * beanWriter.getXMLIntrospector().getConfiguration().setElementNameMapper(new
- * org.apache.commons.betwixt.strategy.HyphenatedNameMapper());
- */
- // beanWriter.getXMLIntrospector().getConfiguration().setPluralStemmer(new
- // ChinesePluralMapper());
- beanWriter.getXMLIntrospector().getConfiguration().setAttributesForPrimitives(false);
- beanWriter.getBindingConfiguration().setMapIDs(false);
- beanWriter.enablePrettyPrint();
- beanWriter.setEndTagForEmptyElement(true);
- beanWriter.setIndent("\t");
- //
- beanWriter.writeXmlDeclaration("<?xml version=\'1.0\' ?>");
- beanWriter.write(resource);
- outputWriter.close();
输出结果
xml 代码
- <?xml version='1.0' ?>
- <sync version="1.0.0">
- <resource>
- <musicRes>
- <mp3File>music_mp3file</mp3File>
- <name>music_name</name>
- </musicRes>
- <docList docsSize="2">
- <doc version="1.0.0">
- <contentUrl>doc_url</contentUrl>
- <docName>doc_name</docName>
- </doc>
- <doc version="1.0.0">
- <contentUrl>doc_url</contentUrl>
- <docName>doc_name</docName>
- </doc>
- </docList>
- <musicList musicsSize="2">
- <music>
- <mp3File>music_mp3file</mp3File>
- <name>music_name</name<sp>
发表评论
-
SOLR 性能调优
2008-01-14 13:11 3153索引建立的性能因素 1)参数mergeFactor 表明索引段 ... -
Solr在tomcat上的部署
2008-01-11 16:06 1316我下载的是1.2.0 解压缩后将dist目录中的war包放到 ... -
Commons Betwixt 四步
2007-12-21 11:15 1138使用定义的xml模板 定义负责的输出模式可以使用xml模板,模 ... -
Commons Betwixt 三步
2007-12-20 14:02 1134输出的xml中元素的名称是按照bean中定义的getXXX方法 ... -
Commons Betwixt 二步
2007-12-19 10:54 1118设置输出xml的格式 1 指定元素的格式 默认情况下 输出是按 ... -
Commons Betwixt初步
2007-12-18 12:34 1194项目需要向其他合作方同步资源信息,因此要生成xml文件,以前用 ...
相关推荐
Apache Commons Betwixt 是一个Java库,它提供了一种方式来映射XML文档到Java对象,反之亦然。这个库使得开发人员可以方便地在XML数据和Java对象之间进行转换,大大简化了数据交换和序列化的过程。"commons-betwixt-...
Apache Commons Betwixt 是一个Java库,它提供了一种简单的方式来映射对象到XML以及从XML反向映射回对象。这个库是基于Apache软件基金会的Jakarta Commons项目,旨在简化XML数据绑定任务,使得开发者可以专注于业务...
Java中的Apache Commons Betwixt库提供了一个简单的方法来映射Java Bean对象和XML文档之间的数据,使得在处理数据交换时能轻松地实现bean到XML的转换和XML到bean的反转换。本篇文章将深入探讨如何使用Commons ...
Apache Commons Betwixt 是一个Java库,它简化了JavaBean对象与XML文档之间的相互转换。这个工具包的核心功能在于,它允许开发者自动地将JavaBean的属性映射到XML结构,反之亦然,极大地提高了开发效率,尤其是在...
commons-betwixt-0.8.jar
此外,如果你需要将 XML 转换为 Java 对象,还需要引入 `commons-digester-1.8.jar`,因为 Betwixt 在进行反向转换时依赖于 Commons Digester。 接下来,我们来看一个简单的示例(example1),演示如何将一个 Java ...
包括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(Extensible Markup Language)是一种用于标记数据的语言,广泛应用于数据交换、配置文件和文档存储等领域。在Java开发中,处理XML时,Betwixt是一个非常有用的库,它由Apache软件...
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-...
Apache Commons Betwixt库提供了一种简单的方法来实现这个转换。 Apache Commons Betwixt是Apache软件基金会的一个项目,它提供了一个用于XML到Java对象绑定的工具。通过使用Betwixt,开发者可以轻松地将XML文档...
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、...
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-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 ...
5. **commons-betwixt-0.8.jar**:Apache Commons Betwixt是一个对象到XML绑定工具,可以帮助将Java对象序列化为XML,以及从XML反序列化回Java对象。0.8版本提供了一种声明性的方式来描述对象和XML之间的映射。 6. ...
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是一个非常有用的工具包,解决各种实际的通用问题。(附件中提供了该工具包的jar包,及源文件以供研究) BeanUtils Commons-BeanUtils 提供对 Java 反射和自省API的包装 Betwixt Betwixt提供将 ...
daemon-1.0.15-bin commons-dbutils-1.6-bin commons-digester3-3.2-bin commons-el-1.0 commons-email-1.4-bin commons-fileupload-1.0 commons-fileupload-1.1.1 commons-fileupload-1.1 commons-file upload-...
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-lang3.3.1.jar、Apache Commons包中的一个,包含了一些数据类型工具类,是java.lang.*的扩展。必须使用的jar包。为JRE5.0+的更好的版本所提供 Jar文件包含的类: META-INF/MANIFEST.MFMETA-INF/LICENSE....
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 ...