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

+ Recent posts