[Spring] repository.findAll() / repositoy.findById() 예제
[Spring] repository.findAll() / repositoy.findById() 예제
repository를 이용하면 컨트롤러의 코드는 단순하게 쓸 수 있고 공통되는 부분은 repository에서 관리할 수 있기 때문에 유용하다.
현재 리스트로 작성된 부분을 디비로 바꿔서 사용할 수 있는데 그런경우 활용도가 더 많다.
repository에서 아이디를 확인할 때 findAll()과 findByID()를 이용하여 다음과 같이 사용할 수 있다.
repository.findAll()
@GetMapping("/Items/{id}") public Item detail(@PathVariable("id") Long id){ List items = repository.findAll(); Item item = items.stream() .filter(r->r.getId().equals(id)) .findFirst() .get(); return item; }
repository.findById(id)
@GetMapping("/Items/{id}") public Item detail(@PathVariable("id") Long id){ Item item = repository.findById(id); return item; }
public class ItemRepository { private List items = new ArrayList<>(); // 생성자 안에 공통되는 부분 넣어줌 public ItemRepository(){ items.add(new Item(1004L, "item01", "aaa01")); items.add(new Item(2000L, "item2000", "aaa01")); } public List findAll() { return items; } public Item findById(Long id) { return items.stream() .filter(r->r.getId().equals(id)) .findFirst() .get(); } }
from http://batzero.tistory.com/16 by ccl(A) rewrite - 2020-03-20 17:54:27
댓글
댓글 쓰기