월루를 꿈꾸는 대학생
[SpringBoot] rest controller , post , json 본문
728x90
rest controller 쓰는 이유
- 아무 역할 하지 않고 바로 뷰로 넘김
- 내 일을 넘기지 않고 컨트롤러에서 로직 처리 하는 거
- json으로 값 넘기기 해줘도 될 듯
- 임마가 마지막 값을 넘기는게 아니라 그대로 뿌려줌 !
@GetMapping("/coffeeAjax")
public String doCoffeeAjax(Model model){
return "/v1/coffeeAjax";
}
name = post넘길 떄
id = 자바스크립트에서 이용
https://mvnrepository.com/artifact/org.json/json
컨트롤러
- rest controller 로 값 자체를 보낼 수도 있고
- post로 값 받아서 반환을 할 때 파라미터로 검색 때리고 json으로 값을 변환시켜서 넘겨줄 수도 있다
@GetMapping("/coffeeAjax")
//rest controller -> 가져올 거는 나야 내가 끝내줄게 리스폰스를 리턴으로 뿌림 txt, json 등
//자기가 마지막이라 값을 넘기는 게 아니라 최정처리를 하는것 나중에 json response해도 되는건가?
@ResponseBody
public String doCoffeeAjax(Model model){
String strArr = "{\"coffee_list\":[{\"coffee_id\":\"100\",\"name\":\"메뉴명\",\"kind\":\"종류\",\"price\":\"가격\",\"reg_day\":\"등록일\",\"mod_day\":\"수정일\"},{\"coffee_id\":\"100\",\"name\":\"메뉴명\",\"kind\":\"종류\",\"price\":\"가격\",\"reg_day\":\"등록일\",\"mod_day\":\"수정일\"},{\"coffee_id\":\"100\",\"name\":\"메뉴명\",\"kind\":\"종류\",\"price\":\"가격\",\"reg_day\":\"등록일\",\"mod_day\":\"수정일\"}]}";
return strArr;
//return "/v1/coffeeAjax";
}
@PostMapping("/coffeeAjaxPost")
@ResponseBody
public String doCoffeePostAjax(HttpServletRequest request){
// html form으로 받은 리퀘스트 항목의 값을 추출
String strStart_date = request.getParameter("start_date");
String strEnd_date = request.getParameter("end_date");
String strName = request.getParameter("name");
String strKind = request.getParameter("kind");
// 이걸로 터미널창에 로그 확인 가능
List<Map<String,String>> list = coffeeV1Service.doCoffeeList(strStart_date,strEnd_date,strName,strKind);
log.info(list);
JSONArray jsonArray = new JSONArray();
for(Map<String , String> fMap : list){
// 요즘 안 쓰나 보네 org.JSON
// fMAP 을 끌어와서 json한 줄 만들어짐
JSONObject restObj = new JSONObject(fMap);
log.info(restObj);
//json 배열에 json값들 한줄 한줄 배열로 들어가게 됨
jsonArray.put(restObj);
}
String strArr = "{\"coffee_list\":";
strArr+= String.valueOf(jsonArray);
strArr+="}";
return strArr;
}
참고 영상
https://www.youtube.com/watch?v=yJyzD4jVgvk&list=PL3036mp45iYw1HyNNvSXHaqURIDDslg60&index=13
728x90
'Programing > Spring Boot' 카테고리의 다른 글
[핵심 원리-기본]비즈니스 요구사항과 설계 (0) | 2023.07.18 |
---|---|
[스프링 핵심 원리 기본] 객체 지향 설계와 스프링 (0) | 2023.07.07 |
[SpringBoot] 게시판 만들기 feat) mybatis + jQuery (0) | 2023.03.08 |
[Mac] maria db & GUI 설치하기 (0) | 2023.03.06 |
[Spring] 객체 지향 설계와 스프링 (1) | 2023.03.05 |