2018. 1. 24. 00:22
반응형

스프링 프레임워크에서 json 형식으로 컨트롤러에 데이터를 전송하면 좋다.

jsp 뷰페이지에서 ajax를 활용해 json 데이터를 전달할 수 있다.

컨트롤러에서는 @RequestBody를 이용해 json 데이터를 HashMap으로 받을 수 있다.


우선 Spring Framework의 pom.xml에 다음 사항을 추가한다.

<dependency>
	<groupId>com.fasterxml.jackson.core</groupId>
	<artifactId>jackson-databind</artifactId>
	<version>2.8.4</version>
</dependency>


컨트롤러
@RequestMapping(value="/test", produces="application/json;charset=UTF-8", method=RequestMethod.POST)
public @ResponseBody HashMap<String, Object> test(@RequestBody HashMap<String, Object> params) {
	System.out.println((int)params.get("age")*9);
	
	return params;
}



jsp에서 ajax를 사용하기 위해 jquery cdn이 필요하다.

간단하게 이름과 나이를 전달하는 예제

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript">
	var data = {};
	data.name = "name";
	data.age = 19;
	$(document).ready(function(){
		$.ajax({
			url: "testtest",
			data: JSON.stringify(data),
			type: "POST",
			dataType: "json",
			contentType: "application/json; charset=utf-8",
			success: function(data){
				console.log(data);
			}
		});
	});
</script>



반응형