๐ŸŒป JAVA

๐ŸŒป JAVA/์ •๋ฆฌ์ •๋ฆฌ์ •๋ฆฌ

JAVA - STUDY 10์ฃผ์ฐจ ๊ณผ์ œ : ๋ฉ€ํ‹ฐ์“ฐ๋ ˆ๋“œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ

๋ชฉํ‘œ ์ž๋ฐ”์˜ ๋ฉ€ํ‹ฐ์“ฐ๋ ˆ๋“œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์— ๋Œ€ํ•ด ํ•™์Šตํ•˜์„ธ์š”. ํ•™์Šตํ•  ๊ฒƒ (ํ•„์ˆ˜) Thread ํด๋ž˜์Šค์™€ Runnable ์ธํ„ฐํŽ˜์ด์Šค ์“ฐ๋ ˆ๋“œ์˜ ์ƒํƒœ ์“ฐ๋ ˆ๋“œ์˜ ์šฐ์„ ์ˆœ์œ„ Main ์“ฐ๋ ˆ๋“œ ๋™๊ธฐํ™” ๋ฐ๋“œ๋ฝ ๋งˆ๊ฐ์ผ์‹œ 2021๋…„ 1์›” 23์ผ ํ† ์š”์ผ ์˜คํ›„ 1์‹œ๊นŒ์ง€. Thread ํด๋ž˜์Šค์™€ Runnable ์ธํ„ฐํŽ˜์ด์Šค Thread ๋ž€? ๋™์‹œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—๋Š” ํ”„๋กœ์„ธ์Šค์™€ ์Šค๋ ˆ๋“œ์˜ ๋‘ ๊ฐ€์ง€ ๊ธฐ๋ณธ ์‹คํ–‰ ๋‹จ์œ„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. JAVA ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ ๋™์‹œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ๋Œ€๋ถ€๋ถ„ ์Šค๋ ˆ๋“œ์™€ ๊ด€๋ จ๋ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์„ธ์Šค ํ”„๋กœ์„ธ์Šค์—๋Š” ์™„์ „ํ•œ ๊ฐœ์ธ์šฉ ๊ธฐ๋ณธ ๋Ÿฐํƒ€์ž„ ๋ฆฌ์†Œ์Šค ์ง‘ํ•ฉ์ด ์žˆ๊ณ  ์ž์ฒด ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„๋„ ์žˆ์Šต๋‹ˆ๋‹ค. JAVA ๊ฐ€์ƒ ๋จธ์‹ ์˜ ๋Œ€๋ถ€๋ถ„์˜ ๊ตฌํ˜„์€ ๋‹จ์ผ ํ”„๋กœ์„ธ์Šค๋กœ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ์Šค๋ ˆ๋“œ ์Šค๋ ˆ๋“œ๋Š” ๊ฒฝ๋Ÿ‰ ํ”„๋กœ์„ธ์Šค๋ผ๊ณ  ๋ถ€๋ฅด๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์„ธ์Šค์™€ ์Šค๋ ˆ๋“œ ๋ชจ๋‘ ์‹คํ–‰ ํ™˜๊ฒฝ์„ ์ œ..

๐ŸŒป JAVA/์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ

10-3) JPQL - ์ค‘๊ธ‰ ๋ฌธ๋ฒ•

์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ - ๊ธฐ๋ณธํŽธ์„ ๊ณต๋ถ€ํ•˜๋ฉฐ ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ - ๊ธฐ๋ณธํŽธ - ์ธํ”„๋Ÿฐ JPA๋ฅผ ์ฒ˜์Œ ์ ‘ํ•˜๊ฑฐ๋‚˜, ์‹ค๋ฌด์—์„œ JPA๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ๊ธฐ๋ณธ ์ด๋ก ์ด ๋ถ€์กฑํ•˜์‹  ๋ถ„๋“ค์ด JPA์˜ ๊ธฐ๋ณธ ์ด๋ก ์„ ํƒ„ํƒ„ํ•˜๊ฒŒ ํ•™์Šตํ•ด์„œ ์ดˆ๋ณด์ž๋„ ์‹ค๋ฌด์—์„œ ์ž์‹ ์žˆ๊ฒŒ JPA๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ดˆ๊ธ‰ ์›น ๊ฐœ๋ฐœ ํ”„๋กœ๊ทธ๏ฟฝ www.inflearn.com ๋ชฉ์ฐจ ๊ฒฝ๋กœ ํ‘œํ˜„์‹ ํŽ˜์น˜ ์กฐ์ธ 1 - ๊ธฐ๋ณธ ํŽ˜์น˜ ์กฐ์ธ 2 - ํ•œ๊ณ„ ๋‹คํ˜•์„ฑ ์ฟผ๋ฆฌ ์—”ํ‹ฐํ‹ฐ ์ง์ ‘ ์‚ฌ์šฉ Named ์ฟผ๋ฆฌ ๋ฒŒํฌ ์—ฐ์‚ฐ ๊ฒฝ๋กœ ํ‘œํ˜„์‹ (์‹ค๋ฌด์—์„œ ์‚ฌ์šฉ ๊ถŒ์žฅ X) ( ๊ฒฝ๋กœ ํ‘œํ˜„์‹์œผ๋กœ ์ธํ•ด ๋ฌต์‹œ์ ์œผ๋กœ SQL ์กฐ์ธ(๋‚ด๋ถ€ ์กฐ์ธ) ๋ฐœ์ƒ) - ๋‚˜์ค‘์— ํฐ ํ˜ผ๋ž€์„ ์ค„ ์ˆ˜ ์žˆ์Œ. ๊ฒฝ๋กœ ํ‘œํ˜„์‹์ด๋ž€ ? .(์ )์„ ์ฐ์–ด ๊ฐ์ฒด ๊ทธ๋ž˜ํ”„๋ฅผ ํƒ์ƒ‰ํ•˜๋Š” ๊ฒƒ Member mem..

๐ŸŒป JAVA/์ •๋ฆฌ์ •๋ฆฌ์ •๋ฆฌ

JAVA - STUDY 9์ฃผ์ฐจ ๊ณผ์ œ : ์˜ˆ์™ธ ์ฒ˜๋ฆฌ

๋ชฉํ‘œ ์ž๋ฐ”์˜ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ์— ๋Œ€ํ•ด ํ•™์Šตํ•˜์„ธ์š”. ํ•™์Šตํ•  ๊ฒƒ (ํ•„์ˆ˜) Exception๊ณผ Error์˜ ์ฐจ์ด๋Š”? ์ž๋ฐ”๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์˜ˆ์™ธ ๊ณ„์ธต ๊ตฌ์กฐ RuntimeException๊ณผ RE๊ฐ€ ์•„๋‹Œ ๊ฒƒ์˜ ์ฐจ์ด๋Š”? ์ž๋ฐ”์—์„œ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ• (try, catch, throw, throws, finally) ์ปค์Šคํ…€ํ•œ ์˜ˆ์™ธ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ• Exception๊ณผ Error์˜ ์ฐจ์ด๋Š” ? java.lang.Object -> Throwable -> Exception, Error Error : JVM์— ๋ฌธ์ œ (OutOfMemoryError, StackOverFlowError ์™€ ๊ฐ™์ด ๋ฐœ์ƒ ์‹œ ๋ณต๊ตฌํ•  ์ˆ˜ ์—†๋Š” ์‹ฌ๊ฐํ•œ ์˜ค๋ฅ˜) ๊ฐ€ ์ƒ๊ธด ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค. ์ปดํŒŒ์ผ ์—๋Ÿฌ : ์ปดํŒŒ์ผ ์‹œ์ ์— ๋ฐœ์ƒํ•˜๋Š” ์—๋Ÿฌ์ด๋‹ค. ์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ๋ฌธ๋ฒ• ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•ด ์—๋Ÿฌ๋ฅผ ์žก์•„์ฃผ๊ธฐ ๋•Œ..

๐ŸŒป JAVA/์ •๋ฆฌ์ •๋ฆฌ์ •๋ฆฌ

JAVA - ๋ฉ”์†Œ๋“œ ์‹œ๊ทธ๋‹ˆ์ฒ˜(method Signature)

์ปดํŒŒ์ผ๋Ÿฌ๋Š” ๋ฉ”์†Œ๋“œ์˜ ์‹œ๊ทธ๋‹ˆ์ฒ˜๋ฅผ ์ด์šฉํ•ด์„œ ๋ฉ”์†Œ๋“œ๋ฅผ ๊ตฌ๋ถ„ํ•œ๋‹ค. ๋ฉ”์†Œ๋“œ ์‹œ๊ทธ๋‹ˆ์ฒ˜๋ž€ ? ๋ฉ”์†Œ๋“œ์˜ ์ด๋ฆ„๊ณผ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋ฉ”์†Œ๋“œ ์‹œ๊ทธ๋‹ˆ์ฒ˜๋ผ๊ณ  ํ•œ๋‹ค. ๋ฉ”์†Œ๋“œ์˜ ๋ฆฌํ„ด ํƒ€์ž…์€ ํฌํ•จ๋˜์ง€ ์•Š๋Š”๋‹ค. ์•„๋ž˜์˜ ์ฝ”๋“œ๋Š” method1 ์ด๋ผ๋Š” ์ด๋ฆ„์˜ ๋ฉ”์†Œ๋“œ๋ฅผ ์˜ค๋ฒ„๋กœ๋”ฉํ•œ ์ฝ”๋“œ๋“ค์ด๋‹ค. public void method1() { } public void method1(int a) { } public void method1(String s) { } public void method1(int a, int b) { } public int method1(int a, int b) { // compile error! } ๋ฆฌํ„ด ํƒ€์ž…์ด ๋‹ฌ๋ผ๋„, ์ด๋ฏธ ๊ฐ™์€ ์‹œ๊ทธ๋‹ˆ์ฒ˜์˜ ๋ฉ”์†Œ๋“œ๊ฐ€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ปดํŒŒ์ผ ์—๋Ÿฌ๊ฐ€ ๋‚˜๊ฒŒ ๋œ๋‹ค.

๐ŸŒป JAVA/์ •๋ฆฌ์ •๋ฆฌ์ •๋ฆฌ

JAVA - STUDY 8์ฃผ์ฐจ ๊ณผ์ œ : ์ธํ„ฐํŽ˜์ด์Šค

๋ชฉํ‘œ ์ž๋ฐ”์˜ ์ธํ„ฐํŽ˜์ด์Šค์— ๋Œ€ํ•ด ํ•™์Šตํ•˜์„ธ์š”. ํ•™์Šตํ•  ๊ฒƒ (ํ•„์ˆ˜) ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ํ•˜๋Š” ๋ฐฉ๋ฒ• ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ• ์ธํ„ฐํŽ˜์ด์Šค ๋ ˆํผ๋Ÿฐ์Šค๋ฅผ ํ†ตํ•ด ๊ตฌํ˜„์ฒด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ• ์ธํ„ฐํŽ˜์ด์Šค ์ƒ์† ์ธํ„ฐํŽ˜์ด์Šค์˜ ๊ธฐ๋ณธ ๋ฉ”์†Œ๋“œ (Default Method), ์ž๋ฐ” 8 ์ธํ„ฐํŽ˜์ด์Šค์˜ static ๋ฉ”์†Œ๋“œ, ์ž๋ฐ” 8 ์ธํ„ฐํŽ˜์ด์Šค์˜ private ๋ฉ”์†Œ๋“œ, ์ž๋ฐ” 9 ์ถ”์ƒ ํด๋ž˜์Šค์™€ ์ธํ„ฐํŽ˜์ด์Šค์˜ ์ฐจ์ด์  ์ถ”์ƒ ํด๋ž˜์Šค(abstract class) ์ธํ„ฐํŽ˜์ด์Šค(interface) 1. ์ผ๋ฐ˜ ๋ฉ”์†Œ๋“œ ํฌํ•จ๊ฐ€๋Šฅ 1. ๋ชจ๋“  ๋ฉ”์„œ๋“œ๋Š” ์ถ”์ƒ๋ฉ”์„œ๋“œ ์ž๋ฐ” 8 ์ดํ›„ ๋ถ€ํ„ฐ default ,static ๋ฉ”์†Œ๋“œ ์ถ”๊ฐ€๊ฐ€๋Šฅ 2. ๋‹ค์ค‘์ƒ์† ๋ถˆ๊ฐ€๋Šฅ 2. ๋‹ค์ค‘์ƒ์† ๊ฐ€๋Šฅ 3. ์ƒ์ˆ˜, ๋ณ€์ˆ˜ ํ•„๋“œ ํฌํ•จ๊ฐ€๋Šฅ 3. ์ƒ์ˆ˜ํ•„๋“œ๋งŒ ํฌํ•จ๊ฐ€๋Šฅ ์ถ”์ƒ ํด๋ž˜์Šค๋Š” IS - A ์ด๋‹ค. ( ๊ฐœ๋Š” ๋™๋ฌผ์ด๋‹ค. ..

๐ŸŒป JAVA/์ •๋ฆฌ์ •๋ฆฌ์ •๋ฆฌ

Mac์—์„œ JDK - ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์„ค์ •ํ•˜๊ธฐ

JDK ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์„ค์ • echo $PATH javac -version java -version ์ž๋ฐ” ๊ฒฝ๋กœ ํ™•์ธ cd /Library/Java/JavaVirtualMachines/jdk1.8.0_251.jdk/Contents/Home .bash_profile ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์„ค์ • vi ~/.bash_profile vi๋ฅผ ์ด์šฉํ•˜์—ฌ bash_profile ํŽธ์ง‘ ํ™”๋ฉด์œผ๋กœ ๋ฐ”๋€Œ๊ฒŒ ๋˜๊ณ , ์•„๋ž˜์˜ ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•ด ์ค๋‹ˆ๋‹ค. export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_251.jdk/Contents/Home\ export PATH=${PATH}:$JAVA_HOME/bin: i ๋ฅผ ๋ˆ„๋ฅด๋ฉด INSERT ๋ชจ๋“œ๊ฐ€ ๋œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์œ„์— ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•ด์ค€ ๋‹ค์Œ, esc ๋ฅผ ๋ˆ„๋ฅด๋ฉด ..

iseunghan
'๐ŸŒป JAVA' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก (4 Page)