//对象转换成xml
public String createSiteConfig(Site site) {
StringBuffer sb = new StringBuffer();
sb.append("<?xml version=\"1.0\" encoding=\"GBK\"?>");
sb.append("<site>");
sb.append("<domain>").append(site.getDomain()).append("</domain>");
sb.append("<nick>").append(site.getNick()).append("</nick>");
sb.append("<keyWords>").append(site.getKeyWords()).append("</keyWords>");
sb.append("<description>").append(site.getDescription()).append("</description>");
sb.append("</site>");
return sb.toString();
}
//xml转换成对象
public Site getSiteConfig(String str) {
Site site = null;
Digester digester = new Digester();
//把SiteConfig实例放入堆栈顶端,指针指向SiteConfig实例
digester.addObjectCreate("site", Site.class);
digester.addBeanPropertySetter("site/domain");
digester.addBeanPropertySetter("site/nick");
digester.addBeanPropertySetter("site/keyWords");
digester.addBeanPropertySetter("site/description");
try {
site = (Site) digester.parse(new StringReader(str));
} catch (Exception e) {
throw new RuntimeException("Read Site Config File Error");
}
return site;
}
分享到:
相关推荐
在本案例中,我们将深入探讨`digester`的用法,以及如何通过它来实现XML到Java对象的映射。 首先,我们需要了解XML解析的基本概念。XML(eXtensible Markup Language)是一种用于标记数据的语言,常用于存储和传输...
Digester的基本概念** Digester的核心思想是基于模式匹配来处理XML文档。每个XML元素对应一个处理规则,当解析到特定的XML元素时,就会执行相应的Java方法。这种机制类似于HTML解析中的事件驱动模型,只不过这里的...
下面我们将深入探讨 Digester 的关键概念和使用方法: 1. **初始化 Digester**: 在使用 Digester 之前,我们需要创建一个 Digester 实例,并设置一些基本配置,例如XML解析器的命名空间处理等。然后可以通过 `...
使用Digester的基本步骤如下: 1. 创建一个`Digester`实例。实例化后,它可以安全地重复使用,但需要注意的是,它是非线程安全的。 2. 配置`Digester`属性,例如设置是否验证XML文档。 3. 添加处理规则,这些规则...
Castor和Digester是两个在Java开发中用于对象与XML数据之间进行映射的库,它们简化了XML数据的解析和...通过上述实例,你应该对如何使用Castor和Digester有了基本的理解,但要完全掌握它们,还需要进一步的实践和学习。
2. **初始化 Stack**:使用 `Digester.push()` 方法将一个初始对象放入 Digester 的 Stack 中。这个初始对象在整个解析过程中将起到桥梁的作用,使得最终可以访问到解析得到的对象。 3. **注册匹配模式和规则**:...
使用Digester的基本步骤包括创建Digester实例、设置解析规则、然后调用`parse()`方法解析XML。 4. **规则定义** Digester的规则是通过`addRule()`方法添加的。例如,你可以使用`addRuleSet()`添加一个预定义的...
- **初始化对象**: 使用`push`方法向Digester使用的栈中添加一个初始对象。这是为了确保在解析过程中能够正确地保存和访问创建的对象。 - **注册规则**: 为每个需要处理的XML元素注册对应的规则。 - **解析XML文件**...
1. **初始化 Digester**:创建一个Digester实例,并设定基本的解析参数,如命名空间处理、错误处理等。 2. **注册 RuleSet**:根据业务需求,向Digester实例添加适当的RuleSet,这些RuleSet包含了处理XML数据的规则...
Apache Digester的核心功能是通过定义一系列规则(Rule),将XML文档中的元素与Java对象的方法或属性关联起来。这些规则在XML解析过程中被触发,从而自动创建和填充Java对象。这种工作方式极大地提高了开发效率,...
在“浅谈第一次使用”的描述中,可能涵盖了博主初次尝试使用Digester时的经验和遇到的问题,以及逐步理解和掌握该工具的过程。由于描述信息为空,我们无法获取具体的细节,但可以假设内容可能包括了基本概念介绍、...
首先,我们需要理解Digester的基本概念。Digester是一个规则驱动的XML解析器,它通过匹配XML元素路径来执行相应的Java方法,从而实现XML到Java对象的映射。这种映射过程通常称为“规则”。规则可以是创建新对象、...
**三、使用Digester的基本步骤** 1. **引入依赖**:在项目中添加Apache Commons Digester的库依赖。 2. **创建规则**:定义一系列Rule,每个Rule都包含一个匹配模式和一个处理动作。 3. **初始化Digester**:创建...
在本文中,我们将深入探讨Java解析XML文件,特别是使用Digester库的过程。 1. **Java解析XML的基本概念** 在Java中,解析XML文件通常有两种主要方法:DOM(Document Object Model)和SAX(Simple API for XML)。...
下面将详细介绍这个库的功能、使用方法以及在实际开发中的应用。 1. **Apache Commons Digester简介** Apache Commons Digester是Apache软件基金会的一个开源项目,它提供了一种方式来将XML文档的元素与Java对象的...
3. **命名空间支持**:除了基本的XML元素匹配,Digester还支持XML命名空间,这使得处理符合XML标准的复杂文档变得更加方便。 4. **类型安全的属性设置**:Digester允许开发者指定类型安全的属性,以确保设置到Java...
2. **解析 XML**:使用 Digester 的 `parse` 方法,传入XML文件的输入流。这将启动XML解析器并开始解析XML文档。 3. **匹配规则**: Digester 遍历XML文档的元素,每当遇到一个与已定义规则匹配的元素时,就执行...
### 使用Digester解析XML文档示例 #### 一、Digester简介与应用场景 ...通过本篇示例的学习,读者可以了解到Digester的基本使用方法及其在实际开发中的应用,从而更好地利用这一工具解决XML解析问题。
标题“digester-rules”指的是Apache Commons Digester的规则...不过,上述内容已经覆盖了关于digester-rules的基本概念和使用要点。在实际项目中,开发者通常会结合具体的代码示例和规则定义来学习和应用这个工具。
1. "Digester笔记2.doc":可能包含了更深入的Digester使用技巧和案例,包括自定义规则和处理复杂XML结构的方法。 2. "Digester笔记.doc":基础的Digester教程,覆盖了基本的XML解析和对象绑定操作。 3. "文件合并...