- 保存文件
- 取回文件
1、SaveFileRPC.java
package com.neohope.existdb.test; import org.apache.xmlrpc.client.XmlRpcClient; import org.apache.xmlrpc.client.XmlRpcClientConfigImpl; import java.io.BufferedReader; import java.io.FileInputStream; import java.io.FileReader; import java.io.InputStream; import java.net.URL; import java.util.Vector; public class SaveFileRPC { public static void SaveXML(String xmlFilePath, String user, String pw) throws Exception { String url = "http://localhost:8080/exist/xmlrpc"; String path = "/db/CDA/入院患者护理评估单05.xml"; XmlRpcClient client = new XmlRpcClient(); XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl(); config.setServerURL(new URL(url)); config.setBasicUserName(user); config.setBasicPassword(pw); client.setConfig(config); BufferedReader f = new BufferedReader(new FileReader(xmlFilePath)); String line; StringBuffer xml = new StringBuffer(); while ((line = f.readLine()) != null) xml.append(line); f.close(); Vector<Object> params = new Vector<Object>(); params.addElement(xml.toString()); params.addElement(path); params.addElement(new Integer(0)); Boolean result = (Boolean) client.execute("parse", params); if (result.booleanValue()) System.out.println("document stored."); else System.out.println("could not store document."); } public static void SaveXMLChuncked(String xmlFilePath, String user, String pwd) throws Exception { String url = "http://localhost:8080/exist/xmlrpc"; String path = "/db/PNG/兔子.png"; XmlRpcClient client = new XmlRpcClient(); XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl(); config.setServerURL(new URL(url)); config.setBasicUserName(user); config.setBasicPassword(pwd); client.setConfig(config); Vector<Object> params = new Vector<Object>(); String handle = null; InputStream fis = new FileInputStream(xmlFilePath); byte[] buf = new byte[4096]; int len; while ((len = fis.read(buf)) > 0) { params.clear(); if (handle != null) { params.addElement(handle); } params.addElement(buf); params.addElement(new Integer(len)); handle = (String) client.execute("upload", params); } fis.close(); params.clear(); params.addElement(handle); params.addElement(path); params.addElement(new Boolean(true)); params.addElement("image/png"); Boolean result = (Boolean) client.execute("parseLocal", params); // exceptions if (result.booleanValue()) System.out.println("document stored."); else System.out.println("could not store document."); } public static void main(String args[]) throws Exception { String user = "neotest"; String pwd = "neotest"; SaveXML("PATH_TO_FILE\\入院患者护理评估单05.xml", user, pwd); //SaveXMLChuncked("D:\\MyProjects\\IDEA14\\TestExistDB\\XMLFiles\\兔子.png", user, pwd); } }