๐ป JAVA/์ ๋ฆฌ์ ๋ฆฌ์ ๋ฆฌ
๋ชฉํ ์๋ฐ์ ๋ฉํฐ์ฐ๋ ๋ ํ๋ก๊ทธ๋๋ฐ์ ๋ํด ํ์ตํ์ธ์. ํ์ตํ ๊ฒ (ํ์) Thread ํด๋์ค์ Runnable ์ธํฐํ์ด์ค ์ฐ๋ ๋์ ์ํ ์ฐ๋ ๋์ ์ฐ์ ์์ Main ์ฐ๋ ๋ ๋๊ธฐํ ๋ฐ๋๋ฝ ๋ง๊ฐ์ผ์ 2021๋
1์ 23์ผ ํ ์์ผ ์คํ 1์๊น์ง. Thread ํด๋์ค์ Runnable ์ธํฐํ์ด์ค Thread ๋? ๋์ ํ๋ก๊ทธ๋๋ฐ์๋ ํ๋ก์ธ์ค์ ์ค๋ ๋์ ๋ ๊ฐ์ง ๊ธฐ๋ณธ ์คํ ๋จ์๊ฐ ์์ต๋๋ค. JAVA ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ ๋์ ํ๋ก๊ทธ๋๋ฐ์ ๋๋ถ๋ถ ์ค๋ ๋์ ๊ด๋ จ๋ฉ๋๋ค. ํ๋ก์ธ์ค ํ๋ก์ธ์ค์๋ ์์ ํ ๊ฐ์ธ์ฉ ๊ธฐ๋ณธ ๋ฐํ์ ๋ฆฌ์์ค ์งํฉ์ด ์๊ณ ์์ฒด ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ๋ ์์ต๋๋ค. JAVA ๊ฐ์ ๋จธ์ ์ ๋๋ถ๋ถ์ ๊ตฌํ์ ๋จ์ผ ํ๋ก์ธ์ค๋ก ์คํ๋ฉ๋๋ค. ์ค๋ ๋ ์ค๋ ๋๋ ๊ฒฝ๋ ํ๋ก์ธ์ค๋ผ๊ณ ๋ถ๋ฅด๊ธฐ๋ ํฉ๋๋ค. ํ๋ก์ธ์ค์ ์ค๋ ๋ ๋ชจ๋ ์คํ ํ๊ฒฝ์ ์ ..
๐ป JAVA/์๋ฐ ORM ํ์ค JPA ํ๋ก๊ทธ๋๋ฐ
์๋ฐ ORM ํ์ค JPA ํ๋ก๊ทธ๋๋ฐ - ๊ธฐ๋ณธํธ์ ๊ณต๋ถํ๋ฉฐ ์ ๋ฆฌํ ๋ด์ฉ์
๋๋ค. ์๋ฐ ORM ํ์ค JPA ํ๋ก๊ทธ๋๋ฐ - ๊ธฐ๋ณธํธ - ์ธํ๋ฐ JPA๋ฅผ ์ฒ์ ์ ํ๊ฑฐ๋, ์ค๋ฌด์์ JPA๋ฅผ ์ฌ์ฉํ์ง๋ง ๊ธฐ๋ณธ ์ด๋ก ์ด ๋ถ์กฑํ์ ๋ถ๋ค์ด JPA์ ๊ธฐ๋ณธ ์ด๋ก ์ ํํํ๊ฒ ํ์ตํด์ ์ด๋ณด์๋ ์ค๋ฌด์์ ์์ ์๊ฒ JPA๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด๊ธ ์น ๊ฐ๋ฐ ํ๋ก๊ทธ๏ฟฝ www.inflearn.com ๋ชฉ์ฐจ ๊ฒฝ๋ก ํํ์ ํ์น ์กฐ์ธ 1 - ๊ธฐ๋ณธ ํ์น ์กฐ์ธ 2 - ํ๊ณ ๋คํ์ฑ ์ฟผ๋ฆฌ ์ํฐํฐ ์ง์ ์ฌ์ฉ Named ์ฟผ๋ฆฌ ๋ฒํฌ ์ฐ์ฐ ๊ฒฝ๋ก ํํ์ (์ค๋ฌด์์ ์ฌ์ฉ ๊ถ์ฅ X) ( ๊ฒฝ๋ก ํํ์์ผ๋ก ์ธํด ๋ฌต์์ ์ผ๋ก SQL ์กฐ์ธ(๋ด๋ถ ์กฐ์ธ) ๋ฐ์) - ๋์ค์ ํฐ ํผ๋์ ์ค ์ ์์. ๊ฒฝ๋ก ํํ์์ด๋ ? .(์ )์ ์ฐ์ด ๊ฐ์ฒด ๊ทธ๋ํ๋ฅผ ํ์ํ๋ ๊ฒ Member mem..
๐ป JAVA/์ ๋ฆฌ์ ๋ฆฌ์ ๋ฆฌ
๋ชฉํ ์๋ฐ์ ์์ธ ์ฒ๋ฆฌ์ ๋ํด ํ์ตํ์ธ์. ํ์ตํ ๊ฒ (ํ์) Exception๊ณผ Error์ ์ฐจ์ด๋? ์๋ฐ๊ฐ ์ ๊ณตํ๋ ์์ธ ๊ณ์ธต ๊ตฌ์กฐ RuntimeException๊ณผ RE๊ฐ ์๋ ๊ฒ์ ์ฐจ์ด๋? ์๋ฐ์์ ์์ธ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ (try, catch, throw, throws, finally) ์ปค์คํ
ํ ์์ธ ๋ง๋๋ ๋ฐฉ๋ฒ Exception๊ณผ Error์ ์ฐจ์ด๋ ? java.lang.Object -> Throwable -> Exception, Error Error : JVM์ ๋ฌธ์ (OutOfMemoryError, StackOverFlowError ์ ๊ฐ์ด ๋ฐ์ ์ ๋ณต๊ตฌํ ์ ์๋ ์ฌ๊ฐํ ์ค๋ฅ) ๊ฐ ์๊ธด ๊ฒ์ ์๋ฏธํ๋ค. ์ปดํ์ผ ์๋ฌ : ์ปดํ์ผ ์์ ์ ๋ฐ์ํ๋ ์๋ฌ์ด๋ค. ์ปดํ์ผ๋ฌ๊ฐ ๋ฌธ๋ฒ ๊ฒ์ฌ๋ฅผ ํตํด ์๋ฌ๋ฅผ ์ก์์ฃผ๊ธฐ ๋..
๐ป JAVA/์ ๋ฆฌ์ ๋ฆฌ์ ๋ฆฌ
์ปดํ์ผ๋ฌ๋ ๋ฉ์๋์ ์๊ทธ๋์ฒ๋ฅผ ์ด์ฉํด์ ๋ฉ์๋๋ฅผ ๊ตฌ๋ถํ๋ค. ๋ฉ์๋ ์๊ทธ๋์ฒ๋ ? ๋ฉ์๋์ ์ด๋ฆ๊ณผ ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฉ์๋ ์๊ทธ๋์ฒ๋ผ๊ณ ํ๋ค. ๋ฉ์๋์ ๋ฆฌํด ํ์
์ ํฌํจ๋์ง ์๋๋ค. ์๋์ ์ฝ๋๋ 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/์ ๋ฆฌ์ ๋ฆฌ์ ๋ฆฌ
๋ชฉํ ์๋ฐ์ ์ธํฐํ์ด์ค์ ๋ํด ํ์ตํ์ธ์. ํ์ตํ ๊ฒ (ํ์) ์ธํฐํ์ด์ค ์ ์ํ๋ ๋ฐฉ๋ฒ ์ธํฐํ์ด์ค ๊ตฌํํ๋ ๋ฐฉ๋ฒ ์ธํฐํ์ด์ค ๋ ํผ๋ฐ์ค๋ฅผ ํตํด ๊ตฌํ์ฒด๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ ์ธํฐํ์ด์ค ์์ ์ธํฐํ์ด์ค์ ๊ธฐ๋ณธ ๋ฉ์๋ (Default Method), ์๋ฐ 8 ์ธํฐํ์ด์ค์ static ๋ฉ์๋, ์๋ฐ 8 ์ธํฐํ์ด์ค์ private ๋ฉ์๋, ์๋ฐ 9 ์ถ์ ํด๋์ค์ ์ธํฐํ์ด์ค์ ์ฐจ์ด์ ์ถ์ ํด๋์ค(abstract class) ์ธํฐํ์ด์ค(interface) 1. ์ผ๋ฐ ๋ฉ์๋ ํฌํจ๊ฐ๋ฅ 1. ๋ชจ๋ ๋ฉ์๋๋ ์ถ์๋ฉ์๋ ์๋ฐ 8 ์ดํ ๋ถํฐ default ,static ๋ฉ์๋ ์ถ๊ฐ๊ฐ๋ฅ 2. ๋ค์ค์์ ๋ถ๊ฐ๋ฅ 2. ๋ค์ค์์ ๊ฐ๋ฅ 3. ์์, ๋ณ์ ํ๋ ํฌํจ๊ฐ๋ฅ 3. ์์ํ๋๋ง ํฌํจ๊ฐ๋ฅ ์ถ์ ํด๋์ค๋ IS - A ์ด๋ค. ( ๊ฐ๋ ๋๋ฌผ์ด๋ค. ..
๐ป JAVA/์ ๋ฆฌ์ ๋ฆฌ์ ๋ฆฌ
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 ๋ฅผ ๋๋ฅด๋ฉด ..