[E] java: warning: source release 17 requires target release 17
ยท
๐Ÿ’ป Language/Java : ์ž๋ฐ”
IntelliJ์—์„œ Java 17๋กœ ์‹คํ–‰ํ•˜๋˜ ํ”„๋กœ์ ํŠธ๋ฅผ ์„œ๋ฒ„ ํ™˜๊ฒฝ๊ณผ ๋งž์ถ”๊ธฐ ์œ„ํ•ด Java 8๋กœ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œํ•˜๊ณ  ์žฌ์‹คํ–‰ํ•˜๋‹ˆ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค.java: warning: source release 17 requires target release 17Module calladmin SDK 1.8 is not compatible with the source version 17.Upgrade Module SDK in project settings to 17 or higher. Open project settings. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•Java 17 ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ์ฐพ์ง€ ๋ชปํ•ด ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ๋กœ, ์ปดํŒŒ์ผ๋Ÿฌ ๊ฒฝ๋กœ๋ฅผ ๋‹ค์‹œ ์—ฐ๊ฒฐํ•ด ์ฃผ๋ฉด ํ•ด๊ฒฐ๋œ๋‹ค. settings > Build,Execution, Deployment > Comp..
[E] Unchecked cast: 'java.lang.Object' to 'java.util.Map<java.lang.String,java.lang.Object>'
ยท
๐Ÿ’ป Language/Java : ์ž๋ฐ”
IntelliJ์—์„œ ์œ„ ์‚ฌ์ง„๊ณผ ๊ฐ™์ด Warning ๋ฐ‘์ค„์ด ๊ทธ์–ด์ ธ ์—๋Ÿฌ ๋ฉ”์‹œ์ง€๋ฅผ ํ™•์ธํ•ด ๋ณด๋‹ˆ ๋‹ค์Œ๊ณผ ๊ฐ™์•˜๋‹ค. ์ด ์—๋Ÿฌ๋Š” Java์—์„œ ์ œ๋„ค๋ฆญ ํƒ€์ž… ์บ์ŠคํŒ…์„ ํ•  ๋•Œ ๋ฐœ์ƒํ•˜๋Š” unchecked cast ๊ฒฝ๊ณ ๋กœ, Java์˜ ํƒ€์ž… ์†Œ๊ฑฐ(Type Erasure) ๋•Œ๋ฌธ์— ๋Ÿฐํƒ€์ž„ ์‹œ์ ์—๋Š” ์ œ๋„ค๋ฆญ ํƒ€์ž… ์ •๋ณด๊ฐ€ ์‚ฌ๋ผ์ง€๊ธฐ ๋•Œ๋ฌธ์— ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ์ด๋ผ๊ณ  ํ•œ๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•1. @SuppressWarnings ์‚ฌ์šฉ๊ฐ€์žฅ ๊ฐ„๋‹จํ•˜์ง€๋งŒ, ๊ฒฝ๊ณ ๋งŒ ๋ฌด์‹œํ•  ๋ฟ ์‹ค์ œ ํƒ€์ž… ์•ˆ์ „์„ฑ์€ ๋ณด์žฅ๋˜์ง€ ์•Š๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. ๋Ÿฐํƒ€์ž„์— ์‹ค์ œ๋กœ ์บ์ŠคํŒ…์ด ์•ˆ์ „ํ•œ์ง€ ํ™•์‹ ํ•œ๋‹ค๋ฉด ์‚ฌ์šฉํ•ด๋„ ๋˜์ง€๋งŒ ํƒ€์ž… ์•ˆ์ „์„ฑ์„ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” 2๋ฒˆ์ด๋‚˜ 3๋ฒˆ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒŒ ์ข‹์Œ.@SuppressWarnings("unchecked")Map dataBody = (Map) responseBody..
[Java/JPA] QueryDSL์ด๋ž€?
ยท
๐Ÿ’ป Language/Java : ์ž๋ฐ”
QueryDSLQueryDSL์€ Java ๊ธฐ๋ฐ˜์˜ ํƒ€์ž… ์•ˆ์ „(type-safe)ํ•œ SQL ์ฟผ๋ฆฌ ์ƒ์„ฑ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ž…๋‹ˆ๋‹ค. ์ฃผ๋กœ JPA, Hibernate ๋“ฑ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ๋˜์–ด ๋ณต์žกํ•œ ์ฟผ๋ฆฌ๋ฅผ ์ฝ”๋“œ๋กœ ์•ˆ์ „ํ•˜๊ฒŒ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค๋‹ˆ๋‹ค. ๋‹ค์Œ์€ QueryDSL์˜ ์ฃผ์š” ํŠน์ง•๊ณผ ์žฅ์ , ๊ทธ๋ฆฌ๊ณ  ์‚ฌ์šฉ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค. QueryDSL์€ ์ •์  ํƒ€์ž…์„ ์ด์šฉํ•ด์„œ SQL๊ณผ ๊ฐ™์€ ์ฟผ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด ์ฃผ๋Š” ์˜คํ”ˆ์†Œ์Šค ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค. Fluent API๋ฅผ ์ด์šฉํ•ด ์ฝ”๋“œ ์ž‘์„ฑ ํ˜•์‹์œผ๋กœ ์ฟผ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค. QueryDSL์ด ์ ํ•ฉํ•œ ์ƒํ™ฉ์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.๋ณต์žกํ•œ ๊ฒ€์ƒ‰ ์กฐ๊ฑด์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ (ex. ๊ฒŒ์‹œํŒ ํ•„ํ„ฐ, ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ)๋™์  ์ฟผ๋ฆฌ๊ฐ€ ์ž์ฃผ ํ•„์š”ํ•œ ๋„๋ฉ”์ธSQL ์ฟผ๋ฆฌ๋ฅผ ๋ฌธ์ž์—ด์ด ์•„๋‹Œ ์•ˆ์ „ํ•œ ์ฝ”๋“œ๋กœ ๋‹ค๋ฃจ๊ณ  ์‹ถ์„ ๋•Œ Querydsl - U..
[Java] JDK ์„ค์น˜ (Windows 10, JDK 17)
ยท
๐Ÿ’ป Language/Java : ์ž๋ฐ”
Java 17 ๋ฒ„์ „ ์„ค์น˜ ๋ฐ ์‹œ์Šคํ…œ ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์„ค์ • ๋ฐฉ๋ฒ•์„ ๊ธฐ๋กํ•œ๋‹ค. JDK 17 ์„ค์น˜JDK 17 ๋ฒ„์ „๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ๋ฒ„์ „์„ ์„ค์น˜ํ•˜๋Š” ๊ณผ์ •๋„ ๋™์ผํ•˜๋‹ค. ์•„๋ž˜ ์˜ค๋ผํด ํ™ˆํŽ˜์ด์ง€์—์„œ ๋ฒ„์ „๊ณผ ์šด์˜์ฒด์ œ์— ๋งž๋Š” ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•œ ํ›„ ์‹คํ–‰ํ•˜๋ฉด ๋œ๋‹ค. ์˜ค๋ผํด ๋กœ๊ทธ์ธ ํ•„์š”ํ•จ! Download the Latest Java LTS FreeSubscribe to Java SE and get the most comprehensive Java support available, with 24/7 global access to the experts.www.oracle.com์•„๋ž˜๋กœ ์Šคํฌ๋กคํ•˜์—ฌ Java 17 ๋ฒ„์ „์˜ Windows ๋ชฉ๋ก์—์„œ x64 Installer๋ฅผ ๋‹ค์šด๋กœ๋“œํ•œ๋‹ค.๋‹ค์šด๋กœ๋“œ๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด .exe ํŒŒ์ผ์„ ์‹คํ–‰ํ•˜์—ฌ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ..
[Java] ๋ฐฑ์ค€ ์˜จ๋ผ์ธ ์ €์ง€ ๋‹จ๊ณ„๋ณ„๋กœ ํ’€์–ด๋ณด๊ธฐ - ์ž…์ถœ๋ ฅ๊ณผ ์‚ฌ์น™์—ฐ์‚ฐ
ยท
๐Ÿ’ป Language/Java : ์ž๋ฐ”
2557๋ฒˆ : Hello WorldHello World!๋ฅผ ์ถœ๋ ฅํ•˜์‹œ์˜ค.import java.io.*;public class Main { public static void main(String[] args) { System.out.println("Hello World!"); }} 1000๋ฒˆ : A+B๋‘ ์ •์ˆ˜ A์™€ B๋ฅผ ์ž…๋ ฅ๋ฐ›์€ ๋‹ค์Œ, A+B๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader bf = new BufferedReader(new InputSt..
[Java] ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ์ฃผ์š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ (1) - ๋ฒ„๋ธ”, ์„ ํƒ, ์‚ฝ์ž…, ์…€, ๋ณ‘ํ•ฉ, ํ€ต ์ •๋ ฌ
ยท
๐Ÿ’ป Language/Java : ์ž๋ฐ”
๋ณต์žก๋„1. ์‹œ๊ฐ„ ๋ณต์žก๋„์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์‹คํ–‰๋˜๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์˜ ์ƒํ•œ์„ ์ž…๋ ฅ ํฌ๊ธฐ(n)์— ๋”ฐ๋ผ ํ‘œํ˜„ํ•œ ๊ฒƒ๋น…์˜ค ํ‘œ๊ธฐ๋ฒ•(O)์œผ๋กœ ๋‚˜ํƒ€๋ƒ„O(1) : ์ž…๋ ฅ ํฌ๊ธฐ์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ ์ผ์ •ํ•œ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆผ (์ƒ์ˆ˜ ์‹œ๊ฐ„)O(log n) : ์ž…๋ ฅ ํฌ๊ธฐ๊ฐ€ ์ฆ๊ฐ€ํ•ด๋„ ์ˆ˜ํ–‰ ์‹œ๊ฐ„์ด ์ฒœ์ฒœํžˆ ์ฆ๊ฐ€ (๋กœ๊ทธ ์‹œ๊ฐ„)O(n) : ์ž…๋ ฅ ํฌ๊ธฐ์— ๋น„๋ก€ํ•ด ์ˆ˜ํ–‰ ์‹œ๊ฐ„์ด ์ฆ๊ฐ€ (์„ ํ˜• ์‹œ๊ฐ„)O(n^2) : ์ด์ค‘ ๋ฐ˜๋ณต๋ฌธ ๋“ฑ์—์„œ ๋‚˜ํƒ€๋‚˜๋Š” ์‹œ๊ฐ„ (์ œ๊ณฑ ์‹œ๊ฐ„)O(2^n) : ์žฌ๊ท€ ํ˜ธ์ถœ ๋“ฑ์ด ๋งŽ์€ ๊ฒฝ์šฐ ๋ฐœ์ƒ (์ง€์ˆ˜ ์‹œ๊ฐ„)2. ๊ณต๊ฐ„ ๋ณต์žก๋„์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์‹คํ–‰๋  ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์˜ ์–‘์„ ์ž…๋ ฅ ํฌ๊ธฐ(n)์— ๋”ฐ๋ผ ํ‘œํ˜„ํ•œ ๊ฒƒ๊ณ ์ • ๊ณต๊ฐ„ : ์•Œ๊ณ ๋ฆฌ์ฆ˜์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์ƒ์ˆ˜ ํฌ๊ธฐ์˜ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€๋ณ€ ๊ณต๊ฐ„ : ์ž…๋ ฅ ํฌ๊ธฐ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง€๋Š” ๋ฉ”๋ชจ๋ฆฌ ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์›์†Œ๋“ค์„ ์ผ์ •ํ•œ ์ˆœ์„œ๋Œ€๋กœ ๋‚˜์—ดํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ..
[Java] ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•œ Java ์ž…์ถœ๋ ฅ ํ•จ์ˆ˜
ยท
๐Ÿ’ป Language/Java : ์ž๋ฐ”
์ž…์ถœ๋ ฅ ํ•จ์ˆ˜Java์˜ ์ž…์ถœ๋ ฅ(IO; Input/Output) ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ์ฃผ์š” ํ•จ์ˆ˜์™€ ํด๋ž˜์Šค๋Š” Java์˜ ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ java.io์™€ java.nio ํŒจํ‚ค์ง€์— ํฌํ•จ๋˜์–ด ์žˆ๋‹ค.์ž…์ถœ๋ ฅ์€ ํฌ๊ฒŒ ์ฝ˜์†” ์ž…์ถœ๋ ฅ, ํŒŒ์ผ ์ž…์ถœ๋ ฅ, ๋„คํŠธ์›Œํฌ ์ž…์ถœ๋ ฅ์œผ๋กœ ๊ตฌ๋ถ„๋œ๋‹ค.์ผ๋ฐ˜์ ์œผ๋กœ System.out.println(""), Scanner๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๋ฐ, ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ์— ์‚ฌ์šฉ์‹œ ์ฒ˜๋ฆฌ ์‹œ๊ฐ„์ด ๊ธธ์–ด์ง€๋Š” ๋‹จ์ ์ด ๋ฐœ์ƒํ•˜์—ฌ, ๋‹ค์–‘ํ•œ ์ž…์ถœ๋ ฅ ํ•จ์ˆ˜๋ฅผ ๋‘๊ณ  ์ƒํ™ฉ์— ๋”ฐ๋ผ ์‚ฌ์šฉํ•œ๋‹ค. 1) Scanner[ ์žฅ์  ]java.util.Scanner ํด๋ž˜์Šค : ๊ฐ„๋‹จํ•˜๊ณ  ์ง๊ด€์ ์ธ ์ฝ˜์†” ์ž…์ถœ๋ ฅ ํด๋ž˜์Šค๋กœ, ์ดˆ๋ณด์ž๋„ ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ตฌ์กฐnextInt, nextDouble, nextLine ๋“ฑ ๋‹ค์–‘ํ•œ ์ž…๋ ฅ ํƒ€์ž…์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Œ์ž…๋ ฅ์ด ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ๋ฐ์ด..
[Java] ์ž๋ฃŒ๊ตฌ์กฐ - ๋ฐฐ์—ด, ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ, ์Šคํƒ, ํ, ํž™, ํŠธ๋ฆฌ, ๊ทธ๋ž˜ํ”„, ํ•ด์‹œ
ยท
๐Ÿ’ป Language/Java : ์ž๋ฐ”
1. ์ž๋ฃŒ๊ตฌ์กฐ1) ์ž๋ฃŒ๊ตฌ์กฐ์˜ ์ •์˜์ž๋ฃŒ๊ตฌ์กฐ(Data Structure)๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ €์žฅํ•˜๊ณ  ๊ด€๋ฆฌํ•˜์—ฌ ํ•„์š”ํ•œ ์ž‘์—…์„ ๋น ๋ฅด๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ๊ตฌ์กฐ๋ฐ์ดํ„ฐ์˜ ์กฐ์ž‘, ์ ‘๊ทผ ๋ฐฉ์‹์„ ์„ค๊ณ„ํ•˜๋Š” ์ค‘์š”ํ•œ ๊ฐœ๋…์œผ๋กœ ๋ฐ์ดํ„ฐ์˜ ์„ฑ๊ฒฉ๊ณผ ์‚ฌ์šฉ ๋ชฉ์ ์— ๋”ฐ๋ผ ๋‹ค์–‘ํ•œ ํ˜•ํƒœ๋กœ ๊ตฌํ˜„'ํšจ์œจ์ ์ด๋‹ค' : ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์‹œ๊ฐ„๊ณผ ๊ณต๊ฐ„์„ ์ตœ์†Œํ™”ํ•˜๋Š” ๊ฒƒ๋”๋ณด๊ธฐ์ž๋ฃŒ์˜ ํ˜•ํƒœ์— ๋”ฐ๋ผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ถ„๋ฅ˜ํ•  ์ˆ˜ ์žˆ๋‹ค.๋‹จ์ˆœ ๊ตฌ์กฐ : ๊ธฐ๋ณธ ์ž๋ฃŒํ˜• ์ •์ˆ˜, ์‹ค์ˆ˜, ๋ฌธ์ž, ๋ฌธ์ž์—ด ๋“ฑ ์„ ํ˜• ๊ตฌ์กฐ : ์ž๋ฃŒ๋“ค ๊ฐ„์˜ ์•ž๋’ค ๊ด€๊ณ„๊ฐ€ 1:1์˜ ์„ ํ˜• ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง€๋Š” ์ž๋ฃŒํ˜• ๋ฆฌ์ŠคํŠธ, ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ, ์Šคํƒ, ํ, ๋ฐํฌ ๋“ฑ๋น„์„ ํ˜• ๊ตฌ์กฐ : ์ž๋ฃŒ๋“ค ๊ฐ„์˜ ์•ž๋’ค ๊ด€๊ณ„๊ฐ€ 1:๋‹ค, ๋‹ค:๋‹ค์˜ ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง€๋Š” ์ž๋ฃŒํ˜• ํŠธ๋ฆฌ, ๊ทธ๋ž˜ํ”„ ๋“ฑํŒŒ์ผ ๊ตฌ์กฐ : ๋ ˆ์ฝ”๋“œ์˜ ์ง‘ํ•ฉ์ธ ํŒŒ์ผ์— ๋Œ€ํ•œ ๊ตฌ์กฐ ์ˆœ์ฐจ..