My footsteps
RestController / 9 본문
728x90
- 아래는 통 문자열이다
let formData = {categoryId,korName,engName,price,description};
- 지금 배우고 있는건 메뉴 등록을 할때 화면 전환 없이 메뉴가
DB에 저장이 되어야 하는데 그게 객체로 전달이 되어야 함! 근데 워밍업으로 문자열이 저장이 되게끔 하는중이다
- newOne ={} ; 이건 객체 전달을 하기 위한 준비물 !
- 메뉴 등록을 하면 문자열로 통째로 온걸 확인 할 수 있다~
- 이 둘은 json을 인식하게 하기위한 설정?
consumes = "apllication/json" (소비)
produces = "application/json" (제작)
- 키없이 통으로 문자열로 오게 하는걸 받아주는애 @RequestBody
- 가장 최근 데이터를 얻는 방법은 역정렬 한뒤 limit 1을 잘라내서 아이디를 얻는것(?) 이 뭔소리...야...
- 문자열로 받았다가 이제는 객체로 받는 과정중에 있다~
//가장 최신글이 제일 위에 있으니까?역정렬 한다음에 그 중에서 글 하나만 가져오는거라서 limit 1
<select id="lastOne">
select * from menu where id=(select id from menu order by reg_date desc limit 1)
</select>
< 보내선 안될 문장을 보냈을때 입뺀하는 방법~ 저 코드를 넣으면 400 에러가 난다>
@PostMapping(consumes = "application/json",
produces = "application/json")
public ResponseEntity<Menu> add(@RequestBody Menu menu) {
Menu newOne = service.append(menu);
return new ResponseEntity<Menu>(newOne, HttpStatus.BAD_REQUEST);
}
- 조건문걸어서 에러메세지 띄우기
@Override
public Menu append(Menu menu) {
if(repository.save(menu)==0)
return null;
Menu newOne = repository.lastOne();
return newOne;
}
@PostMapping(consumes = "application/json",
produces = "application/json")
public ResponseEntity<Object> add(@RequestBody Menu menu) {
Menu newOne = service.append(menu);
if(newOne == null)
return new ResponseEntity<Object>("잘못된 정보입니다.", HttpStatus.BAD_REQUEST);
return new ResponseEntity<Object>(newOne, HttpStatus.OK);
}
728x90
'국비수업 > 수업정리' 카테고리의 다른 글
RestController / 11 (0) | 2023.06.29 |
---|---|
RestController / 10 (0) | 2023.06.28 |
RestController / 8 (0) | 2023.06.26 |
RestController / 7 (0) | 2023.06.23 |
RestController / 6 (0) | 2023.06.22 |