FULLSTACK/SPRING
Spring Boot - AJAX 통신
Himoonhee
2021. 6. 20. 20:46
728x90
AJAX 통신
Ajax란 Asynchronous JavaScript and XML의 약자입니다.
Ajax는 빠르게 동작하는 동적인 웹 페이지를 만들기 위한 개발 기법의 하나입니다.
Ajax는 웹 페이지 전체를 다시 로딩하지 않고도, 웹 페이지의 일부분만을 갱신할 수 있습니다.
즉 Ajax를 이용하면 백그라운드 영역에서 서버와 통신하여, 그 결과를 웹 페이지의 일부분에만 표시할 수 있습니다.
http://tcpschool.com/ajax/ajax_intro_basic
1. pom.xml에 추가
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jaackson-databind</artifactId>
</dependency>
CASE 1. JSON.stringify(param) → @RequestBody
$.ajax({
url: “/user”,
type: ‘POST’,
data: JSON.stringify(param),
contentType: ‘application/json’,
dataType: ‘json’
});
@PostMapping("/user")
@ResponseBody
public List<UserVO> searchByUserInfo(@RequestBody UserSearchVO userSearchVO){
List<UserVO> userList = new ArrayList<>();
//검색 null값 -> 공백처리
commonConfig.checkNull(userSearchVO);
userList = userService.searchByUserInfo(userSearchVO);
return userList;
}
CASE 2. param→ @ModelAttribute
$.ajax({
url: “/contractList”,
type: “POST”,
data: param
});
@PostMapping("/contractList")
@ResponseBody
public List<ContractVO> getList(@ModelAttribute ContractSearchVO contractSearchVO) throws Exception{
//null 처리
commonConfig.contractCkNull(contractSearchVO);
List<ContractVO> contractList = contractService.getList(contractSearchVO);
return contractList;
MyBatis
CASE 1. resultType = “java.util.HashMap”
→ List<Map<String, Object>>로 받기
728x90