Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- DB
- 톰캣
- @RequestBody
- null
- jquery
- maven
- spring form tag
- 문자열
- 네이버스마트 에디터
- 한글
- HTML5
- 호환성
- SSL
- exception
- java
- 전자정부 표준프레임워크
- JSTL
- 날짜
- json
- php
- Oracle
- MYSQL
- 스크립트
- checbox
- 웹 플랫폼 설치 관리자
- switch
- 오라클
- html
- RADIO
- 이클립스
Archives
- Today
- Total
개인적인 정리
데이타를 json으로 출력하기 - 1 본문
전자정부표준 프레임워크에서 데이타를 json 형태로 출력하는 방법에 대해서 생각해보고 있다.
json으로 데이타를 출력하기 위해서 Controller 는 아래와 같다고 해두자.
json을 Controller 에서 출력하기 위해서는 @ResponseBody를 써야 한다.
그리고 @RequestMapping 에 produces="text/plain;charset=UTF-8" 해주면 한글이 깨지지 않는다.
1
2
3
4
5
6
|
@RequestMapping(value="/jsonTest", produces="text/plain;charset=UTF-8")
@ResponseBody
public String jsonTest() throws Exception{
~~~~
}
|
cs |
첫번째로 생각해본 것은 json 데이타를 만들기 위해서 아래와같이 하드하게 문자열을 만들어주는 방법이다.
단순하지만 간단한 작업에는 효율적일 것 같아보인다.(사실 이렇게 한번도 안써봤다.)
간단한 응답을 받아야 하는 경우에는 나쁘진 않아 보이지만, 데이타가 길어진다면 다른 얘기가 될 수 있을 것이다.
1
2
3
4
5
6
7
8
9
|
@RequestMapping(value="/jsonTest", produces="text/plain;charset=UTF-8")
@ResponseBody
public String jsonTest() throws Exception{
String jsonString = "{\"result\":\""+ result +"\",\"msg\":\""+ msg +"\"}";
return jsonString;
}
|
cs |
어쨎거나 이 문자열을 하드하게 만드는 방법을 조금 더 확장해보면,
json 문자열 안에 vo, Map, 배열등의 객체의 데이타도 함께 출력할 수 있지 않을까?
아래코드에서 함께 출력해봤다.
@RequestMapping(value="/jsonTest", produces="text/plain;charset=UTF-8")
@ResponseBody
public String jsonTest() throws Exception{
MenuVO menuVO = new MenuVO();
Gson gson = new Gson();
String jsonString = "{\"result\":\""+result+"\",\"resultList\":"+ gson.toJson(menuVO) +"}";
return jsonString;
}
|
cs |
Gson 을 이용한 것이다.
사실 gson을 이 게시물을 작성하느라 처음 사용해봐서 아직 익숙하진 않다.
어쨎거나 위 코드에서 menuVO대신에 Map, List등의 객체들도 사용이 가능할 것이다.
혹은 아래와 같이 json 문자열을 vo만으로도 만들 수 있을 것이다.
1
2
3
4
5
6
7
8
9
10
|
@RequestMapping(value="/jsonTest", produces="text/plain;charset=UTF-8")
@ResponseBody
public String jsonTest() throws Exception{
Gson gson = new Gson();
String jsonString = gson.toJson(menuVO);
return jsonString;
}
|
cs |
Gson 에 대해서는 아래 URL을 참조한다.
https://github.com/google/gson
'전자정부표준프레임워크' 카테고리의 다른 글
전자정부표준프레임워크에서 SQL 로그 찍기 (0) | 2021.09.08 |
---|---|
MySQL jdbc 드라이버 변경 (0) | 2021.09.06 |
java 에서 switch (0) | 2021.08.26 |
전자정부표준프레임워크 v3.10 (0) | 2021.03.11 |
엑셀파일에 대한 content-type (0) | 2021.02.04 |
이클립스 + TOMCAT 에서 SSL 설정으로 https 테스트 (0) | 2021.01.26 |
전자정부표준프레임워크에서 엑셀 다운로드 (0) | 2020.10.06 |
이클립스 초기 설정 (0) | 2020.09.22 |
Comments