package cn.itcast.xml.parser.dom4j;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
import java.io.Writer;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
import org.junit.Test;
public class Demo2 {
private Document getDocument() throws Exception{
SAXReader reader = new SAXReader();
Document document = reader.read(new File("src/cn/itcast/xml/parser/dom4j/car.xml"));
return document;
}
private void writerToFile(Document document)throws Exception{
//取得输出格式
OutputFormat format = OutputFormat.createPrettyPrint();
//设置XML输出的编码方式
format.setEncoding("UTF-8");
//将内存中的字节转换成字符
Writer writer = new OutputStreamWriter(new FileOutputStream("src/cn/itcast/xml/parser/dom4j/car.xml"),"UTF-8");
//创建dom4j的输出字符流
XMLWriter xmlWriter = new XMLWriter(writer,format);
//真正输出
xmlWriter.write(document);
//关闭流
xmlWriter.close();
}
@Test
public void create() throws Exception{
Document document = this.getDocument();
Element rootElement = document.getRootElement();
Element carElement = rootElement.element("汽车");
carElement.addElement("单价").setText("25万");
this.writerToFile(document);
}
@Test
public void update() throws Exception{
Document document = this.getDocument();
Element rootElement = document.getRootElement();
Element carElement = (Element) rootElement.elements("汽车").get(1);
carElement.element("产地").setText("广州");
this.writerToFile(document);
}
@Test
public void delete() throws Exception{
Document document = this.getDocument();
Element rootElement = document.getRootElement();
Element priceElement = rootElement.element("汽车").element("单价");
priceElement.getParent().remove(priceElement);
this.writerToFile(document);
}
}
分享到:
相关推荐
本篇文章将详细讲解如何利用DOM4j在Java环境中实现XML文件的创建(Create)、读取(Read)、更新(Update)和删除(Delete),即CRUD操作,并结合Servlet技术进行实际应用。 1. 创建XML文件 DOM4j提供...
在这个案例中,我们将深入探讨如何利用Dom4j实现XML文档的增删改查操作,并遵循分层架构的思想来组织代码。 **一、Dom4j解析XML** 1. **解析XML文档**:Dom4j通过`DocumentBuilderFactory`和`DocumentBuilder`来...
"2012-4-10 有关 xml dom4j的 crud"可能是另一个教程或者笔记,详细讲解了如何利用DOM4J进行XML的CRUD操作。这个文件可能包含了详细的步骤和代码示例,对于学习DOM4J非常有帮助。 "自己写的 dom4j的例子"很显然是...
总的来说,“Dom4jTest.rar”项目展示了如何利用Java和DOM4J处理XML数据,以及如何将这些数据集成到SOAP Web服务中。通过这个项目,开发者可以学习到XML解析、Web服务开发以及如何在没有传统数据库的情况下存储和...
本程序集的核心是利用Java解析XML文件,将XML中的数据映射到数据库,并通过反射机制进行数据库操作。下面将详细阐述这些知识点。 首先,XML解析在Java中通常有两种方式:DOM(Document Object Model)和SAX(Simple...
我们可以使用如JDOM、DOM4J或者Java内置的DOM、SAX、StAX等API来解析XML。在解析完成后,Java代码可以通过字符串操作或者模板引擎(如FreeMarker、Velocity等)生成目标代码。 下面是一个简化的步骤概述: 1. **...
总结来说,这个入门实例涵盖了使用Java通过JDBC调用Oracle存储过程进行CRUD操作的基本流程,以及利用DOM4J解析XML配置文件和`ThreadLocal`管理数据库连接的方法。这样的设计使得程序更加模块化,易于维护,同时也...
- 熟悉DOM4J库的使用,能有效地对XML文件进行读写操作。 2. **环境搭建**: - **JDK安装**:首先需要安装JDK,可以选择默认安装路径或自定义路径,例如`C:\jdk`。安装完成后,需要配置环境变量,包括`JAVA_HOME`...
在本项目"java运用小程序"中,重点在于利用Java技术处理XML文件,进行创建(Create)、读取(Read)、更新(Update)和删除(Delete)等CRUD操作。XML(Extensible Markup Language)是一种数据交换格式,常用于存储...
4. 农户征信管理平台设计:在这个平台中,农户信息、信用评估、借贷记录等关键数据都可以通过Hibernate进行持久化处理。通过定义对应的Java实体类,并使用Hibernate的注解或者XML配置文件建立对象与数据库表的映射,...
在处理XML配置文件、进行XML数据交换时,Dom4j是开发者常用的选择。 除了这两个库,还提到了Hibernate,这是一个非常流行的Java对象关系映射(ORM)框架。虽然这个集合没有包含Hibernate 3.0的jar包,但开发者可以...
**DOM4J**: 在处理XML文档时,DOM4J是一个非常强大的库。它提供了DOM、SAX和StAX的API,简化了XML的解析、创建和修改。DOM4J的灵活性和效率使其成为EJB开发中处理XML的理想选择。 **Spring框架与EJB**: Spring框架...
- dom4j.jar:提供XML处理功能,Hibernate使用它来读取和写入XML配置文件。 - hibernate-jpa-2.1-api.jar:JPA的API库,用于支持JPA规范。 - javassist.jar:动态类生成工具,Hibernate利用它来动态地修改类的...
5. **dom4j-1.6.1.jar**:一个XML解析库,Hibernate使用它来处理XML配置文件和映射文档。 6. **slf4j-api-1.7.25.jar**:SLF4J的API库,为应用程序提供日志服务的接口。 7. **jaas.jar**:Java Authentication and...
在博客系统中,使用dom4j实现DAO与表现层的解耦,意味着可能利用XML配置文件来描述DAO层的逻辑,这样,当DAO层的改动不需修改表现层代码,降低了两者之间的依赖性,提高了系统的可扩展性。 5. **用户管理模块**: ...
5. **dom4j.jar**:DOM4J是一个Java文档对象模型库,用于处理XML文档。Hibernate使用它来处理映射文件(.hbm.xml)。 6. **ehcache.jar**:EhCache是一个内存缓存系统,用于提高数据库操作的性能。Hibernate可以...
在Hibernate中,dom4j用于解析和生成ORM配置文件(如hibernate.cfg.xml)以及映射文件(如.hbm.xml)。 3. `antlr-2.7.6.jar`: ANTLR是一个强大的解析工具,用于构建语法分析器。Hibernate使用ANTLR解析HQL...
3. `dom4j.jar`:DOM4J是一个强大的Java XML处理库,用于读写XML文件,被Hibernate用作XML文档处理工具。 4. `commons-collections.jar`:Apache Commons Collections库,提供许多实用的集合类和算法,为Hibernate...
4. `dom4j-1.6.1.jar`:一个强大的XML处理库,Hibernate用它来解析和生成XML配置文件。 5. `ehcache-2.x.x.jar`:Ehcache是一个广泛使用的缓存库,Hibernate可选择性地集成它来实现缓存机制,提高性能。 6. `slf4j-...
5. **dom4j-1.6.1.jar**:DOM4J是一个用于处理XML的Java库,Hibernate使用它来读取和写入配置文件,如hibernate.cfg.xml。 6. **slf4j-api-1.5.8.jar 和 slf4j-simple-1.5.8.jar**:简单日志门面(SLF4J)提供了...