⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xml2objtest.java

📁 Java的面向对象数据库系统的源代码
💻 JAVA
字号:
package test.openxml;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import junit.framework.Test;import junit.framework.TestSuite;import org.ozoneDB.ExternalTransaction;import org.ozoneDB.xml.util.XMLContainer;import org.w3c.dom.Document;/* * User: per * Date: Feb 8, 2002 * Time: 4:52:37 PM * Copyright Nordic Wave Inc, All rights reserved */public class XML2ObjTest extends OpenXmlTestCase {    public static Test suite() {        TestSuite suite = new TestSuite();        suite.addTestSuite(XML2ObjTest.class);        return suite;    }    public XML2ObjTest(String name) {        super(name);    }    public void testAddAndRemove() {        insertDocument();        removeDocument();    }    public void testDOMUpdate() {        insertDocument();        ExternalTransaction tx = db.newTransaction();        try {            XMLContainer container = XMLContainer.forName(db, xmlTestDataFileName);            assertNotNull(container);            tx.begin();            container.storeDOM(null, getTestDocument());            tx.commit();            removeDocument();        } catch (Exception e) {            try {                tx.rollback();            } catch (Exception e1) {                // leave it for finally            } finally {                fail(e.getMessage());            }        }    }    private Document getTestDocument() {        try {            DocumentBuilderFactory builderFactory = new org.apache.xerces.jaxp.DocumentBuilderFactoryImpl();            DocumentBuilder documentBuilder = builderFactory.newDocumentBuilder();            return documentBuilder.parse(xmlTestDataFileName);        } catch (Exception e) {            fail(e.getMessage());            return null;        }    }    private void insertDocument() {        ExternalTransaction tx = db.newTransaction();        try {            tx.begin();            XMLContainer xmlContainer = XMLContainer.forName(db, xmlTestDataFileName);            if (xmlContainer != null) {                xmlContainer.delete();            }            xmlContainer = XMLContainer.newContainer(db, xmlTestDataFileName);            xmlContainer.storeDOM(getTestDocument());            assertNotNull(XMLContainer.forName(db, xmlTestDataFileName));            tx.commit();        } catch (Exception e) {            try {                tx.rollback();            } catch (Exception e1) {                // leave it for finally            } finally {                fail(e.getMessage());            }        }    }    private void removeDocument() {        ExternalTransaction tx = db.newTransaction();        try {            tx.begin();            XMLContainer container = XMLContainer.forName(db, xmlTestDataFileName);            assertNotNull("XML2ObjTest.removeDocument() - No such document " + xmlTestDataFileName, container);            container.delete();            tx.commit();            assertNull(XMLContainer.forName(db, xmlTestDataFileName));        } catch (Exception e) {            try {                tx.rollback();            } catch (Exception e1) {                // leave it for finally            } finally {                fail(e.getMessage());            }        }    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -