개발 수업/Spring Boot
[SpringBoot] 목록조회, 상세조회
오늘 하루s
2023. 8. 24. 23:26
728x90
더보기
Day81. 230824
QuestionController>
QuestionService를 @Autowired했던 것을 제거하고 리턴유형을 final로 바꾼다.
@RequiredArgsConstructor어노테이션 추가하면 이전과 동일하게 작동한다.
@RequiredArgsConstructor은 외부에서 final로 선언한 참조 변수가 있다면 객체를 자동으로 초기화시켜준다.
QuestionService>
서비스 클래스도 마찬가지로 @Autiwired제거 후 final 선언 후 @RequiredArgsConstructor어노테이션 추가해준다.
question_list.html>
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>question_list</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css"
href="/css/style.css" th:href="@{/css/style.css}" />
</head>
<body>
<p>question_list.html문서</p>
<h1>question list</h1>
<table border="1">
<tr>
<th>번호</th>
<th>제목</th>
<!--<th>내용</th>-->
<th>질문등록일</th>
</tr>
<tr th:each="question : ${questionList}">
<td th:text="${question.id}"></td>
<!--<td><a href="/question/detail?id=${question.id}" th:text="${question.subject}"></a></td>-->
<td>
<!-- th:href속성에서 주소를 나타낼때에는 반드시 @{}을 이용
@{URL}
주의 : URL이 조합되어질때에는 @{||} 작성해야한다. -->
<a href="/question/detail/${question.id}"
th:href="@{|/question/detail/${question.id}|}"
th:text="${question.subject}"></a>
</td>
<!--<td th:text="${question.content}"></td>-->
<td th:text="${question.createDate}"></td>
</tr>
</table>
<p>
<a href="/" th:href="@{/}">Return to home</a>
</p>
</body>
</html>
Thymeleaf를 사용해 작성해주었다.
컨트롤러에 상세조회를 추가해준다.
question_detail.html>
그러면 다음과 같이 목록이 출력된다.
8번에 마우스를 올리면 왼쪽 처럼 주소가 나온다.
상세조회도 가능하다.
728x90