๋ฐ์ํ
์ฃผ์ ์ฐจ์ด์
1. Java ๋ฒ์ ์๊ตฌ์ฌํญ
- Spring Boot 2.x: ์ต์ Java 8์ ์๊ตฌํ๋ฉฐ, ์ผ๋ถ ๊ธฐ๋ฅ์ Java 11์ ์ง์
- Spring Boot 3.x: ์ต์ Java 17์ ์๊ตฌ ์ด๋ ์ต์ Java ๊ธฐ๋ฅ์ ํ์ฉํ์ฌ ์ฑ๋ฅ๊ณผ ๋ณด์์ด ๊ฐ์ ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐํ ์ ์๊ฒ ํ๋ค.
2. Jakarta EE๋ก์ ์ ํ
- Spring Boot 2.x: Java EE 8์ ๊ธฐ๋ฐ
- Spring Boot 3.x: Jakarta EE 9 ์ด์์ผ๋ก ์ ํ๋์์ต๋๋ค. ์ด๋ก ์ธํด ํจํค์ง ์ด๋ฆ์ด javax์์ jakarta๋ก ๋ณ๊ฒฝ๋์์ต๋๋ค. ์๋ฅผ ๋ค์ด, javax.servlet์ jakarta.servlet๋ก ๋ณ๊ฒฝ
3. ์๋ก์ด ๊ธฐ๋ฅ๊ณผ ๊ฐ์ ์
- Spring Boot 3.x: ๋ค์ํ ์๋ก์ด ๊ธฐ๋ฅ๊ณผ ๊ฐ์ ์ ์ด ๋์ ๋์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์๋ก์ด AOT (Ahead of Time) ์ปดํ์ผ๋ฌ๊ฐ ์ถ๊ฐ๋์ด ๋ค์ดํฐ๋ธ ์ด๋ฏธ์ง ์ง์์ด ํฅ์๋์์ต๋๋ค. ๋ํ, GraalVM ๋ค์ดํฐ๋ธ ์ด๋ฏธ์ง ์ง์์ด ๊ฐํ๋์ด ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ ์๊ฐ์ด ๋ํญ ๋จ์ถ๋์์ต๋๋ค.
4. ์ง์ ์ค๋จ ๋ฐ ์ ๊ฑฐ๋ ๊ธฐ๋ฅ
- Spring Boot 2.x: ๋ช๋ช ์ค๋๋ ๊ธฐ๋ฅ๊ณผ ์ข ์์ฑ์ ์ง์
- Spring Boot 3.x: ์ง์์ด ์ค๋จ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๊ธฐ๋ฅ์ด ์ ๊ฑฐ. ์๋ฅผ ๋ค์ด, ์ค๋๋ Spring Security OAuth ํ๋ก์ ํธ๊ฐ ์ ๊ฑฐ๋๊ณ , Spring Authorization Server๋ก ๋์ฒด
5. Spring Framework 6.x ๊ธฐ๋ฐ
- Spring Boot 2.x: Spring Framework 5.x๋ฅผ ๊ธฐ๋ฐ
- Spring Boot 3.x: Spring Framework 6.x๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ฉฐ, ์ด ๋ฒ์ ์ ๋ชจ๋ํ๋ฅผ ์ง์ํ๊ณ ์ต์ Java ๋ฐ Jakarta EE ํ์ค์ ๋ฐ๋ฅธ๋ค.
์ข ์์ฑ ๋ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ณํ
- Spring Boot 3.x: Hibernate ORM 6.x, Thymeleaf 3.0 ๋ฑ ์ต์ ๋ฒ์ ์ ์ฃผ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๊ธฐ๋ณธ์ผ๋ก ์ฌ์ฉํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ฑ๋ฅ ํฅ์๊ณผ ์๋ก์ด ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
- Spring Boot 2.x: ์ด์ ๋ฒ์ ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ์์ ์ฑ์ ๋ณด์ฅํ์ง๋ง ์ต์ ๊ธฐ๋ฅ์ด ๋ถ์กฑํ ์ ์์ต๋๋ค.
์ฑ๋ฅ ๋ฐ ์ต์ ํ
- Spring Boot 3.x: AOT ์ปดํ์ผ๊ณผ GraalVM ๋ค์ดํฐ๋ธ ์ด๋ฏธ์ง๋ฅผ ํตํด ์ฑ๋ฅ ์ต์ ํ๊ฐ ์ด๋ฃจ์ด์ก์ต๋๋ค. ์ด๋ก ์ธํด ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋์ด ์ค์ด๋ค๊ณ , ์์ ์๊ฐ์ด ๋จ์ถ
- Spring Boot 2.x: ์ ํต์ ์ธ JVM ๊ธฐ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ฑ๋ฅ ์ต์ ํ๋ฅผ ์ ๊ณต
ํธํ์ฑ๊ณผ ๋ง์ด๊ทธ๋ ์ด์
- Spring Boot 3.x: Jakarta EE ์ ํ์ผ๋ก ์ธํด ๋ง์ ์ฝ๋๋ฒ ์ด์ค๊ฐ ๋ณ๊ฒฝ๋ ํ์๊ฐ ์์ต๋๋ค. ์ด๋ฅผ ์ํด Spring ํ์ ๋ง์ด๊ทธ๋ ์ด์ ๊ฐ์ด๋๋ฅผ ์ ๊ณตํ๊ณ ์๋ค.
- Spring Boot 2.x: ๊ธฐ์กด Java EE ๊ธฐ๋ฐ ์ฝ๋๋ฅผ ๊ทธ๋๋ก ์ฌ์ฉํ ์ ์์ด, ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ด ๋๋ค.
์ปค๋ฎค๋ํฐ์ ์ง์
- Spring Boot 3.x: ์ต์ ๊ธฐ์ ๊ณผ ๊ธฐ๋ฅ์ ๋ํ ์ ๊ทน์ ์ธ ์ง์๊ณผ ์ปค๋ฎค๋ํฐ ํผ๋๋ฐฑ์ ๋ฐ์ํ์ฌ ๋ฐ์ ํ๊ณ ์๋ค.
- Spring Boot 2.x: ์์ ์ ์ธ ํ๊ฒฝ์ ์ ๊ณตํ์ง๋ง, ์ฅ๊ธฐ์ ์ผ๋ก๋ ์ต์ ๋ฒ์ ์ผ๋ก์ ๋ง์ด๊ทธ๋ ์ด์ ์ด ๊ถ์ฅ
๊ฒฐ๋ก
Spring Boot 2.x์ 3.x๋ ๊ฐ๊ฐ์ ์ฅ์ ๊ณผ ๋จ์ ์ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ, ์ฌ์ฉ์๋ ์์ ์ ํ์์ ๋ฐ๋ผ ์ ์ ํ ๋ฒ์ ์ ์ ํํ ์ ์๋ค.
- Spring Boot 3.x: ์ต์ ๊ธฐ์ ๊ณผ ์ฑ๋ฅ ์ต์ ํ๋ฅผ ์ํ๋ ์ฌ์ฉ์์๊ฒ ์ ํฉํฉ๋๋ค. Java 17 ์ด์์ ์๊ตฌํ๋ฉฐ, Jakarta EE๋ก์ ์ ํ์ด ํ์
- Spring Boot 2.x: ์์ ์ ์ธ ํ๊ฒฝ๊ณผ ๊ธฐ์กด Java EE ๊ธฐ๋ฐ ํ๋ก์ ํธ์์ ํธํ์ฑ์ ์ ์งํ๋ ค๋ ์ฌ์ฉ์์๊ฒ ์ ํฉ
๋ฐ์ํ
'๐ฟSpring > Spring Framework' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Spring Framework] Spring Boot์ ์์ ํ๋ก์ธ์ค (0) | 2024.05.13 |
---|---|
[Spring Framework - Thymeleaf] Decoupled Logic (0) | 2024.01.21 |
[Spring Framework - Thymeleaf] Thymeleaf ๋? (0) | 2024.01.18 |
[Spring Framework] Transction (1) | 2024.01.11 |
[Spring Framework] Filter ์ Interceptor (1) | 2024.01.11 |