VO객체에서 JSON으로 변환하기



google-gson

GSON은 구글의 오픈소스 라이브러리로 자바의 Object객체를 JSON으로 변환해 준다.

GSON을 이용하면 다음과 같다.



Map<String, Object> data = new HashMap<String, Object>();
data.put( "result", "success" );
data.put( "message", "ok" );
data.put( "statusCode", 200 );
JSONObject json = new JSONObject();
json.putAll( data );
System.out.printf( "JSON: %s", json.toString(2) );




Jackson Project

Jackson 라이브러리 역시 JSON 변환이 가능하다.


Jackson을 이용하면 다음과 같다.



Map<String, Object> data = new HashMap<String, Object>();
data.put( "result", "success" );
data.put( "message", "ok" );
data.put( "statusCode", 200 );
String json = new ObjectMapper().writeValueAsString(data);
System.out.println(json);



두 라이브러리 모두 Map 대신에 VO객체도 가능하다.



취향에 맞게 골라 쓰면 된다.



'JAVA' 카테고리의 다른 글

[JAVA] 패스워드 정규식 (Regex)  (1) 2017.12.05
[JSP] jstl 과 el의 차이점  (0) 2017.12.04
[JSTL]choose와 when, otherwise 사용법  (0) 2017.11.23
[JSTL]fmt:formatNumber  (0) 2017.11.22
java의 map이나 VO 객체를 JSON으로  (1) 2017.11.17

자바스크립트에서 문자열을 자를때 쓰는 몇가지 방법


1. substring


- "자를문자열".substring(시작인덱스, 종료인덱스)


예제




2. substr


- "자를문자열".substr(시작인덱스, 길이)


예제



3. split


- "자를-문자열".split(문자)


예제



위의 3가지 방법을 이용하여 문자열을 잘라낼수 있다.



indexOf함수까지 사용하면 다음과 같이 사용할 수 있다.


예제




지난번에 이어서 이번에도 SNS에 URL 등록시 미리보기에 대해  알아봅시다.


지난번 페이스북에 이어서 오늘은 트위터에 대해서 쓰도록 하겠습니다.



이번에도 트위터에 네이버블로그의 url을 링크해보았습니다.



그냥 URL주소 링크만 등록되고 미리보기 이미지는 볼 수 없습니다.


다음은 블로터 기사를 링크해 보겠습니다.



이미지뿐만 아니라 글 내용도 약간 보여짐니다.


블로터의 헤더부분에서 다른부분은 제외하고 트위터의 관련된 메타태그만 나열해보면 다음과 같습니다.



<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="사용자 참여로 번역 품질 높이자, ‘파파고 짐’">
<meta name="twitter:site" content="@bloter_news">
<meta name="twitter:description" content="네이버의 인공신경망 번역 서비스 '파파고'가 11월15일부터 '파파고 짐(Papago Gym)' 서비스를 시작한다고 알렸다. 사용자의 참여로 파파고의 번역 품질을 높이는 서비스다. 인공신경망 번역 서비스에서 가장 중요한 요소는 품질 높은 번역 데이터다. 번역 품질은 얼마나 좋은 데이터를 얼마나 많이 확보하느냐에 달렸다. 번역기는 제대로 된 번역 문장의 쌍을 바탕으로 학습하고, 학습을 바탕으로 더 나은 서비스를 제공할 수 있다. 파파고…">
<meta name="twitter:image" content="http://www.bloter.net/wp-content/uploads/2017/11/papago-gym-2.png">



시작은 twitter:card 태그로 시작합니다. 

content 속성의 값은 "summary", "summary_large_image", "app", "player"를 지정할 수 있습니다.


twitter:site의 content속성 값은 현재 페이지의 소유 트위터 계정을 적습니다.


twitter:title과 twitter:description에는 미리보기에 보여질 제목과 설명을 적습니다.


twitter:image에는 미리보기에 보여질 이미지를 적어주면 됩니다.



위에 있는 내용을 다 적고도 이미지가 제대로 안나온다면 다음 페이지에서 안나오는 이유에 대해서 확인할 수 있습니다.


https://cards-dev.twitter.com/validator



안나오는 중요한 이유 중 몇가지는 링크 URL의 도메인이 트위터의 whitelist로 등록이 안되어있는경우...


트위터에서 웹페이지를 크롤링 하는 트윗봇을 웹서버에서 allow안 했을경우...


정도 있습니다.





+ Recent posts