Skip to content

이 저장소는 Spring Boot를 활용한 백엔드 개발 실습 예제를 모아둔 저장소입니다. 각 예제는 실무에서 자주 사용되는 패턴과 기술 요소를 직접 적용해보는 목적을 가지고 구성되었으며, **Spring MVC, JPA, REST API, 파일 업로드, 시큐리티, JSP** 등 다양한 주제를 다룹니다.

Notifications You must be signed in to change notification settings

BUGISU/springboot-bootcamp-july2024

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📚 Spring Boot Practice Projects Collection

Title suggestion for the GitHub repo: springboot-lab-2407 Hands-on Spring Boot examples from the 2024-07 class sessions


Table of Contents

No. Project Quick Purpose
1 ex1 가장 기본적인 “Hello, Spring Boot” 예제
2 ex2 Spring Data JPA + H2 CRUD 실습
3 ex3 Paging & Sorting JPA
4 ex4 JPQL / Query 메소드 고급 예제
5 ex5mv MVC 패턴 - Model & View 분리
6 ex6 Validation & Exception Handling
7 ex7 파일 업로드 / 다운로드
8 ex8 RESTful API & JSON 응답
9 exJSP JSP View, Spring Security 기본
10 test-server 통합 테스트 전용 서버 스켈레톤
11 InstaPrj “Instagram Clone” - 게시글 & 댓글
12 MyInstaPrj InstaPrj 개선판 (+Likes, Follow)

TIP : 각 항목의 디렉터리 트리 는 접어서 보도록 <details> 태그를 사용했습니다. 필요 없는 코드를 줄여 README 길이를 관리할 수 있으니, 상황에 따라 열/닫아 주세요.


공통 구조

모든 예제는 표준 Maven 레이아웃을 따릅니다.

<project>/
 ├─ pom.xml
 ├─ src/
 │  ├─ main/
 │  │  ├─ java/…        # 애플리케이션/도메인 코드
 │  │  └─ resources/…   # 설정, 정적 리소스
 │  └─ test/java/…       # 테스트 코드
 └─ README.md            # (← 바로 이 파일!)

프로젝트별 디렉터리 트리 & 설명

ex1

디렉터리 트리 보기
ex1/
├─ .gitignore
├─ mvnw*
├─ pom.xml
└─ src/
   ├─ main/
   │  ├─ java/com/example/ex1/
   │  │  ├─ Ex1Application.java
   │  │  └─ controller/
   │  │     ├─ HelloController.java
   │  │     └─ DataController.java
   │  └─ resources/
   │     ├─ application.properties
   │     └─ static/
   │        └─ index.html
   └─ test/java/com/example/ex1/
      └─ Ex1ApplicationTests.java

핵심 학습 포인트 : 정적 리소스 서빙, 단순 컨트롤러 매핑


ex2

디렉터리 트리 보기
ex2/
├─ pom.xml
└─ src/
   ├─ main/java/com/example/ex2/
   │  ├─ Ex2Application.java
   │  ├─ entity/Memo.java
   │  └─ repository/MemoRepository.java
   ├─ main/resources/application.properties
   └─ test/java/com/example/ex2/
      ├─ Ex2ApplicationTests.java
      └─ repository/MemoRepositoryTests.java

핵심 학습 포인트 : Spring Data JPA 기본 CRUD, 테스트 작성


ex3

디렉터리 트리 보기
ex3/
├─ pom.xml
└─ src/main/java/com/example/ex3/
   ├─ Ex3Application.java
   ├─ entity/
   ├─ dto/
   └─ repository/

핵심 학습 포인트 : 페이징·정렬, DTO 변환


ex4

디렉터리 트리 보기
ex4/
├─ pom.xml
└─ src/main/
   ├─ java/com/example/ex4/
   └─ resources/

핵심 학습 포인트 : JPQL, Query 메소드 커스터마이징


ex5mv

디렉터리 트리 보기
ex5mv/
├─ pom.xml
└─ src/main/
   ├─ java/com/example/ex5mv/
   │  ├─ Ex5Application.java
   │  ├─ controller/
   │  └─ service/
   └─ resources/templates/   # Thymeleaf views

핵심 학습 포인트 : MVC 계층 분리, Thymeleaf 연동


ex6

디렉터리 트리 보기
ex6/
├─ pom.xml
└─ src/main/
   ├─ java/com/example/ex6/
   │  ├─ Ex6Application.java
   │  └─ controller/
   └─ resources/

핵심 학습 포인트 : Bean Validation, 전역 예외 처리


ex7

디렉터리 트리 보기
ex7/
├─ pom.xml
└─ src/main/
   ├─ java/com/example/ex7/
   └─ resources/

핵심 학습 포인트 : 멀티파트 파일 업로드, 로컬 저장


ex8

디렉터리 트리 보기
ex8/
├─ pom.xml
└─ src/main/
   ├─ java/com/example/ex8/
   └─ resources/

핵심 학습 포인트 : REST Controller, JSON 직렬화


exJSP

디렉터리 트리 보기
exJSP/
├─ pom.xml
└─ src/
   ├─ main/java/com/example/exJSP/
   │  ├─ ExJspApplication.java
   │  ├─ config/SecurityConfig.java
   │  └─ controller/SampleController.java
   ├─ main/resources/application.properties
   └─ main/webapp/WEB-INF/views/

핵심 학습 포인트 : JSP 뷰, 기본 Spring Security 설정


test-server

디렉터리 트리 보기
test-server/
├─ pom.xml
└─ src/
   ├─ main/java/com/example/testserver/
   └─ test/java/com/example/testserver/

핵심 학습 포인트 : MockMvc / TestRestTemplate 등을 이용한 통합 테스트


InstaPrj

디렉터리 트리 보기
InstaPrj/
├─ pom.xml
└─ src/
   ├─ main/java/com/example/insta/
   │  ├─ controller/
   │  ├─ domain/
   │  ├─ security/
   │  └─ service/
   └─ main/resources/

핵심 학습 포인트 : 게시물·댓글·회원가입, Spring Security 로그인


MyInstaPrj

디렉터리 트리 보기
MyInstaPrj/
├─ pom.xml
└─ src/
   ├─ main/java/com/example/myinsta/
   │  ├─ controller/
   │  ├─ domain/
   │  ├─ security/
   │  └─ service/
   └─ main/resources/

핵심 학습 포인트 : InstaPrj 확장판 – 좋아요, 팔로우, S3 이미지 업로드 등


사용 방법

# 예: ex3 실행
cd ex3
./mvnw spring-boot:run
# 또는
mvn spring-boot:run

JDK 17+Maven 3.9+ 환경 권장 일부 예제는 H2 DB 메모리 모드로 자동 실행됩니다.

About

이 저장소는 Spring Boot를 활용한 백엔드 개발 실습 예제를 모아둔 저장소입니다. 각 예제는 실무에서 자주 사용되는 패턴과 기술 요소를 직접 적용해보는 목적을 가지고 구성되었으며, **Spring MVC, JPA, REST API, 파일 업로드, 시큐리티, JSP** 등 다양한 주제를 다룹니다.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published