java client of couchbase  


------------


1. 자바 클라이언트 적용  

- pom.xml 에 관련 dependency 추가  

-

    <dependency>

      <groupId>com.couchbase.client</groupId>

      <artifactId>couchbase-client</artifactId>

      <version>1.2.3</version>

    </dependency>

  - client 호출  

  - 

  public CouchbaseClient getCouchbaseClient(){

    CouchbaseClient couchbaseClient = null;

   

    ArrayList<URI> nodes = new ArrayList<URI>();

    

    // Add one or more nodes of your cluster (exchange the IP with yours)

    nodes.add(URI.create("http://lvm001:8091/pools"));

    

    try {

    couchbaseClient = new CouchbaseClient(nodes, "default", "");

    } catch (Exception e) {

    System.err.println("Error connecting to Couchbase: " + e.getMessage());

    System.exit(1);

    }

   

    return couchbaseClient;

 }

    

2. 자바 클라이언트를 통한 read/write to couchbase  

    - data 저장방식  

- java object : java 에서 생성한 object 그대로 입출력, admin-web 에서 json document 형태로 확인이 가능  

- json object : java object 를 json 형태의 object 로 변환하여 입출력, admin-web 에서 json document 형태로 확인이 가능  

- string : java object 를 string 형태로 변환하여 입출력, admin-web 에서 json document 형태로 확인 불가  

    - example  

    - java object  

        public void setObject(String id, CouchbaseVO couchbaseVO){  

      couchbaseClient.add(id, couchbaseVO);  

      }  

      public CouchbaseVO getObject(String id){

      CouchbaseVO couchbaseVO = null;  

      couchbaseVO = (CouchbaseVO)couchbaseClient.get(id);  

      return couchbaseVO;  

      }

    - json obejct  

        public void setJsonObject(String id, CouchbaseVO couchbaseVO){

      Gson gson = new Gson();  

      couchbaseClient.set(id, gson.toJson(couchbaseVO));  

        }

        public CouchbaseVO getJsonObject(String id){  

        Gson gson = new Gson();  

        CouchbaseVO couchbaseVO = null;  

        couchbaseVO = gson.fromJson((String)couchbaseClient.get(id), CouchbaseVO.class);  

        return couchbaseVO;  

        }

    - string   

        public void setString(String id, CouchbaseVO couchbaseVO){  

            couchbaseClient.set(id, couchbaseVO.toString());  

        }   

        public CouchbaseVO getString(String id){  

        CouchbaseVO couchbaseVO = null;  

        String value = (String) couchbaseClient.get(id);      

        couchbaseVO = CouchbaseVO.convert(value);       

        return couchbaseVO;      

        }   

  

      - 비교

- write : string > java == json  

- read : string > java == json  

- 큰 차이가 존재하지는 않았으나 string 타입으로 처리하는 것이 빠른 속도를 내는 것으로 보였다  

- but  

- string 타입은 web 상으로 값이 구분이 안되기 때문에 잘 데이터 확인이 필요한 수준을 판단해야 한다  

- object 를 string 타입으로 잘 변환할 수 있는 java code 를 구현해야 한다

'Nosql > couchbase' 카테고리의 다른 글

couchbase 설치  (0) 2016.08.01
couchbase 소개  (0) 2016.08.01
Posted by 감각적신사
,