Spring Boot

์ตœ์‹  Spring Boot ๊ธฐ์‚ฌ

BACKEND
16๊ฐœ์˜ ๊ธฐ์‚ฌ

Spring Boot์— ๊ด€ํ•œ ์ตœ์‹  ๊ธฐ์‚ฌ์™€ ๊ฐ€์ด๋“œ๋ฅผ ํ™•์ธํ•˜์„ธ์š”

Spring Boot 3์™€ GraalVM Native Image: AOT ์ปดํŒŒ์ผ๊ณผ ์„ฑ๋Šฅ ์ตœ์ ํ™”
BACKEND

2026๋…„ Spring Boot 3์™€ GraalVM Native Image: ๋‹จ๊ณ„๋ณ„ AOT ์ปดํŒŒ์ผ

GraalVM์œผ๋กœ Spring Boot 3 ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋„ค์ดํ‹ฐ๋ธŒ ์ด๋ฏธ์ง€๋กœ ์ปดํŒŒ์ผํ•˜๋Š” ์™„๋ฒฝ ๊ฐ€์ด๋“œ. AOT ์„ค์ •, ์ตœ์ ํ™” ๋ฐ ์šด์˜ ๋ฐฐํฌ๊นŒ์ง€.

Spring Cloud Gateway: ๋ผ์šฐํŒ…, ํ•„ํ„ฐ, ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ ๋ฉด์ ‘ ์งˆ๋ฌธ
BACKEND

Spring Cloud Gateway ๋ฉด์ ‘ ๋Œ€๋น„: ๋ผ์šฐํŒ…, ํ•„ํ„ฐ, ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ

๊ธฐ์ˆ  ๋ฉด์ ‘์„ ์œ„ํ•œ Spring Cloud Gateway ์ •๋ณต: ๋ผ์šฐํŒ…, ํ•„ํ„ฐ, ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ, API ๊ฒŒ์ดํŠธ์›จ์ด ํŒจํ„ด์„ ๋‹ค๋ฃจ๋Š” 12๊ฐœ์˜ ์งˆ๋ฌธ๊ณผ ์ฝ”๋“œ ์˜ˆ์ œ.

Testcontainers, PostgreSQL, Redis, Kafka๋ฅผ ์‚ฌ์šฉํ•œ Spring Boot ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ
BACKEND

Testcontainers Spring Boot: ๊ณ ํ†ต ์—†๋Š” ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ

Spring Boot 3.4์—์„œ Testcontainers๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์™„์ „ํ•œ ๊ฐ€์ด๋“œ์ž…๋‹ˆ๋‹ค. ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๊ณ  ์žฌํ˜„ ๊ฐ€๋Šฅํ•œ ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด Docker ์ปจํ…Œ์ด๋„ˆ์—์„œ PostgreSQL, Redis, Kafka๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

Spring Boot ํŠธ๋žœ์žญ์…˜ ์ „ํŒŒ: ๋ฉด์ ‘ ์งˆ๋ฌธ๊ณผ ์‹ค์šฉ์  ์˜ˆ์ œ
BACKEND

Spring Boot ๋ฉด์ ‘: ํŠธ๋žœ์žญ์…˜ ์ „ํŒŒ ์„ค๋ช…

Spring Boot ํŠธ๋žœ์žญ์…˜ ์ „ํŒŒ ๋งˆ์Šคํ„ฐํ•˜๊ธฐ: REQUIRED, REQUIRES_NEW, NESTED ๋“ฑ. ์ฝ”๋“œ ์˜ˆ์ œ์™€ ์ผ๋ฐ˜์ ์ธ ํ•จ์ •์„ ํฌํ•จํ•œ 12๊ฐ€์ง€ ๋ฉด์ ‘ ์งˆ๋ฌธ.

fetch join๊ณผ EntityGraph๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Spring Data JPA์˜ N+1 ๋ฌธ์ œ ํ•ด๊ฒฐ
BACKEND

2026๋…„ Spring Data JPA N+1 ๋ฌธ์ œ ํ•ด๊ฒฐ๋ฒ•: Fetch Join๊ณผ EntityGraph

Spring Data JPA์˜ N+1 ๋ฌธ์ œ๋ฅผ ํƒ์ง€ํ•˜๊ณ  ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์™„๋ฒฝ ๊ฐ€์ด๋“œ์ž…๋‹ˆ๋‹ค. Fetch join, @EntityGraph, batch fetching, ์ฟผ๋ฆฌ ์„ฑ๋Šฅ ์ „๋žต์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค.

Spring Security 6์„ ํ†ตํ•œ OAuth2 ๋ฆฌ์†Œ์Šค ์„œ๋ฒ„ ๊ตฌ์„ฑ
BACKEND

Spring Security 6: OAuth2 ๋ฆฌ์†Œ์Šค ์„œ๋ฒ„ ์„ค์ •

Spring Security 6์œผ๋กœ OAuth2 ๋ฆฌ์†Œ์Šค ์„œ๋ฒ„๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์‹ค์ „ ๊ฐ€์ด๋“œ์ž…๋‹ˆ๋‹ค. JWT ๊ฒ€์ฆ, issuer ์„ค์ •, ์Šค์ฝ”ํ”„ ๊ด€๋ฆฌ ๋ฐ Keycloak ํ†ตํ•ฉ์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค.