服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服务器之家 - 编程语言 - JAVA教程 - Java连接并操作Sedna XML数据库的方法

Java连接并操作Sedna XML数据库的方法

2019-12-24 13:10红薯 JAVA教程

这篇文章主要介绍了Java连接并操作Sedna XML数据库的方法,较为详细的说明了Sedna XML数据库的原理与功能,并给出了基于java操作Sedna XML数据库的方法,需要的朋友可以参考下

本文实例讲述了Java连接并操作Sedna XML数据库的方法。分享给大家供大家参考。具体分析如下:

Sedna 是一个原生的XML数据库,提供了全功能的核心数据库服务,包括持久化存储、ACID事务、索引、安全、热备、UTF8等。实现了 W3C XQuery 规范,支持全文搜索以及节点级别的更新操作。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import ru.ispras.sedna.driver.*;
public class SednaClient {
 public static void main(String args[]) {
  SednaConnection con = null;
  try {
   /* Get a connection */
   con = DatabaseManager.getConnection("localhost",
                     "testdb",
                     "SYSTEM",
                     "MANAGER");
   /* Begin a new transaction */
   con.begin();
   /* Create statement */
   SednaStatement st = con.createStatement();
   /* Load XML into the database */
   System.out.println("Loading data ...");
   boolean res;
   res = st.execute("LOAD 'C:/region.xml' 'region'");
   System.out.println("Document 'region.xml' "+
     "has been loaded successfully");
   /* Execute query */
   System.out.println("Executing query");
   res = st.execute("doc('region')/*/*");
   /* Print query results */
   printQueryResults(st);
   /* Remove document */
   System.out.println("Removing document ...");
   res = st.execute("DROP DOCUMENT 'region'");
   System.out.println("Document 'region' " +
         "has been dropped successfully");
   /* Commit current transaction */
   con.commit();
  }
  catch(DriverException e) {
    e.printStackTrace();
  }
  finally {
   /* Properly close connection */
   try { if(con != null) con.close(); }
   catch(DriverException e) {
    e.printStackTrace();
   }
  }
 }
 /* Pretty printing for query results */
 private static void printQueryResults(SednaStatement st)
  throws DriverException {
  int count = 1;
  String item;
  SednaSerializedResult pr = st.getSerializedResult();
  while ((item = pr.next()) != null) {
   System.out.println(count + " item: " + item);
   count++;
  }
 }
}

希望本文所述对大家的java程序设计有所帮助。

延伸 · 阅读

精彩推荐
  • JAVA教程解析Java继承中方法的覆盖和重载

    解析Java继承中方法的覆盖和重载

    这篇文章主要介绍了Java继承中方法的覆盖和重载的详细概念及用法,非常的实用,这里推荐给大家,有需要的小伙伴可以参考下。 ...

    hebedich2912019-12-17
  • JAVA教程java的arraylist排序示例(arraylist用法)

    java的arraylist排序示例(arraylist用法)

    这篇文章主要介绍了java的arraylist排序示例,学习一下arraylist的用法,需要的朋友可以参考下 ...

    java教程网2952019-11-15
  • JAVA教程Java之JFrame输出Helloworld实例

    Java之JFrame输出Helloworld实例

    这篇文章主要介绍了Java之JFrame输出Helloworld的方法,以输出Helloworld的实例分析了JFrame的简单入门技巧,需要的朋友可以参考下 ...

    yongh7014492019-12-10
  • JAVA教程Java设计模式之组合模式(Composite模式)介绍

    Java设计模式之组合模式(Composite模式)介绍

    这篇文章主要介绍了Java设计模式之组合模式(Composite模式)介绍,Composite定义:将对象以树形结构组织起来,以达成“部分-整体” 的层次结构,使得客户端...

    junjie1302019-12-11
  • JAVA教程java中哈希表及其应用详解

    java中哈希表及其应用详解

    Java中哈希表(Hashtable)是如何实现的呢?Hashtable中有一个内部类Entry,用来保存单元数据,我们用来构建哈希表的每一个数据是Entry的一个实例。假设我们保存...

    hebedich1722019-12-21
  • JAVA教程java rocketmq--消息的产生(普通消息)

    java rocketmq--消息的产生(普通消息)

    这篇文章主要介绍了java rocketmq--消息的产生(普通消息),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,,需要的朋...

    有爱jj2612019-06-26
  • JAVA教程java开发命名规范总结

    java开发命名规范总结

    包名的书写规范 (Package)推荐使用公司或机构的顶级域名为包名的前缀,目的是保证各公司/机构内所使用的包名的唯一性。包名全部为小写字母,且具有...

    java开发网4132019-10-17
  • JAVA教程Java设计模式之桥模式(Bridge模式)介绍

    Java设计模式之桥模式(Bridge模式)介绍

    这篇文章主要介绍了Java设计模式之桥模式(Bridge模式)介绍,本文讲解了为什么使用桥模式、如何实现桥模式、Bridge模式在EJB中的应用等内容,需要的朋友可...

    junjie1852019-12-11