客户端汇总:http://wiki.apache.org/couchdb/Related_Projects
Java客户端:
1. jcouchdb
主页:http://code.google.com/p/jcouchdb/
所需的依赖库:
commons-beanutils.jar commons-codec-1.3.jar commons-httpclient-3.1.jar commons-io-1.3.1.jar commons-logging-1.1.jar easymock-2.3.jar hamcrest-all-1.1.jar junit-4.4.jar log4j-1.2.14.jar svenson-1.2.8.jar可以从SVN库中拿到上面的jar包: http://jcouchdb.googlecode.com/svn/trunk/lib/compile/
测试代码演示:
import java.util.HashMap;
import java.util.Map;
import org.jcouchdb.db.Database;
import org.jcouchdb.db.Server;
import org.jcouchdb.db.ServerImpl;
public class JCouchDB {
public static void main(String[] args) {
Server server = new ServerImpl("localhost");
server.createDatabase("mycouchdb");
// create a database object pointing to the database "mycouchdb" on the local host
Database db = new Database("localhost", "mycouchdb");
// create a hash map document with two fields
Map<String,String> doc = new HashMap<String, String>();
doc.put("foo", "value for the foo attribute");
doc.put("bar", "value for the bar attribute");
// create the document in couchdb
db.createDocument(doc);
}
}
读取CouchDB数据的代码片段:
ViewResult<Map> results = db.listDocuments(null, null);
System.out.println(results);
List<ValueRow<Map>> datalist = results.getRows();
for (ValueRow<Map> valueRow : datalist) {
String docId = valueRow.getId();
Map<String, String> map = db.getDocument(Map.class, docId);
System.out.println(map.get("foo"));
System.out.println(map.get("bar"));
}
参考:http://code.google.com/p/jcouchdb/wiki/Tutorial
另外,可以去下载其网站自带的hood示例程序,研究它的代码将有助于系统的学习JCouchDB包的用法。
下载地址:http://code.google.com/p/jcouchdb/downloads/list
2. Ektorp
主页:http://code.google.com/p/ektorp/
GitHub:https://github.com/helun/Ektorp
3. Clojure
GitHub:https://github.com/the-kenny/clojure-couchdb
http://www.ibm.com/developerworks/cn/java/j-couchdb-clojure/?ca=drs-