๋ชฉ๋ก๐Ÿƒ๐Ÿป‍โ™‚๏ธ ๊ธฐ๋ณธํ›ˆ๋ จ/Java (11)

hades

[๋ชจ๋˜ ์ž๋ฐ” ์ธ ์•ก์…˜] ์ปฌ๋ ‰์…˜ API ๊ฐœ์„ 

์ปฌ๋ ‰์…˜ ํŒฉํ† ๋ฆฌ์ž๋ฐ”์—์„œ ์ ์€ ์š”์†Œ๋ฅผ ํฌํ•จํ•˜๋Š” ๋ฆฌ์ŠคํŠธ๋ฅผ ์–ด๋–ป๊ฒŒ ๋งŒ๋“ค๊นŒ?List friends = new ArrayList();friends.add("์งฑ๊ตฌ");friends.add("๋งน๊ตฌ");friends.add("์ฒ ์ˆ˜");์„ธ ๋ฌธ์ž์—ด์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ๋„ ๊ท€์ฐฎ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค.List friends = Arrays.asList("์งฑ๊ตฌ", "๋งน๊ตฌ", "์ฒ ์ˆ˜");friends.add("ํ›ˆ์ด"); // ์—๋Ÿฌ ๋ฐœ์ƒ๊ณ ์ • ํฌ๊ธฐ์˜ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค์—ˆ์œผ๋ฏ€๋กœ, ์š”์†Œ๋ฅผ ๊ฐฑ์‹ ํ•  ์ˆ˜๋Š” ์žˆ์ง€๋งŒ, ์ƒˆ ์š”์†Œ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์‚ญ์ œํ•  ์ˆ˜๋Š” ์—†๋‹ค.  UnsupportedOperationException ์˜ˆ์™ธ ๋ฐœ์ƒ๋‚ด๋ถ€์ ์œผ๋กœ ๊ณ ์ •๋œ ํฌ๊ธฐ์˜ ๋ฐฐ์—ด๋กœ๋ถ€ํ„ฐ ๊ตฌํ˜„๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด์™€ ๊ฐ™์€ ์ผ์ด ์ผ์–ด๋‚œ๋‹ค. ์ง‘ํ•ฉ์˜ ๊ฒฝ์šฐ๋ฅผ ์•Œ์•„๋ณด์ž. ์ง‘ํ•ฉ์—์„œ๋Š” Arrays...

[๋ชจ๋˜ ์ž๋ฐ” ์ธ ์•ก์…˜] ์ŠคํŠธ๋ฆผ

ํ•„์š”์„ฑ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์นผ๋กœ๋ฆฌ๊ฐ€ 100๋ณด๋‹ค ๋‚ฎ์€ ์š”๋ฆฌ๋ช…์„ ์„ ํƒํ•˜๋ผ๋Š” SQL ์ฟผ๋ฆฌ๋ฌธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.SELECT name FROM dishes WHERE calorie SQL ์ฟผ๋ฆฌ๋ฌธ์—์„œ๋Š” ๋ฐ˜๋ณต์ž, ๋ˆ„์ ์ž ๊ฐ™์€ ๊ฒƒ์ด ํ•„์š” ์—†์ด ๊ธฐ๋Œ€ํ•˜๋Š” ๊ฒƒ์ด ๋ฌด์—‡์ธ์ง€ ์ง์ ‘ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ฆ‰, ์งˆ์˜๋ฅผ ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„ํ•ด์•ผ ํ• ์ง€ ๋ช…์‹œํ•  ํ•„์š”๊ฐ€ ์—†์œผ๋ฉฐ, ๊ตฌํ˜„์€ ์ž๋™์œผ๋กœ ์ œ๊ณต๋œ๋‹ค. ์ปฌ๋ ‰์…˜์—์„œ๋„ ์ด์™€ ๋น„์Šทํ•œ ๊ธฐ๋Šฅ์„ ๋งŒ๋“ค๊ณ  ์‹ถ๋‹ค. ๋งŽ์€ ์š”์†Œ๋ฅผ ํฌํ•จํ•˜๋Š” ์ปฌ๋ ‰์…˜์˜ ์„ฑ๋Šฅ์„ ๋†’์ด๊ณ  ์‹ถ๋‹ค. ์„ฑ๋Šฅ์„ ๋†’์ด๋ ค๋ฉด, ๋ฉ€ํ‹ฐ์ฝ”์–ด ์•„ํ‚คํ…์ฒ˜๋ฅผ ํ™œ์šฉํ•ด์„œ ๋ณ‘๋ ฌ๋กœ ์ปฌ๋ ‰์…˜ ์š”์†Œ๋ฅผ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•œ๋‹ค. ๋˜ํ•œ, ํ†ตํ™”๋ณ„๋กœ ํŠธ๋žœ์žญ์…˜์„ ๊ทธ๋ฃนํ™”ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ตฌํ˜„ํ•ด์•ผ ํ•œ๋‹ค. ์ฝ”๋“œ๊ฐ€ ์ƒ๋‹นํžˆ ๊ธธ๋‹ค.Map> transactionsByCurrencies = new HashMap();f..

[๋ชจ๋˜ ์ž๋ฐ” ์ธ ์•ก์…˜] ๋žŒ๋‹ค ํ‘œํ˜„์‹

ํ•„์š”์„ฑ์ต๋ช… ํด๋ž˜์Šค๋กœ ๋‹ค์–‘ํ•œ ๋™์ž‘์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ๋งŒ์กฑํ•  ๋งŒํผ ์ฝ”๋“œ๊ฐ€ ๊น”๋”ํ•˜์ง€๋Š” ์•Š์•˜๋‹ค. ๋žŒ๋‹ค ํ‘œํ˜„์‹์€ ์ต๋ช… ํด๋ž˜์Šค์ฒ˜๋Ÿผ ์ด๋ฆ„์ด ์—†๋Š” ํ•จ์ˆ˜์ด๋ฉด์„œ ๋ฉ”์†Œ๋“œ๋ฅผ ์ธ์ˆ˜๋กœ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๋žŒ๋‹ค ํ‘œํ˜„์‹์ด ์ต๋ช… ํด๋ž˜์Šค๋ฅผ ๋Œ€์‹ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋žŒ๋‹ค๋ž€ ๋ฌด์—‡์ธ๊ฐ€?๋žŒ๋‹ค ํ‘œํ˜„์‹์€ ๋ฉ”์†Œ๋“œ๋กœ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ๋Š” ์ต๋ช… ํ•จ์ˆ˜๋ฅผ ๋‹จ์ˆœํ™”ํ•œ ๊ฒƒ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋žŒ๋‹ค ํ‘œํ˜„์‹์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŠน์ง•์ด ์žˆ๋‹ค.์ต๋ช… : ๋ณดํ†ต์˜ ๋ฉ”์†Œ๋“œ์™€๋Š” ๋‹ฌ๋ฆฌ ์ด๋ฆ„์ด ์—†์œผ๋ฏ€๋กœ ์ต๋ช…์ด๋ผ๊ณ  ํ‘œํ˜„ํ•œ๋‹ค.ํ•จ์ˆ˜ : ๋žŒ๋‹ค๋Š” ๋ฉ”์†Œ๋“œ์™€๋Š” ๋‹ฌ๋ฆฌ ํŠน์ • ํด๋ž˜์Šค์— ์ข…์†๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ ํ•จ์ˆ˜๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค. ํ•˜์ง€๋งŒ, ๋ฉ”์†Œ๋“œ์ฒ˜๋Ÿผ ํŒŒ๋ผ๋ฏธํ„ฐ ๋ฆฌ์ŠคํŠธ, ๋ฐ”๋””, ๋ฐ˜ํ™˜ ํ˜•์‹, ๊ฐ€๋Šฅํ•œ ์˜ˆ์™ธ ๋ฆฌ์ŠคํŠธ๋ฅผ ํฌํ•จํ•œ๋‹ค.์ „๋‹ฌ : ๋žŒ๋‹ค ํ‘œํ˜„์‹์„ ๋ฉ”์†Œ๋“œ ์ธ์ˆ˜๋กœ ์ „๋‹ฌํ•˜๊ฑฐ๋‚˜ ๋ณ€์ˆ˜๋กœ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค.๊ฐ„๊ฒฐ์„ฑ : ์ต๋ช… ํด๋ž˜์Šค์™€๋Š” ๋‹ฌ๋ฆฌ ..

[Java] ์ž๋ฐ” ๊ธฐ์ดˆ

๋ณธ ๊ธ€์€ ์ž๋ฐ”๋ฅผ ํ•™์Šตํ•˜๋ฉด์„œ, ํƒ€ ์–ธ์–ด์—์„œ ์•Œ๊ณ  ์žˆ๋˜ ๋‚ด์šฉ ์ด์™ธ์— ์ถ”๊ฐ€๋กœ ๊ธฐ์–ตํ•  ์‚ฌํ•ญ์„ ์ •๋ฆฌํ•˜์—ฌ ์ž‘์„ฑํ•œ ๊ธ€์ด๋‹ค. ์ฆ‰, ๋ชจ๋“  ๋‚ด์šฉ์„ ํฌํ•จํ•˜๊ณ  ์žˆ์ง€๋Š” ์•Š๋‹ค. ๋ณ€์ˆ˜์™€ ํƒ€์ž…๋ช…๋ช… ๊ด€๋ก€์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ๋•Œ, ์—ฌ๋Ÿฌ ๋‹จ์–ด๋ฅผ ํ˜ผํ•ฉํ•˜์—ฌ ๋ช…๋ช…ํ•˜๋Š” ๊ฒฝ์šฐ, camel case๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๊ธฐ๋ณธ์œผ๋กœ ๋‹ค์Œ ์ƒํ™ฉ์— ๋”ฐ๋ผ ์ถ”๊ฐ€ํ•œ๋‹ค.์ž๋ฐ” ์†Œ์Šค ํŒŒ์ผ๋ช…(ํด๋ž˜์Šค๋ช…)์€ ๋Œ€๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์ด ๊ด€๋ก€์ด๋‹ค. ex) Member.java, Item.java๋ณ€์ˆ˜๋ช…์€ ์†Œ๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์ด ๊ด€๋ก€์ด๋‹ค. ex) mathScore, uploadFile ๋ณ€์ˆ˜ ์„ ์–ธ๋ณ€์ˆ˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ๋ฒˆ์ง€์— ๋ถ™์—ฌ์ง„ ์ด๋ฆ„์ด๋‹ค. ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•œ๋‹ค๊ณ  ํ•ด์„œ ๋ฉ”๋ชจ๋ฆฌ์— ํ• ๋‹น๋˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋‹ค. ๋ณ€์ˆ˜์— ๊ฐ’์„ ๋Œ€์ž…ํ•ด์•ผ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ํ• ๋‹น๋œ๋‹ค. int x = 3;int y = 7;int temp = x;x = ..

[JPA] JPA ๊ธฐ์ดˆ

JPA ์†Œ๊ฐœJPAJava Persistnce APIJava ์ง„์˜์˜ ORM ํ‘œ์ค€ ORMObject-relational mapping (๊ฐ์ฒด ๊ด€๊ณ„ ๋งคํ•‘)๊ฐ์ฒด๋Š” ๊ฐ์ฒด๋Œ€๋กœ ์„ค๊ณ„ํ•˜๊ณ , ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Œ€๋กœ ์„ค๊ณ„ํ•˜๊ณ , ORM ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ๊ฐ์ฒด์™€ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ค‘๊ฐ„์—์„œ ๋งคํ•‘๋Œ€์ค‘์ ์ธ ์–ธ์–ด์—๋Š” ๋Œ€๋ถ€๋ถ„ ORM ๊ธฐ์ˆ ์ด ์กด์žฌ JPA๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ JDBC ์‚ฌ์ด์—์„œ ๋™์ž‘์ฐธ๊ณ ) JDBC(Java Database Connectivity)๋Š” ์ž๋ฐ”์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ์ž๋ฐ” API์ด๋‹ค. ํŠธ๋žœ์žญ์…˜(Transaction)์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ƒํƒœ๋ฅผ ๋ณ€ํ™”์‹œํ‚ค๊ธฐ ํ•ด์„œ ์ˆ˜ํ–‰ํ•˜๋Š” ์ž‘์—…์˜ ๋‹จ์œ„์ด๋‹ค. ํ•˜๋‚˜์˜ ์ฟผ๋ฆฌ๋ฌธ์ด ์•„๋‹ˆ๋‹ค. JPA ๋™์ž‘ - ์ €์žฅpersist๋ฅผ ํ•œ๋‹ค๋ฉด, MemberDAO(EntityM..