Java 21 Release

2023. 9. 20. 11:00ยทLanguages/JAVA

Java 21 Release

์˜ˆ์ •๋Œ€๋กœ 9์›” 19์ผ์ž๋กœ Java 21 GA ๋ฆด๋ฆฌ์ฆˆ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

 

(์ด๋ฏธ์ง€ ์ถœ์ฒ˜ - Inside Java)

1. Java 21 Release Note

Java 21 ์ „์ฒด ๋ฆด๋ฆฌ์ฆˆ ๋…ธํŠธ๋Š” ์—ฌ๊ธฐ์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

- https://jdk.java.net/21/release-notes

- https://inside.java/2023/09/19/the-arrival-of-java-21

2. ์ฃผ์š” ๊ธฐ๋Šฅ ์š”์•ฝ

Java 21์— ์ถ”๊ฐ€๋˜๋Š” ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ๋“ค ์ค‘ Preview๋‚˜ Incubator๋Š” ์ œ์™ธํ•˜๊ณ , ์ฃผ์š” ๊ธฐ๋Šฅ๋งŒ ์‚ดํŽด๋ณด๋ฉด ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

2.1 Virtual Threads (Project Loom) ๊ฐ€ ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค. (**JEP 444**)

*"๊ฐ€์ƒ ์Šค๋ ˆ๋“œ๊ฐ€ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค์—์„œ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ด๋ฅด๊ธฐ๊นŒ์ง€ ๋น„๋™๊ธฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๊ณ  ๋ฐฐํฌํ•˜๋Š” ๋ฐฉ์‹์— ์˜ํ–ฅ์„ ๋ฏธ์น  ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— Java 21์€ ๊ฐ€์žฅ ์ค‘์š”ํ•œ Java ๋ฆด๋ฆฌ์Šค ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค."*

Agile Developer, Inc์˜ ์„ค๋ฆฝ์ž ๋ฒค์บ‡ ์ˆ˜๋ธŒ๋ผ๋งˆ๋‹ˆ์•”(Venkat Subramaniam)

๊ฐ€์ƒ ์Šค๋ ˆ๋“œ๋Š” ๊ณ ์„ฑ๋Šฅ Java ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๋ฉ€ํ‹ฐํƒœ์Šคํ‚น์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์ƒˆ๋กญ๊ณ  ํšจ์œจ์ ์ธ ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ์กด Java ๊ฐœ๋ฐœ์—์„œ ์Šค๋ ˆ๋“œ๋Š” ์—ฌ๋Ÿฌ ์ž‘์—…์„ ๋™์‹œ์— ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ๋ฉ”์ปค๋‹ˆ์ฆ˜์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด๋Ÿฌํ•œ ๊ธฐ์กด ์Šค๋ ˆ๋“œ๋Š” ์šด์˜ ์ฒด์ œ์— ๋ฌถ์—ฌ ์žˆ์–ด ํ•œ ๋ฒˆ์— ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ์Šค๋ ˆ๋“œ ์ˆ˜๊ฐ€ ์ œํ•œ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ œํ•œ์œผ๋กœ ์ธํ•ด ๋” ๋งŽ์€ ์ž‘์—…์ด๋‚˜ ์‚ฌ์šฉ์ž๋ฅผ ์ฒ˜๋ฆฌํ•˜๋„๋ก ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ™•์žฅํ•˜๊ธฐ๊ฐ€ ์–ด๋ ต์Šต๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ์ž๋Š” ๊ฐ ์‚ฌ์šฉ์ž ์š”์ฒญ์— ํ•˜๋‚˜์˜ ์Šค๋ ˆ๋“œ๋ฅผ ํ• ๋‹นํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด "์š”์ฒญ๋‹น ํ•˜๋‚˜์˜ ์Šค๋ ˆ๋“œ" ์ ‘๊ทผ ๋ฐฉ์‹์€ ๊ฐ„๋‹จํ–ˆ์ง€๋งŒ ์‹œ์Šคํ…œ ์ œํ•œ์œผ๋กœ ์ธํ•ด ๋ฒฝ์— ๋ถ€๋”ชํ˜”์Šต๋‹ˆ๋‹ค. ๋Œ€์•ˆ์œผ๋กœ '๋น„๋™๊ธฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ'์„ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ, ์ด ๋ฐฉ๋ฒ•์€ ๋” ํšจ์œจ์ ์ด๊ธด ํ•˜์ง€๋งŒ ์ฝ”๋“œ๊ฐ€ ๋” ๋ณต์žกํ•˜๊ณ  ์ดํ•ดํ•˜๊ธฐ ์–ด๋ ค์› ์Šต๋‹ˆ๋‹ค.

๊ฐ€์ƒ ์Šค๋ ˆ๋“œ๋Š” ๋‘ ๊ฐ€์ง€ ์žฅ์ ์„ ๊ฒฐํ•ฉํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋Š” '์š”์ฒญ๋‹น ํ•˜๋‚˜์˜ ์Šค๋ ˆ๋“œ' ์Šคํƒ€์ผ์„ ์‚ฌ์šฉํ•˜๋ฉด์„œ ์šด์˜ ์ฒด์ œ์— ์–ฝ๋งค์ธ ์ œํ•œ์„ ํ”ผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€์ƒ ์Šค๋ ˆ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์‹œ์Šคํ…œ ์ œํ•œ์— ๋Œ€ํ•œ ๊ฑฑ์ • ์—†์ด ๋งŽ์€ ์ˆ˜์˜ ์Šค๋ ˆ๋“œ๋ฅผ ๋ณด์œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฝ”ํ‹€๋ฆฐ๊ณผ ๊ฐ™์€ ์–ธ์–ด์—์„œ ์ฝ”๋ฃจํ‹ด์„ ์ด์šฉํ•ด์„œ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ์—ˆ์œผ๋‚˜, ์ด์ œ๋Š” JVM ๋ ˆ๋ฒจ์—์„œ ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•ด์กŒ๋‹ค๊ณ  ๋ณด์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

๋‹จ, ์ž˜๋ชป ์•Œ๋ ค์ง„ ๊ฒƒ์ด ์žˆ๋Š”๋ฐ ๊ธฐ์กด ์Šค๋ ˆ๋“œ ๊ตฌํ˜„์„ ์ œ๊ฑฐํ•˜๊ฑฐ๋‚˜ ๊ธฐ์กด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐ€์ƒ ์Šค๋ ˆ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์กฐ์šฉํžˆ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•˜๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ๊ฐ€ ์•„๋‹ˆ๋ผ๊ณ  ์ŠคํŽ™ ๋ฌธ์„œ์— ๋ช…์‹œ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ์ œ

// ๊ธฐ์กด ๋ฐฉ์‹
Thread thread = new Thread(() -> {
  // Do some task
});
thread.start();

// ๊ฐ€์ƒ ์“ฐ๋ ˆ๋“œ
Thread.ofVirtual().unstarted(() -> {
  // Do some task
}).start();

2.2 Sequenced Collections ์ด ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค. (**JEP 431**)

*"Java 21์˜ ์‹œํ€€์Šค ์ปฌ๋ ‰์…˜ ๊ธฐ๋Šฅ์€ ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ์œ„ํ•œ ํ›Œ๋ฅญํ•œ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋Š” ๋” ์ด์ƒ JUnit ํ…Œ์ŠคํŠธ์—์„œ ์‹ค์ˆ˜๋กœ ์ธ์นด์šดํ„ฐ ์ˆœ์„œ์— ์˜์กดํ–ˆ๋‹ค๊ฐ€ ๋นŒ๋“œ ์„œ๋ฒ„**, ์—…๊ทธ๋ ˆ์ด๋“œ ๋˜๋Š” ๋‹ค๋ฅธ ๊ณณ์—์„œ ์‹คํŒจํ• ๊นŒ ๋ด ๊ฑฑ์ •ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.***"

Java ์ฑ”ํ”ผ์–ธ์ธ Jeanne Boyarsky

์ •ํ•ด์ง„ ์ˆœ์„œ๋Œ€๋กœ ์•„์ดํ…œ์„ ์กฐํšŒํ•  ์ˆ˜ ์žˆ๋Š” ์ปฌ๋ ‰์…˜์— ์ƒˆ๋กœ์šด ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค.

interface SequencedCollection<E> extends Collection<E> {
    // new method
    SequencedCollection<E> reversed();
    // methods promoted from Deque
    void addFirst(E);
    void addLast(E);
    E getFirst();
    E getLast();
    E removeFirst();
    E removeLast();
}

 

2.3 Switch ๋ฌธ์˜ ํŒจํ„ด ๋งค์นญ์ด ๊ฐ•ํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค (**JEP 441**)

  • Switch ๋ฌธ์—์„œ ํŠน์ • ํƒ€์ž…์— ๋”ฐ๋ผ ๋ถ„๊ธฐ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ตฌ๋ฌธ์ด ์ง€์›๋ฉ๋‹ˆ๋‹ค.
  • Switch ๋ฌธ์—์„œ Null ์ธ ์ผ€์ด์Šค๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ์‹์ด ์ง€์›๋ฉ๋‹ˆ๋‹ค.
  • Switch ๋ฌธ์—์„œ when ํ‚ค์›Œ๋“œ๋ฅผ ์ด์šฉํ•ด ๋ณด๋‹ค ๋ณต์žกํ•œ ์ผ€์ด์Šค ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•ด์ง‘๋‹ˆ๋‹ค.
  • Switch ๋ฌธ์—์„œ Enum ์„ ๋ณด๋‹ค ์œ ์—ฐํ•˜๊ฒŒ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

2.4 Record Pattern ์„ ์ด์šฉํ•˜์—ฌ ์ข€ ๋” ๊น”๋”ํ•œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. (**JEP 440**)

  • ๋ ˆ์ฝ”๋“œ ํŒจํ„ด์€ ์ถ”์ถœ๋œ ์ปดํฌ๋„ŒํŠธ์— ๋Œ€ํ•œ ์ง€์—ญ ๋ณ€์ˆ˜ ์„ ์–ธ์„ ์ œ๊ฑฐํ•˜๊ณ  ํŒจํ„ด๊ณผ ๊ฐ’์ด ์ผ์น˜ํ•  ๋•Œ ์ ‘๊ทผ์ž ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ดˆ๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค.
if (obj instanceof Point(int x, int y)) {
    System.out.println(x+y);
}

2.5 Z Garbage Collector(ZGC) (**JEP 439**)

  • Z ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰ํ„ฐ(ZGC)๋ฅผ ํ™•์žฅํ•˜์—ฌ ์ Š์€ ๊ฐœ์ฒด์™€ ์˜ค๋ž˜๋œ ๊ฐœ์ฒด์˜ ์„ธ๋Œ€๋ฅผ ๋ถ„๋ฆฌํ•˜์—ฌ ์œ ์ง€ํ•จ์œผ๋กœ์จ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•ฉ๋‹ˆ๋‹ค.

2.6 ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜ KEM ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•ฉ๋‹ˆ๋‹ค (**JEP 452**)

  • ๊ณต๊ฐœ ํ‚ค ์•”ํ˜ธํ™”๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋Œ€์นญ ํ‚ค๋ฅผ ๋ณดํ˜ธํ•˜๋Š” ์•”ํ˜ธํ™” ๊ธฐ์ˆ ์ธ ํ‚ค ์บก์Аํ™” ๋ฉ”์ปค๋‹ˆ์ฆ˜(KEM)์„ ์œ„ํ•œ API๊ฐ€ ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค.

3. Java 21 Support

Java 17 ๋‹ค์Œ์˜ LTS ๋ฒ„์ „์ด๋ผ์„œ ๋งŽ์ด๋“ค ๊ธฐ๋‹ค๋ฆฌ์…จ์„ํ…๋ฐ์š”.

Java ์ƒํƒœ๊ณ„๋Š” ์•„์ง ์ค€๋น„ ์ค‘์ด๋ผ ๋ณธ๊ฒฉ์ ์ธ ๋„์ž…๊นŒ์ง€๋Š” ์‹œ๊ฐ„์ด ์ข€ ๋” ํ•„์š”ํ•ด๋ณด์ž…๋‹ˆ๋‹ค.

  • Spring Boot๋Š” v3.2.0 ๋ถ€ํ„ฐ ์ง€์› ์˜ˆ์ •์ด๋ฉฐ, ํ˜„์žฌ, M2 ๋‹จ๊ณ„์ด๊ณ , 11์›” 23์ผ ๋ฆด๋ฆฌ์ฆˆ ๋ชฉํ‘œ์ž…๋‹ˆ๋‹ค.
  • Gradle๋Š” v8.4 ๋ถ€ํ„ฐ ์ง€์› ์˜ˆ์ •์ด๋ฉฐ, ํ˜„์žฌ Java 20์„ ์™„๋ฒฝ ์ง€์›ํ•˜๋Š” v8.3 ์ด๋ฉฐ, v8.4 ์ผ์ •์€ ๋ฏธ์ •์ž…๋‹ˆ๋‹ค.
  • JDK 21 ์šฉ GraalVM ์€ ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

4. Java 21 Launch Event - Live Streaming

  • ํ•œ๊ตญ์‹œ๊ฐ„ 9์›” 19์ผ 21์‹œ๋ถ€ํ„ฐ ์ƒˆ๋ฒฝ 6์‹œ๊นŒ์ง€ 8์‹œ๊ฐ„ ๋™์•ˆ ๋ผ์ด๋ธŒ์ŠคํŠธ๋ฆฌ๋ฐ์„ ํ†ตํ•ด Java ์ถœ์‹œ์™€ ๊ด€๋ จ๋œ ๋ผ์ด๋ธŒ ์„ธ์…˜๋“ค์ด ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค. ์„ธ๋ถ€ ์•„์  ๋‹ค๋Š” ์•ˆ๋‚ด ํŽ˜์ด์ง€๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”.
  • ์•ˆ๋‚ด ํŽ˜์ด์ง€ : https://dev.java/community/java-21-launch/
  • ์œ ํŠœ๋ธŒ ๋งํฌ : https://www.youtube.com/live/E8NV68ihJyY?si=tzPyfdGh9O1hcpck

5. JDK 21 ๋‹ค์šด๋กœ๋“œ

5.1 OpenJDK JDK 21

  • https://jdk.java.net/21

5.2 Oracle

  • https://www.oracle.com/java/technologies/downloads/
  • Oracle JDK 21 ๋ฐ”์ด๋„ˆ๋ฆฌ๋Š” ํ”„๋กœ๋•์…˜ ํ™˜๊ฒฝ์—์„œ ๋ฌด๋ฃŒ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์˜ค๋ผํด ๋ฌด๋ฃŒ ์‚ฌ์šฉ ์•ฝ๊ด€(NFTC)์— ๋”ฐ๋ผ ๋ฌด๋ฃŒ๋กœ ์žฌ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • JDK 21์€ ๋‹ค์Œ LTS๊ฐ€ ์ถœ์‹œ๋˜๊ณ  1๋…„ ํ›„์ธ 2026๋…„ 9์›”๊นŒ์ง€ NFTC์— ๋”ฐ๋ผ ์—…๋ฐ์ดํŠธ๊ฐ€ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ์ดํ›„ JDK 21 ์—…๋ฐ์ดํŠธ๋Š” Java SE OTN ๋ผ์ด์„ ์Šค(OTN)์— ๋”ฐ๋ผ ๋ผ์ด์„ ์Šค๊ฐ€ ๋ถ€์—ฌ๋˜๋ฉฐ, OTN ๋ผ์ด์„ ์Šค์˜ ์ œํ•œ๋œ ๋ฌด๋ฃŒ ๋ถ€์—ฌ๋ฅผ ์ดˆ๊ณผํ•˜์—ฌ ํ”„๋กœ๋•์…˜ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์œ ๋ฃŒ๋กœ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

5.3 Azul Zulu

  • https://www.azul.com/downloads/?package=jdk#zulu

5.4 Amazon Corretto

  • https://docs.aws.amazon.com/corretto/latest/corretto-21-ug/downloads-list.html

5.5 RedHat

  • https://developers.redhat.com/products/openjdk/download

5.6 Eclipse Temurin (์•„์ง ์—†์Œ)

  • https://adoptium.net/temurin/releases/

5.7 Microsoft (์•„์ง ์—†์Œ)

  • https://learn.microsoft.com/ko-kr/java/openjdk/download

(์ฐธ๊ณ ) ์˜คํ”ˆ์†Œ์Šค ๊ธฐ์—ฌ (JDK 11 ์ดํ›„)

  • Java 21์—์„œ ์ˆ˜์ •๋œ ๊ฒƒ์œผ๋กœ ํ‘œ์‹œ๋œ 2,585๊ฐœ์˜ JIRA ์ด์Šˆ ์ค‘ 1,868๊ฐœ๋Š” ์˜ค๋ผํด์ด ์™„๋ฃŒํ–ˆ์œผ๋ฉฐ, 717๊ฐœ๋Š” Java ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ๋‹ค๋ฅธ ๊ตฌ์„ฑ์›์ด ๊ธฐ์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์˜ค๋ผํด์€ Amazon, ARM, Azul, Google, Huawei, IBM, Intel , ISCAS, Red Hat, Rivos, SAP ๋ฐ Tencent ๋“ฑ์˜ ์กฐ์ง์—์„œ ์ผํ•˜๋Š” ๊ฐœ๋ฐœ์ž๋“ค์˜ ๋›ฐ์–ด๋‚œ ๊ธฐ์—ฌ์— ๊ฐ์‚ฌ๋ฅผ ํ‘œํ•ฉ๋‹ˆ๋‹ค.

๋” ๋ณด๊ธฐ

The arrival of java 21! -- Inside.java

Java 21 Features: Practical Examples and Insights (howtodoinjava.com)

Oracle Releases Java 21 and Extends Support Roadmap (prnewswire.com)

Java 21 is Coming -- Know the Latest Features in JDK 21 - DEV Community

[Java] Java 21์— ์ถ”๊ฐ€๋  ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ๋“ค(Java 21 Features) - MangKyu's Diary (tistory.com)

GraalVM for JDK 21 is here! ๐Ÿš€. Today we are releasing GraalVM for JDK... | by Alina Yurenko | graalvm | Sep, 2023 | Medium

 

Java 21 Features: Practical Examples and Insights

This article discusses the new developer features in Java 21 including Virtual Threads, Unnamed classes, Sequenced Collections and Record Patterns.

howtodoinjava.com

 

The arrival of java 21! – Inside.java

Oracle is proud to announce the general availability of JDK 21. This release is the 12th Feature Release delivered on time through the six-month release cadence. This level of predictability allows developers to easily manage their adoption of innov…

inside.java

 

728x90
'Languages/JAVA' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • 2023๋…„ 3์›” 21์ผ JDK 20์ด ๋ฆด๋ฆฌ์ฆˆ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • JPA(Java Persistence API)๋ž€ ๋ฌด์—‡์ธ๊ฐ€?
  • zipํŒŒ์ผ ํ•ด์ œ, ๋Œ€์ƒ ํด๋” ๋ณ€๊ฒฝ & ํŒŒ์ผ ์œ„์น˜ ๋ณ€๊ฒฝ
  • [java] ์ฃผ๋ง ์ œ์™ธํ•œ ์ด์ „ 5์ผ ๊ตฌํ•˜๊ธฐ
์ง€๋‹ˆ๐Ÿงž‍โ™‚๏ธ๐Ÿฅญ
์ง€๋‹ˆ๐Ÿงž‍โ™‚๏ธ๐Ÿฅญ
์ผ์ƒ, ๊ฒŒ์ž„, ๋ง›์ง‘, ์—ฌํ–‰, ๊ฐœ๋ฐœ, IT ๋ธ”๋กœ๊ทธ๐Ÿงž
  • ์ง€๋‹ˆ๐Ÿงž‍โ™‚๏ธ๐Ÿฅญ
    ์š”์ˆ  ๋žจํ”„๐Ÿซ–
    ์ง€๋‹ˆ๐Ÿงž‍โ™‚๏ธ๐Ÿฅญ
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • All (549)
      • Languages (57)
        • JAVA (13)
        • JSP (1)
        • C_C++ (4)
        • Html (3)
        • CSS (1)
        • JavaScript (18)
        • Python (3)
        • Kotlin (13)
        • TypeScript (1)
      • Framework (14)
        • spring (11)
        • jstl (1)
        • angular (2)
      • Tool (28)
        • Eclipse (5)
        • vsCode (3)
        • scrcpy (2)
        • Git (1)
        • IntelliJ (6)
        • Visual-studio (1)
        • UML (1)
        • Gradle (8)
      • DB (6)
        • Oracle (1)
        • MySql (3)
        • Mongo (2)
      • OS (14)
        • Linux (2)
        • Windows (12)
      • Server (8)
        • Tomcat (1)
        • Apache (1)
        • Node.js (6)
      • Programmings (25)
        • Design Pattern (2)
        • Funny (20)
        • Algorithms (3)
      • Cloud (8)
        • Docker (1)
        • Kubernetes (4)
        • Istio (1)
        • ArgoCD (2)
      • IT (5)
        • gRPC (3)
        • RESTful (3)
        • Web UI (5)
        • AI (4)
      • Book (6)
      • TIP (187)
      • Life (53)
      • Game (83)
      • Storage (22)
      • ์‹๋‹น (15)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
    • ์‚ฌ์ดํŠธ๋งต
    • RSS
    • ๊ธฐํƒ€ ์†Œ๋“
  • ๋งํฌ

    • ๊ตฌ๊ธ€
    • ๋„ค์ด๋ฒ„
    • ์ •๋ถ€24
    • Spring Framework ๋ฆด๋ฆฌ์ฆˆ ๋…ธํŠธ
    • Kotlin ๋ฆด๋ฆฌ์ฆˆ ๋…ธํŠธ
    • ์นด์นด์˜ค ์• ๋“œํ•
    • ๋ธ”๋กœ๊ทธ ์‚ฌ์ดํŠธ๋งต
    • ๋ธ”๋กœ๊ทธ RSS
  • ๊ณต์ง€์‚ฌํ•ญ

    • ์•ˆ๋…•ํ•˜์„ธ์š”
  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    ๋ฐ์ผ๋ฆฌ ๋‰ด์Šค
    ์˜ค๋Š˜์˜๋‰ด์Šค
    ๋ชฌ์Šคํ„ฐํ—Œํ„ฐ๋‚˜์šฐ
    ๋‰ด์Šค ๋ธŒ๋ฆฌํ•‘
    ๋ชฌ์Šคํ„ฐํ—Œํ„ฐ์™€์ผ์ฆˆ
    ํƒœ๊ตญ
    ๋‰ด์Šค
    ํ•œ๋ˆˆ์— ๋ณด๋Š” ์˜ค๋Š˜์˜ ๋‰ด์Šค
    ๋ธŒ๋ฆฌํ•‘
    ํ€˜์ŠคํŠธ
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
์ง€๋‹ˆ๐Ÿงž‍โ™‚๏ธ๐Ÿฅญ
Java 21 Release
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”