웹 개발/Java, Spring
controller에서 jsonView 로 리턴하는 법
jihyeon33
2022. 7. 31. 19:26
jsp (javascript)
$('#testBtn').on('click',function(){
var params=$('#accountInfoFrm').serialize();
$.ajax({
type:"POST",
url:"/test.json",
dataType:"json",
data:params,
success:function(data){
alert("success");
console.log(data);
console.log(data.bankAccountDto);
console.log(data.bankAccountDto.bankNm);
alert(data.bankAccountDto.bankNm);
},
});
});
controller
@RequestMapping(value = "/test.json" ,produces="application/json")
public ModelAndView test(ModelAndView mav) throws Exception {
String bankNm="국민";
String bankAccountNum="1104625";
BankAccountDto bankAccountDto = new BankAccountDto(bankNm,bankAccountNum); //BankAccountDto 사용
mav.addObject("bankAccountDto",bankAccountDto);
mav.setViewName("jsonView");
return mav;
}
자바 오브젝트를 json 형식으로 사용하기 위해
pom.xml 에 <dependency> 추가 , servlet-context.xml에서 <bean> 추가.
pom.xml
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib-ext-spring</artifactId>
<version>1.0.2</version>
</dependency>
servlet-context.xml
<bean id="jsonView" class="net.sf.json.spring.web.servlet.view.JsonView"/>
<bean id="viewResolver" class="org.springframework.web.servlet.view.BeanNameViewResolver">
<property name="order" value="1"/>
</bean>