Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
Tags
- 혼자 공부하는 C언어
- 윤성우의 열혈 자료구조
- coding test
- 알기쉬운 알고리즘
- 윤성우 열혈자료구조
- stream
- insertion sort
- Graph
- Selection Sorting
- 메모리구조
- C 언어 코딩 도장
- 이것이 자바다
- datastructure
- Algorithm
- 이스케이프 문자
- buffer
- s
- JSON
- Stack
- Serialization
- R
- list 컬렉션
- C programming
Archives
- Today
- Total
Engineering Note
[스프링 부트 입문 11] 데이터 조회하기 본문
본 내용은 홍팍 스프링부트 강좌를 참고하였습니다.
https://www.youtube.com/watch?v=E0YO0XqpBIY&list=PLyebPLlVYXCiYdYaWRKgCqvnCFrLEANXt&index=12
Mission
- DB에 저장된 데이터를 조회하여 웹페이지에서 확인하기

1. client가 sever에 데이터 요청, 게시물의 id로 게시물을 조회요청, -> domain:8080/article/{id}
2. 요청된 url은 controellr가 전달 받음
3. controller는 repository를 통해 DB에서 데이터 조회
4. DB는 Data를 찾아 Entity로 반환
5. 반환된 Entity는 Model을 통해 View template에 전달 됨
6. 최종적으로 결과 페이지를 완성하여 Clinet에 response
사용 어노테이션 정리
@PathVariable
- url을 통해 전달 받은 데이터를 자바 메서드가 사용할 수 있게 해줌
/articles/1로 요청이 오면
id가 1인 데이터를 찾기 위해 자바 메서드의 매개변수로 id로 전달된다.
@GetMapping("/articles/{id}")
public String showArticle(@PathVariable Long id, Model model){
log.info("id = " + id);
// 1: id로 데이터를 가져옴, Entity에 저장
Article articleEntity = articleRepository.findById(id).orElse(null);
// 2: 가져온 데이터를 모델에 등록
model.addAttribute("article", articleEntity);
// 3: 보여줄 페이지 설정
return "articles/showArticle";
}
이 데이터를 View에서 사용하기 위해 Model에 등록해준다. 이때 매개변수에 Model이 있어야 한다. Model에 "article"키로 articleEntity를 등록해주었으므로 View에서 article이 사용이 가능하다.
{{>layouts/header}}
<table class="table">
<thead>
<tr>
<th scope="col">ID</th>
<th scope="col">TITLE</th>
<th scope="col">CONTENT</th>
</tr>
</thead>
<tbody>
{{#article}}
<tr>
<th scope="row">{{id}}</th>
<td>{{title}}</td>
<td>{{content}}</td>
</tr>
{{/article}}
</tbody>
</table>
{{>layouts/footer}}
화면 페이지는 부트스트랩 에서 table로 검색해서 사용

결과화면

'Server > Spring' 카테고리의 다른 글
| [스프링 부트 입문] 14 수정 폼 만들기 (0) | 2022.07.13 |
|---|---|
| [스프링 부트 입문] 12 데이터 목록 보기 (0) | 2022.07.12 |
| [스프링 부트 입문 10] 롬복과 리팩토링 (0) | 2022.07.08 |
| [스프링 부트 입문 09]DB 테이블과 SQL (0) | 2022.07.08 |
| [스프링부트 입문 08] 데이터 생성하기 with JPA (0) | 2022.07.08 |
Comments