2016년 3월 29일 화요일

[JAVA] Java에서 CoAP Client 구현하기.(Californium 라이브러리 이용)


[JAVA] Java에서 CoAP Client 구현하기.(Californium 라이브러리 이용)




Java에서 CoAP을 구현하기 위해서 라이브러리를 가져와야하는데 가장 널리 이용되는 것이 Californium 라이브러리인 것 같다.

다양한 CoAP 라이브러리들을 아래 링크에서 확인 할 수 있다.
http://coap.technology/impls.html
Constrained devices, Server-side, Browser-based 등의 분류별로 라이브러리가 소개된다.


Californium은 Server-side에서 Java로 구현된 라이브러리라고는 하지만 Client도 구현되어 있다.
Californium은 Github에서 소스를 공개하고 있다.
https://github.com/eclipse/californium

최신 버전 확인은 MVN Repository 사이트가 어떤 라이브러리든 좋은거 같다.
http://mvnrepository.com/artifact/org.eclipse.californium/californium-core


Java에서 Californium 라이브러리 사용하는 방법

[1] 우선 Java에서 Californium을 이용하기 위해서는 Maven에서 dependency를 설정해줘야 한다.
(Maven 설치 및 Eclipse 연동은 다른 좋은 글들이 많으니 구글에서 찾아보자. 간편하게는 STS(Spring Tool Suite)을 사용해도 된다.)

아래의 설정을 프로젝트의 pom.xml에 추가 한다.( 점은 삭제한다. 다른 내용이 있을 수 있다는 표시인 것이므로... )

 <dependencies>
    ...
    <dependency>
            <groupId>org.eclipse.californium</groupId>
            <artifactId>californium-core</artifactId>
            <version>1.0.3</version>
    </dependency>
    ...
  </dependencies>
  ...
  <repositories>
    ...
    <repository>
      <id>repo.eclipse.org</id>
      <name>Californium Repository</name>
      <url>https://repo.eclipse.org/content/repositories/californium/</url>
    </repository>
    ...
  </repositories>


[2] 이제, Californium 라이브러리를 사용할 수 있다. 아래는 CoAP 서버로 부터 시간정보를 반환 받는 Client 예제이다.

import org.eclipse.californium.core.CoapClient;

public class App 
{
    public static void main( String[] args )
    {
        System.out.println( "Hello! This is CoAP Sample Application." );

        CoapClient client = new CoapClient("coap://californium.eclipse.org:5683/obs");

        if(!client.ping()){
            System.out.println("Server is down. Terminate program.");
            return;
        }

        System.out.println("Request Get mothod of CoAP.");
        String content1 = client.get().getResponseText();
        System.out.println("Response : " + content1);
    }
}



댓글 없음:

댓글 쓰기