🗓️ 2025.03.17. ~ 2025.03.21.
✅ 학습 개요
8주 차는 Spring Boot의 버전별 구조 차이를 비교하고,
3.0 기준의 실습 흐름으로 전환해 프로젝트를 구성해보는 시간이었다.
기존의 설정 파일 구조와 달리 application 설정 파일을 통해
서버 포트, 뷰 경로, DB 정보를 구조적으로 관리하는 방식을 익혔다.
Controller, DTO, Service, Repository 계층을 나누며
보다 견고한 웹 애플리케이션 아키텍처 설계를 실습할 수 있었다.
📝 주요 학습 내용
🆚 1. Spring Boot 2.0 vs 3.0 구조 비교
- 버전에 따른 디렉터리 구조 및 의존성 변화 확인
- 설정 파일 방식 및 실행 흐름 변화 간접 학습
- 템플릿 렌더링 방식, 경로 지정 방식 비교 분석
📁 2. application.yml 설정 실습
- 서버 포트, 뷰 경로, DB 정보 설정 구조 이해
- server, spring, datasource 등 계층형 설정 방식 학습
- yml 작성 시 들여쓰기/구조 오류 해결 경험
📨 3. DTO & Controller 흐름 개선
- HTML name과 DTO 변수 매칭 방식 정리
- Model을 통해 View로 데이터 전달 방식 명확화
- @ModelAttribute, @RequestParam 활용 실습
🧩 4. Service / Repository 분리 구성
- 비즈니스 로직(Service)와 DB 로직(Repository) 분리
- @Service, @Repository, @Component 역할 구분
- 의존성 주입(@Autowired vs 생성자 주입) 방식 실습
🔧 5. CRUD 기능 구현 및 전체 흐름 테스트
- 게시글 등록, 수정, 삭제, 상세보기 흐름 정리
- Controller - Service - Repository - DB 흐름 구조화
- RESTful 방식의 URL 설계 간접 학습
🧠 인상 깊었던 실습 코드
@Controller
public class PostController {
private final PostService postService;
public PostController(PostService postService) {
this.postService = postService;
}
@PostMapping("/create")
public String createPost(PostDTO dto) {
postService.save(dto);
return "redirect:/posts";
}
}
📌 생성자 주입 방식으로 Service를 연결하고,
DTO를 통해 데이터 전달 구조를 간결하게 구현할 수 있었다.
🐞 실습 중 이슈 & 해결 방법
이슈 | 해결 방법 |
설정 파일 들여쓰기 오류 | 설정 항목의 계층 구조를 정확히 지키는 것이 중요 |
DTO 값이 null로 전달됨 | HTML의 name 속성과 DTO 필드명이 일치하는지 확인 |
Service 인식 오류 | @Service 어노테이션 누락 or 컴포넌트 스캔 경로 오류 |
Repository 접근 오류 | @Repository 설정 및 의존성 주입 확인 필요 |
💬 느낀 점
8주 차는 실습을 통해 Spring Boot 프로젝트의 구성 원리를 깊이 이해할 수 있었다.
Controller부터 Repository까지의 흐름을 직접 설계하고 구성해보며,
단순히 “작동하는 코드”를 넘어서 “잘 정리된 구조”의 중요성을 실감했다.
앞으로의 프로젝트에서도 이 흐름을 계속 유지하며 더 나은 개발을 해보고 싶다.
💻 실습 코드 전체 보기
👉 자세한 실습 코드는 아래 글에서 확인할 수 있습니다!
🔗 <"👉https://ny1114.tistory.com/entry/8주-차-실습-코드-모음">
✍️ 한 줄 회고
"구조를 이해하고 구성할 줄 아는 것, 그게 진짜 개발자의 시작이다."
'DevLog > 학습일지' 카테고리의 다른 글
📓 [10주 차 학습일지 – JS 기초 & 회원 기능 + 검색/페이징 구현 흐름] (0) | 2025.04.13 |
---|---|
📓 [9주 차 학습일지 – 카테고리 기능 구현 & 프로젝트 통합 흐름] (0) | 2025.04.13 |
📓 [7주 차 학습일지 – Spring Boot 웹 구성 & MVC 흐름 실습] (0) | 2025.04.10 |
📓 [6주 차 학습일지 – UI 구현 & Spring Boot 백엔드 기초] (0) | 2025.04.08 |
📓 [5주 차 학습일지 – SQL 심화 & Spring Boot UI 입문] (0) | 2025.04.08 |
댓글