package com.pure.blog.handler; import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.RestController; @ControllerAdvice @RestController public class GlobalExceptionHandler { @ExceptionHandler(value=IllegalArgumentException.class) public String handleArgumentException(IllegalA..
전체 글
@DeleteMapping("/dummy/user/{id}") public String delete(@PathVariable int id) { try { userRepository.deleteById(id); } catch(EmptyResultDataAccessException e) { return "삭제에 실패하였습니다. 해당 id는 DB에 없습니다."; } return "삭제되었습니다. id: " + id; } 삭제는 별 거 없다. 이런식으로 예외 처리 정도만 해주면 된다.
//email, password 수정 @PutMapping("/dummy/user/{id}") public User updateUser(@PathVariable int id, @RequestBody User requestUser) { System.out.println("id: "+ id); System.out.println("password: " + requestUser.getPassword()); System.out.println("email: "+ requestUser.getEmail()); return null; } 이런 녀석을 만들고 postman에서 put 메서드를 사용해 JSON 형태로 요청을 하면 이렇게 콘솔에 정상적으로 응답이 온다. 이제 이것을 DB에 반영을 해줘야 하는데 먼저 save(..
@GetMapping("/dummy/users") public List list() { return userRepository.findAll(); } //한 페이지당 2건에 데이터를 리턴받기 (size=2) @GetMapping("/dummy/user") public List pageList(@PageableDefault(size=2, sort="id", direction = Sort.Direction.DESC) Pageable pageable) { Page pagingUser = userRepository.findAll(pageable); List users = pagingUser.getContent(); return users; } 계속 이어서 Dummy 컨트롤러임. findAll()은 전체 리스트를..
package com.pure.blog.test; import java.util.function.Supplier; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RestController; import com.pure.blog.model.R..
1. User.java 에 @DynamicInsert 추가 package com.pure.blog.model; import java.sql.Timestamp; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import org.hibernate.annotations.ColumnDefault; import org.hibernate.annotations.CreationTimestamp; import org.hibernate.annotations..
JSON은 언어 간 통신을 위한 공용어이다. 예를 들어 자바에서 파이썬으로 데이터를 전송하고 싶을 때. JSON으로 데이터를 바꿔서 보내면 파이썬이 번역할 수 있다.
연관관계의 주인 ==> FK를 누가 가졌는가? 1. Board.java package com.pure.blog.model; import java.sql.Timestamp; import java.util.List; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.Lob;..