本文实例讲述了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程序设计有所帮助。