Couch DB Java Integration : Couchdb4j
- COUCHDB4J API is library for accessing Documents from couch database.
- This Library is downloaded from the link:-
- In this Demo , "Using FUTON Web Interface a student database is created and 4 student documents are created.The java program is written for accessing these documents and displaying the details in console output".
- The Student Database in Futon looks like,
- This library has some dependencies to these libraries,
commons-codec-1.3.jar, commons-collections.jar,
commons-lang.jar,commons-logging-1.1.jar,
json-lib-2.0-jdk15.jar, ezmorph-1.0.3.jar
- The Project Structure,showing all the dependencies jar libraries in the CLASSPATH,
- The Java code is CouchDBTest.java is,
package com.sandeep.couchdb.util; import java.util.List; import com.fourspaces.couchdb.Database; import com.fourspaces.couchdb.Document; import com.fourspaces.couchdb.Session; import com.fourspaces.couchdb.ViewResults; public class CouchDBTest { /*These are the keys of student document in couch db*/ public static final String STUDENT_KEY_NAME ="name"; public static final String STUDENT_KEY_MARKS ="marks"; public static final String STUDENT_KEY_ROLL="roll"; public static final String STUDENT_KEY_CONTACT ="contact"; public static void main(String[] args){ /*Creating a session with couch db running in 5984 port*/ Session studentDbSession = new Session("localhost",5984); /*Selecting the student database from list of couch database*/ Database studentCouchDb = studentDbSession.getDatabase("student"); /*Fetching all Student Document to ViewResult object*/ ViewResults couchViewResults = studentCouchDb.getAllDocuments(); /*Retieving all document as result to a List*/ List<Document> studentDocuments = couchViewResults.getResults(); for(Document couchDocument: studentDocuments){ String id = couchDocument.getJSONObject().getString("id"); Document studentRow = studentCouchDb.getDocument(id); System.out.println("__________START OF DOCUMENT("+studentRow.get("_id")+")_________"); if(studentRow.containsKey(STUDENT_KEY_NAME)){ System.out.println("NAME : "+studentRow.get(STUDENT_KEY_NAME)); } if(studentRow.containsKey(STUDENT_KEY_MARKS)){ System.out.println("MARK : "+studentRow.get(STUDENT_KEY_MARKS)); } if(studentRow.containsKey(STUDENT_KEY_ROLL)){ System.out.println("ROLL : "+studentRow.get(STUDENT_KEY_ROLL)); } if(studentRow.containsKey(STUDENT_KEY_CONTACT)){ System.out.println("CONTACT : "+studentRow.get(STUDENT_KEY_CONTACT)); } } } } - ViewResults(com.fourspaces.couchdb.ViewResults) is the class which stores all the document.The debug point screenshot,
- Couch db stores the data in Document format (com.fourspaces.couchdb.Document) package.
- The output:-
__________START OF DOCUMENT(326e49164d9b414a6c1ce2c8a802d175)_________ NAME : sandeep MARK : 75 ROLL : 4 CONTACT : +91-1234567890 __________START OF DOCUMENT(326e49164d9b414a6c1ce2c8a802d28e)_________ NAME : sumanta MARK : 80 ROLL : 3 __________START OF DOCUMENT(326e49164d9b414a6c1ce2c8a802dda1)_________ NAME : sangeeta MARK : 95 ROLL : 7 __________START OF DOCUMENT(326e49164d9b414a6c1ce2c8a802f200)_________ NAME : Surabhi MARK : 73 ROLL : 7
- The output screenshot in java console,
Demo Code:-
Download link for demo code
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)
Tags:





