Back-End/Spring Boot

6) Spring Boot 게시글 읽기: Read

psy_er 2023. 11. 26. 23:24
728x90

6) Spring Boot 게시글 읽기: Read

 

 

1. 데이터 조회 과정

웹 페이지에서 게시글을 등록하면 서버를 통해 DB에 저장됩니다.

DB에 저장된 데이터는 다음과 같은 과정을 거쳐 웹 페이지에서 조회할 수 있습니다.

 

1) 사용자가 웹 페이지에서 데이터를 조회해 달라고 URL 요청을 보냅니다.

2) 서버의 컨트롤러가 이 요청을 받아 해당 URL에서 찾으려는 데이터 정보 ex) id를 리파지터리에 전달합니다.

3) 리파지터리는 정보(id)를 가지고 DB에 데이터 조회를 요청합니다.

4) DB는 해당 데이터를 찾아 이를 엔티티로 반환합니다.

5) 반환된 엔티티는 모델을 통해 뷰 템플릿으로 전달됩니다.

6) 최종적으로 결과 뷰 페이지가 완성돼 사용자 화면에 출력됩니다.

 

2. @PathVariable

URL 요청으로 들어온 전달값을 컨트롤러의 매개변수로 가져오는 어노테이션입니다.

 

3. findById()

JPA의 CrudRepository가 제공하는 메서드로, 특정 엔티티의 id 값을 기준으로 데이터를 찾아 Optional 타입으로 반환.

 

4. findAll()

JPA의 CrudRepository가 제공하는 메서드로, 특정 엔티티를 모두 가져와 Iterable 타입으로 반환합니다.

 

5. {{#article}}{{/article}}

뷰 페이지에서 모델에 등록된 article의 사용 범위를 지정할 때 사용하는 머스테치 문법입니다.

{{#article}}부터 {{/article}}까지 범위 내에서 article 데이터를 사용할 수 있습니다. 

등록된 데이터가 복수이면 해당 범위 코드가 반복됩니다.

 

6. 반환 데이터 타입 불일치 문제 해결 방법

특정 메서드가 반환하는 데이터타입과 사용자가 작성한 반환 데이터 타입이 다를 경우, 3가지 방법으로 해결할 수 있음

- 메서드가 반환하는 데이터 타입을 사용자가 작성한 데이터 타입으로 캐스팅(형변환)하기

- 사용자가 작성한 데이터 타입을 메서드가 반환하는 데이터 타입으로 수정하기

- 메서드의 반환 데이터 타입을 원하는 타입으로 오버라이딩하기

 

 

 

728x90