1. Maven을 이용중이라면 pom.xml에 다음과 같이 라이브러리를 추가
<!-- JSON -->
<dependency>
<groupid>net.sf.json-lib</groupid>
<artifactid>json-lib-ext-spring</artifactid>
<version>1.0.2</version>
</dependency>
2. JsonView 등록
<!-- ajax JSON parsing -->
<beans:bean id="jsonView" class="net.sf.json.spring.web.servlet.view.JsonView">
<beans:bean id="viewResolver" class="org.springframework.web.servlet.view.BeanNameViewResolver">
<beans:property name="order" value="0"></beans:property>
</beans:bean>
</beans:bean>
3. 컨트롤러에서 데이터 넘기는 부분
@RequestMapping(value = "/json/jsonList.do")
public ModelAndView outputJsonList(ModelAndView modelAndView) {
SomeDTO someData = someService.someMethod();
Map map = new HashMap();
map.put("someData", someData);
map.put("strData", "strData");
modelAndView.addAllObjects(map);
// Keypoint ! setViewName에 들어갈 String 파라미터는 JsonView bean 설정해줬던 id와 같아야 한다.
modelAndView.setViewName("jsonView");
return modelAndView;
4. JavaScript소스에서 제이쿼리.ajax부분
$.ajax({
url : "/json/jsonList.do",
type : "POST",
dataType: "json",
success : function(data) {
console.log("data.someData : " + data.someData);
console.log("data.strData : " + data.strData);
},
error : function(jqXHR, textStatus, errorThrown) {
alert("에러 발생~~ \n" + textStatus + " : " + errorThrown);
}
});
'WebBase' 카테고리의 다른 글
[WebBase] 부동소수점 오차 문제와 해결법 (0) | 2023.02.08 |
---|---|
[WebBase] 스택(Stack )과 힙(Heap) 메모리영역(Memory) (0) | 2022.09.22 |
[WebBase] jQuery.ajax (0) | 2022.06.23 |
[WebBase] Ajax (0) | 2022.06.23 |
[WebBase] JSTL (0) | 2022.06.22 |