浏览 2129 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-11-07
public void open(String url);从url打开一个xml文档,当文档不存在时创建。 public void open(File);从File打开一个xml文档,当文档不存在时创建。 public void add(Object o);添加一个对象到root下 public void add(List<Object> entries);添加一组对象到root下 public void delete(String xPath);通过xpath删除一个或多个element public List<Object> find(String xPath);通过xpath找到一组元素. public void update(String xPath,String value);更新一个或一组属性的value public void save();保存当前文档 public void saveAs(String url);保存当前文档到指定的url public void setRootName(String rootName);设置root元素的名字,如果不设置默认值为"root".而且这个方法一定要在open()方法之前才会有效. 测试类: import java.util.List; import java.util.ArrayList; public class TestObject { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub addTest(); } public static void deleteTest(){ JomperXMLOperator jxo = new JomperXMLOperator(); jxo.open("test.xml"); jxo.delete("//Content[@contentLength='2']"); jxo.save(); } public static void updateTest(){ JomperXMLOperator jxo = new JomperXMLOperator(); jxo.open("test.xml"); jxo.update("//Content[@contentLength='2']/@connectionType", "ok"); jxo.save(); } public static void findTest(){ JomperXMLOperator jxo = new JomperXMLOperator(); jxo.open("test.xml"); List l = jxo.find("//Content[@contentLength='2']/@connectionType"); System.out.println(l);// System.out.println(l.size()); } public static void addTest(){ Content c = new Content(); c.setConnectionType("connectionType"); c.setContentType("contentType"); c.setContentDisposition("contentDisposition"); c.setContentLength(1); c.setFileName("fileName"); c.setKeepAlive("keepAlive"); c.setServerDate("serverDate"); c.setServerType("serverType"); List l = new ArrayList(); l.add(c); JomperXMLOperator jxo = new JomperXMLOperator(); jxo.setRootName("Contents"); jxo.open("test.xml"); jxo.add(l); jxo.saveAs("ok.xml"); } } 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-11-14
增加一个回调方法,可以识别出pojo 里的List并转化成子元素.如果add的o本身是List直接加到root下
public void add(Object o); List a = new ArrayList(); TestA ta = new TestA(); a.add(ta); List b = new ArrayList(); TestB tb1 = new TestB(); TestB tb2 = new TestB(); b.add(tb1); b.add(tb2); ta.setB(b); List c1 = new ArrayList(); List c2 = new ArrayList(); TestC tc11 = new TestC(); TestC tc12 = new TestC(); TestC tc21 = new TestC(); TestC tc22 = new TestC(); tb1.setC(c1); tb2.setC(c2); c1.add(tc11); c1.add(tc12); c2.add(tc21); c2.add(tc22); JomperXMLOperator jxo = new JomperXMLOperator(); jxo.open("rr1.xml"); jxo.add(a); jxo.save(); jxo.close(); xml doc 效果 <root> <TestA> <TestB> <TestC/> <TestC/> </TestB> <TestB> <TestC/> <TestC/> </TestB> </TestA> </root> |
|
返回顶楼 | |