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

 更新时间:2015年06月29日 10:22:52   作者:红薯  
这篇文章主要介绍了Java连接并操作Sedna XML数据库的方法,较为详细的说明了Sedna XML数据库的原理与功能,并给出了基于java操作Sedna XML数据库的方法,需要的朋友可以参考下

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

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

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程序设计有所帮助。

相关文章

  • SpringBoot配置Clickhouse的示例代码

    SpringBoot配置Clickhouse的示例代码

    这篇文章主要介绍了SpringBoot配置Clickhouse的示例代码,代码简单易懂,对大家的学习或工作具有一定的参考价值,需要的朋友可以参考下
    2022-02-02
  • Netty分布式flush方法刷新buffer队列源码剖析

    Netty分布式flush方法刷新buffer队列源码剖析

    这篇文章主要为大家介绍了Netty分布式flush方法刷新buffer队列源码剖析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-03-03
  • 国内分布式框架Dubbo使用详解

    国内分布式框架Dubbo使用详解

    这篇文章主要为大家介绍了国内分布式框架Dubbo使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • Java中List集合去重方法以及效率对比

    Java中List集合去重方法以及效率对比

    这篇文章主要给大家介绍了关于Java中List集合去重方法以及效率对比的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • java按指定编码写入和读取文件内容的类分享

    java按指定编码写入和读取文件内容的类分享

    这篇文章主要介绍了java按指定编码写入和读取文件内容的类,需要的朋友可以参考下
    2014-02-02
  • Java单例模式的创建,破坏和防破坏详解

    Java单例模式的创建,破坏和防破坏详解

    大家所熟知的单例模式只能创建唯一一个实例,今天我们介绍几种常见的单例模式,同时说一说如何破坏单例模式,同时又怎么来防破坏
    2021-09-09
  • java求最大公约数与最小公倍数的方法示例

    java求最大公约数与最小公倍数的方法示例

    这篇文章主要介绍了java求最大公约数与最小公倍数的方法,涉及java数值运算的相关操作技巧,并附带分析了eclipse环境下设置运行输入参数的相关操作技巧,需要的朋友可以参考下
    2017-11-11
  • 使用Servlet Filter实现系统登录权限

    使用Servlet Filter实现系统登录权限

    这篇文章主要为大家详细介绍了使用Servlet Filter实现系统登录权限,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10
  • Spring Boot 静态资源处理

    Spring Boot 静态资源处理

    今天小编就为大家分享一篇关于Spring Boot 静态资源处理,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • 基于Java protected的深入理解

    基于Java protected的深入理解

    本篇文章是对Java protected进行了详细的分析介绍,需要的朋友参考下
    2013-06-06

最新评论