๐ป IT Study/Knowledge
-
[DB] ์ค๋ผํด ์๋ ธ๋(Oracle Synonym)๐ป IT Study/Knowledge 2022. 6. 1. 17:45
์ง๊ธ ์ค๋ฌด์์ ์ด์ DB๊ณ์ ์ผ๋ก 2๊ฐ(๊ณ์ A, ๊ณ์ B)๋ฅผ ์ฌ์ฉํ๋ค. ๊ทธ ์ด์ ๋ฅผ ์ฌ์ญค๋ณด๋ ํ์ ์ํฉ์ด ๋ฐ๋น ์ ๊ด๋ฆฌ์ ๋ณด์์ ์ด์ ๋ผ๊ณ ๋ง ๋ค์๋ค. ๊ธฐํ๊ฐ ๋๋ค๋ฉด ๋ค์ ํ๋ฒ ๋ฌผ์ด๋ด์ผ๊ฒ ๋ค..! ์ด์จ๋ , AS-IS์์ ์ฌ์ฉํ๋ VIEW๋ฅผ TO-BE์ ๋ง๋ค์ด์ฃผ์ จ๋๋ฐ ํ ์ด๋ธ ๋๋ ๋ทฐ๊ฐ ์กด์ฌํ์ง ์๋ค๋ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค. ๊ณ์ A์์ ์กฐํํ ๊ฒฝ์ฐ, ํด๋น ๋ทฐ๊ฐ ์กฐํ ๊ฐ๋ฅํ๋ฐ ๊ณ์ B์์๋ ์กฐํ๋์ง ์์ ๋นํฉ์ค๋ฌ์ ๋ค. ๊ณ์ B์์๋ AS-IS ๊ณ์ ์ ์ ๊ทผ ๋ถ๊ฐํ์ฌ VIEW๋ฅผ ์์ฑํ์ง ๋ชปํ๋ค .. ์๊ณ ๋ณด๋ ๊ณ์ A์์ VIEW๋ฅผ ์์ฑํ๊ณ ๊ณ์ B์๊ฒ VIEW์ ์๋ ธ๋์ ์ค์ผ ํ๋ค๊ณ ํ์ จ๋ค. ์ด์์๋ฒ๋ ๊ณ์ B๋ฅผ ๋ฐ๋ผ๋ณด๊ณ ์์ด์ ๊ณ์ A์์๋ง VIEW ์์ฑ์ ํ ๊ฒฝ์ฐ์๋ ์ ๊ทผํ ์ ์์๋ค. ์๋ ธ๋์ ์ผ๋ฅธ ๋ฉ๋ชจํด๋๊ณ ๊ณต๋ถํ ๋ค ๋ด..
-
[JAVA] ๋ฆฌํ๋ ์ (Reflection)๐ป IT Study/Knowledge 2022. 5. 25. 23:00
GoF ๋์์ธ ํจํด์ ๋ํ ๊ฐ์๋ฅผ ๋ฃ๋ค๊ฐ ๊ฐ์ฌ๋ถ๊ป์ ํ๋ฌ์ง๋๊ฐ๋ฏ์ด ๋ฆฌํ๋ ์ ์ ์ธ๊ธํ์ จ๋ค. ์ฑ๊ธํค ํจํด์ ๋ฆฌํ๋ ์ ์ผ๋ก ๊นจ๋จ๋ฆด ์ ์๋ค๋ ๊ฒ์ด์๋ค. ์ฝ๋๋ฅผ ๋ณด๊ณ ๋ฆฌํ๋ ์ ์ ๋๊ฐ ์ดํดํ ์๋ ์์์ง๋ง ๋ ์์ธํ ์์๋ณด๊ณ ์ถ์๋ค. ๋์ค์ ๋์์ธ ํจํด์ ๋ํด ๋ฐ๋ก ์ ๋ฆฌํ ์์ ์ด๋ค :-) ๋ฆฌํ๋ ์ (Reflection)์ ๊ตฌ์ฒด์ ์ธ ํด๋์ค ํ์ ์ ์์ง ๋ชปํด๋ ๊ทธ ํด๋์ค์ ๋ฉ์๋, ํ์ , ๋ณ์๋ค์ ์ ๊ทผํ ์ ์๋๋ก ํด์ฃผ๋ ์๋ฐ API(Application Programming Interface)์ด๋ค. ์๋ฐ๋ ์ปดํ์ผ ์์ ์ ํ์ ์ ๊ฒฐ์ ํ๋ ์ ์ ์ธ์ด์ด๋ค. ๊ทธ๋ฌ๋ ๋์ ์ผ๋ก ํด๋์ค๋ฅผ ์ฌ์ฉํ ๋ ๋ฆฌํ๋ ์ ์ด ์ฌ์ฉ๋๋ค. ์ฝ๋๋ฅผ ์์ฑํ ์์ ์๋ ์ด๋ค ํ์ ์ ํด๋์ค๋ฅผ ์ฌ์ฉํ ์ง ๋ชจ๋ฅด๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. ์ด๋ฐ ๊ฒฝ์ฐ ์คํ์์ ์ธ ๋ฐํ์์ ์คํ๋..
-
[๋คํธ์ํฌ] DMZ(DeMilitarized Zone)๐ป IT Study/Knowledge 2022. 5. 24. 23:58
์ง๊ธํ๊ณ ์๋ ํ๋ก์ ํธ์์ ์ด 8๊ฐ์ ์๋ฒ๋ฅผ ๊ด๋ฆฌํ๊ณ ์๋ค. ๋ด๋ถ Web/WAS ์๋ฒ, ์ธ๋ถ Web/WAS ์๋ฒ๋ก ๊ฐ ์๋ฒ๋ฅผ 2๊ฐ์ฉ ๊ฐ์ง๋ค. ์ธ๋ถ Web ์๋ฒ๋ง ๋ฐ๋ก ๊ด๋ฆฌํ๊ณ ์๊ธฐ์ ์ฌ์ญค๋ดค๋๋ ์ธ๋ถ Web ์๋ฒ๋ง DMZ ๋ฐ์ ์๊ธฐ ๋๋ฌธ์ด๋ผ๊ณ ํ์ จ๋ค. ๊ทธ ๋๋ ์์๋ฃ๋ ์ฒํ๋ฉฐ ๋ชฐ๋ ๋ฉ๋ชจํด๋์๋ค. DMZ ์์๋ณด๊ธฐ ์ํด ์ด๋ฒ ํฌ์คํ ์ฃผ์ ๋ก ์ผ์๋ค..! DMZ(DeMilitarized Zone)์ ์ธ๋ถ ๋คํธ์ํฌ์ ๋ด๋ถ ๋คํธ์ํฌ ์ฌ์ด์์ ์ธ๋ถ ๋คํธ์ํฌ ์๋น์ค๋ฅผ ์ ๊ณตํ๋ฉด์ ๋ด๋ถ ๋คํธ์ํฌ๋ฅผ ๋ณดํธํ๋ ์๋ธ๋ท, ์ฆ ์ธ๋ถ์ ์คํ๋ ์๋ฒ์์ญ์ ๋งํ๋ค. DMZ์ ์๋ค๋ก ๋ฐฉํ๋ฒฝ์ด ์ค์น๋๋ค. ํ๋๋ ๋ด๋ถ ๋คํธ์ํฌ์ ๋ค๋ฅธ ํ๋๋ ์ธ๋ถ ๋คํธ์ํฌ์ ์ฐ๊ฒฐ๋๋ค. ๋ด/์ธ๋ถ ๋คํธ์ํฌ๋ DMZ์ ์ ์ํ ์ ์์ง๋ง, DMZ๋ด์ ์ปดํจํฐ๋ ์ค์ง ์ธ..
-
[์ฉ์ด์ ๋ฆฌ] SSH(Secure Shell)๐ป IT Study/Knowledge 2022. 5. 23. 00:20
์ค๋ฌด์์ ํ๋ ํ๋ก์ ํธ์์ ์ด์์๋ฒ๋ฅผ ๊ด๋ฆฌํ ๋ SSH์ ์ ์ํด์ ๊ด๋ฆฌํ๊ณ ์๋ค. ์ดํด๋ฆฝ์ค์์ ๋น๋ ํ ๋น๋ํ ํ์ผ์ SSH์ ์์ถ์ ํ๊ณ ์ด์์๋ฒ ๋ก๊ทธ๋ฅผ ํ์ธํ๋ ๋ฑ ์ด์์๋ฒ์ ๊ด๋ จํ ์ผ์ ํ๋ค. ๋งค์ผ SSH์ ์ ์ํ์ฌ ์ผ์ ํ๋๋ฐ๋ ๊ฐ๋ ๊ณผ ์๋ฆฌ์ ๋ํด ์ ํํ ์๊ณ ์์ง ์์ ํฌ์คํ ์ ํ๊ฒ ๋์๋ค ..! ์ฌ๊ธฐ์๋ ๊ฐ๋ตํ๊ฒ ๋ฌด์์ธ์ง ์ ๋๋ฅผ ์์๋ณด๋ ค๊ณ ํ๋ค. ์ํ์ด ์ (Secure Shell)์ ๋คํธ์ํฌ ํ๋กํ ์ฝ ์ค ํ๋๋ก ์ปดํจํฐ์ ๋ค๋ฅธ ์ปดํจํฐ๊ฐ ์ธํฐ๋ท๊ณผ ๊ฐ์ Public Network๋ฅผ ํตํด ์๋ก ํต์ ์ ํ ๋ ๋ณด์์ ์ผ๋ก ์์ ํ๊ฒ ํต์ ์ ํ๊ธฐ์ํด ์ฌ์ฉํ๋ ํ๋กํ ์ฝ์ด๋ค. ๋ํ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๊ฑฐ๋ ์๊ฒฉ ์ ์ด๋ฅผ ํ ๋ ์ฌ์ฉํ๋ค. ๋ฐ์ดํฐ ์ ์ก์ ์๋ก๋ ์๊ฒฉ ์ ์ฅ์์ธ GitHub์ด ์๋ค. ์์ค ์ฝ๋๋ฅผ ์๊ฒฉ ์ ..
-
JVM ๋์๊ณผ์ ๐ป IT Study/Knowledge 2022. 5. 22. 20:27
์๋ฐ์ ๋์๊ณผ์ ๋๋ต์ ์ผ๋ก ์์๋ณด๊ธฐ 1. ๊ฐ๋ฐ์๊ฐ ์๋ฐ ์์ค ์ฝ๋ ์์ฑํ๋ค. 2. Java Compiler๊ฐ ์๋ฐ Source File(*.java)์ ์ปดํ์ผํ์ฌ Byte File(*.class)๋ก ์์ฑํ๋ค. 3. ์ปดํ์ผ๋ Byte File(*.class)์ JVM์ Class Loader์๊ฒ ์ ๋ฌํ๋ค. 4. Class Loader๋ ๋์ ๋ก๋ฉ์ ํตํด ํ์ํ ํด๋์ค๋ค์ ๋ก๋ฉ ๋ฐ ๋งํฌํ์ฌ Run-time Data Area์ ์ ๋ก๋ํ๋ค. 5. Execution Engine์์ JVM ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ์จ Byte ์ฝ๋๋ฅผ ๋ช ๋ น์ด ๋จ์๋ก ํ๋์ฉ ํด์ํ์ฌ Binary Code๋ฅผ ์์ฑํ๋ค. 6. Binary Code๋ Run-time Data Area์ ๋ฐฐ์น๋์ด ์ค์ง์ ์ํ์ด ์ด๋ฃจ์ด์ง๋ค. Class Loader JVM์ด..
-
๋ฆฌ๋ ์ค ๋ช ๋ น์ด ๋ชจ์zip๐ป IT Study/Knowledge 2022. 4. 20. 22:28
ํ์ฌ์์ ์ด์์๋ฒ๋ฅผ ์ฌ๋ฆฌ๊ธฐ ์ํ ๋น๋์ ์์ ์ ํ๋ค๋ณด๋ ๋ฆฌ๋ ์ค ๋ช ๋ น์ด๋ฅผ ์ ๋ฆฌํด์ผ์ง ํ๋ ์๊ฐ์ด ๋ค์๋ค. ๋ํ๊ต ์์ ๋๊ฐ ๋ฐฐ์ ๋ ๊ฑธ๋ก๋ ์ง๊ธ ๋ค ์์ด๋ฒ๋ ธ๋ค... ๋ค์ ์ ๋ฆฌํด์ ๋ณต์ตํ ๊ฒ ! :-) ls(list) ๋๋ ํฐ๋ฆฌ ๋ชฉ๋ก ํ์ธ cd(change directory) ํ์ฌ ์์น ์ด๋ pwd(print working directory) ํ์ฌ ์์ ์ค์ธ ๋๋ ํ ๋ฆฌ ํ์ธ cp(copy) ํ์ผ ํน์ ๋๋ ํ ๋ฆฌ ๋ณต์ฌ. ๋๋ ํ ๋ฆฌ ๋ณต์ฌ ์ -r ์ต์ ์ ์ค์ผ ํจ mv(move) ํ์ผ ํน์ ๋๋ ํ ๋ฆฌ ์ด๋ or ์ด๋ฆ ๋ณ๊ฒฝ. ๋๋ ํ ๋ฆฌ ์ด๋ฆ๋ณ๊ฒฝ์ด ์ด๋์ผ๋ก ์ด๋ค์ง. mkdir(make directory) ๋๋ ํ ๋ฆฌ ์์ฑ rm(remove) ํ์ผ์ด๋ ๋๋ ํ ๋ฆฌ ์ญ์ . ๋๋ ํ ๋ฆฌ ์ญ์ ์ r์ต์ ์ ์ค์ผ ํจ. cat(concatenate) ..
-
[์ฉ์ด์ ๋ฆฌ] ์ธ์ด ๋ฐ ์ฝ๋๐ป IT Study/Knowledge 2022. 4. 12. 20:46
โป ์ ์ด๋ฏธ์ง๋ ์ดํดํ ๋ด์ฉ์ ๋ฐํ์ผ๋ก ๊ทธ๋ ค๋ธ ๋ํ์ ๋๋ค. ์๋ชป๋ ๋ถ๋ถ์ด ์์ผ๋ฉด ์๋ ค์ฃผ์ธ์ :-) ์ ๊ธ์ธ์ด vs ๊ณ ๊ธ์ธ์ด ๊ณ ๊ธ์ธ์ด (High-Level Language) : ์ฌ๋์ด ์๊ธฐ ์ฝ๋๋ก ์์ด์ง ์ธ์ด - ์ฌ์ฉ์ ์์ฃผ์ ์ธ์ด - ๊ฐ๋ ์ฑ์ด ๋์ผ๋ฉฐ ๋ค๋ฃจ๊ธฐ ๊ฐ๋จํ๋ค. - ์ปดํ์ผ๋ฌ๋ ์ธํฐํ๋ฆฌํฐ์ ์ํด ์ ๊ธ์ธ์ด๋ก ๋ฒ์ญ๋์ด ์คํ๋๋ค. ex) FORTRAN, COBOL, Java, C++ โฆ ์ ๊ธ์ธ์ด (Low-Level Language) : ์ปดํจํฐ ๋ด๋ถ์์ ๋ฐ๋ก ์ฒ๋ฆฌ ๊ฐ๋ฅํ ์ธ์ด - ํ๋์จ์ด ์์ฃผ์ ์ธ์ด - ํ๋ก๊ทธ๋จ ์๋๊ฐ ๋น ๋ฅด๋ค. ex) ๊ธฐ๊ณ์ด. ์ด์ ๋ธ๋ฆฌ์ด ์ ๊ธ์ธ์ด - ๊ธฐ๊ณ์ด vs ์ด์ ๋ธ๋ฆฌ์ด 1) ๊ธฐ๊ณ์ด(Machine Language) : 0๊ณผ 1๋ก ๊ตฌ์ฑ๋ ๋ฐ์ด๋๋ฆฌ ์ฝ๋ - ๊ธฐ๊ณ์ด๊ฐ ์ด์ง์ฝ๋๋ก ์ด๋ฃจ์ด์ก์ ๋ฟ. ..
-
[์ฉ์ด์ ๋ฆฌ] ์ปดํ์ผ(Compile), ๋งํฌ(Link), ๋น๋(Build)๐ป IT Study/Knowledge 2022. 4. 10. 16:12
โป ์ ์ด๋ฏธ์ง๋ ์ดํดํ ๋ด์ฉ์ ๋ฐํ์ผ๋ก ๊ทธ๋ ค๋ธ ๋ํ์ ๋๋ค. ์๋ชป๋ ๋ถ๋ถ์ด ์์ผ๋ฉด ์๋ ค์ฃผ์ธ์ :-) ๋น๋(Build) : ์์ค์ฝ๋ ํ์ผ์ ์คํ๊ฐ๋ฅํ ์ํํธ์จ์ด๋ก ๋ง๋๋ ๊ณผ์ +) ๋น๋ํด(Build Tool) : ๋น๋๋ฅผ ์ํํ๋ ๋๊ตฌ - ๋น๋ํด ์ ๊ณต ๊ธฐ๋ฅ : ์ ์ฒ๋ฆฌ(Preprocessing), ์ปดํ์ผ(Compile), ํจํค์ง(Packaging), ํ ์คํ (Testing), ๋ฐฐํฌ(Distribution) ex) Ant, Maven, Gradle * ๋ฐฐํฌ : ์๋ฒ์ ๋ฐ์ํ๋ ๊ฒ ์ปดํ์ผ(Compile) : ๊ฐ๋ฐ์๊ฐ ์์ฑํ ์์ค์ฝ๋๋ฅผ ๊ธฐ๊ณ์ด(Byte Code)๋ก ๋ณํํ๋ ๊ณผ์ - ์ปดํ์ผ ๊ณผ์ ์ ์ปดํ์ผ๋ฌ(Compiler)์ ์ํด ์คํ๋๋ ๋ฐ ๊ธฐ๊ณ์ด๋ก ๋ณํ๋ ํ์ผ์ Object ํ์ผ๋ก ๋ง๋ค์ด์ง๋ค. ๋งํฌ(Link) : ์ฌ..