Spring,MyBatis 실무 과정 자료] JSON/XML 데이터 송수신2
Spring,MyBatis 실무 과정 자료] JSON/XML 데이터 송수신2
실무개발자를위한 실무교육 전문교육센터학원
www.oraclejava.co.kr에 오시면 보다 다양한 강좌를 보실 수 있습니다.
JSON/XML 데이터 송수신2
■ 서버에서 JSON데이터 출력
- 컨트롤러 소스
@Controller
public class JsonController {
@RequestMapping(value="/ajax/jsonOut1", method={RequestMethod.GET, RequestMethod.POST})
//@RequestMapping(value="/ajax/jsonOut1", headers="Accept=application/json")
//@RequestMapping(value="/ajax/jsonOut1", produces="application/json")
//미디어타입을 명시적으로 지정
//“produces”는 Spring 3.1부터 이용 가능
@ResponseBody public List<UserInfoViewDto> jsonOut (@RequestParam String cd) {
if(StringUtils.isEmpty(departmentCd)) {
return new ArrayList<UserInfoViewDto>();
}
List<UserInfoDto> list = /* Servlet/DAO로부터 취득함 */;
//리턴값 Java객체는 자동적으로 JSON으로 변경 가능함.
return list;
}
}
■ 클라이언트: jquery 이용
<script type="text/javascript">
$(document).ready(function(){
$('#jsonOut1').click(function(){
$.ajax({
type: "POST",
url : "${appUrl}/ajax/jsonOut1.html",
data : {"cd": "sawon"},
// 수신시(응답)의 미디어타입
dataType: "json",
success:function(data){
//TODO:
alert(data);
}
});
});
});
</script>
<ol>
<li> <a href="${appUrl}/ajax/jsonOut1.html?cd=aaa">JSON형식으로 취득(GET사용)</a></li>
<li> <span id="jsonOut1">JSON형식으로 취득(jQuery사용)</span></li>
</ol>
■ 클라이언트에서 데이터 송신시 처리(서버 수신)
@Controller public class JsonController {
@RequestMapping(value="/ajax/jsonIn1")
//@RequestMapping(value="/ajax/jsonIn1", headers="Content-Type=application/json")
//@RequestMapping(value="/ajax/jsonIn1", consumes="application/json")
public ModelAndView jsonIn1(@RequestBody JsonSampleCommand1 command) {
ModelAndView mav = new ModelAndView("/ajax/sample1");
mav.addObject("data", command);
return mav;
}
}
'자바 > Spring' 카테고리의 다른 글
Spring,MyBatis 실무 과정 자료] 클라이언트에서 XML송신/서버수신 (0) | 2017.04.20 |
---|---|
Spring,MyBatis 실무 과정 자료] 서버에서 XML 출력 처리 (0) | 2017.04.20 |
Spring,MyBatis 실무 과정 자료]JSON/XML 데이터 송수신 (0) | 2017.04.20 |
Spring,MyBatis 실무 과정 자료] REST 서비스 작성 (0) | 2017.04.20 |
Spring,MyBatis 실무 과정 자료] 파일 사이즈 초과시 처리방법 (0) | 2017.04.20 |