๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์ „์ฒด ๊ธ€

(135)
1.5 JDBC 1) JDBC๋ž€? JDBC ๊ฐœ์š” JDBC(Java Database Connectivity)์˜ ์ •์˜ - ์ž๋ฐ”๋ฅผ ์ด์šฉํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ ‘์†๊ณผ SQL ๋ฌธ์žฅ์˜ ์‹คํ–‰, ๊ทธ๋ฆฌ๊ณ  ์‹คํ–‰ ๊ฒฐ๊ณผ๋กœ ์–ป์–ด์ง„ ๋ฐ์ดํ„ฐ์˜ ํ•ธ๋“ค๋ง์„ ์ œ๊ณตํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ์ ˆ์ฐจ์— ๊ด€ํ•œ ๊ทœ์•ฝ - ์ž๋ฐ” ํ”„๋กœ๊ทธ๋žจ ๋‚ด์—์„œ SQL๋ฌธ์„ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ์ž๋ฐ” API - SQL๊ณผ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์˜ ํ†ตํ•ฉ ์ ‘๊ทผ ์ค‘ ํ•œ ํ˜•ํƒœ JAVA๋Š” ํ‘œ์ค€ ์ธํ„ฐํŽ˜์ด์Šค์ธ JDBC API๋ฅผ ์ œ๊ณต ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฒค๋”, ๋˜๋Š” ๊ธฐํƒ€ ์จ๋“œํŒŒํ‹ฐ์—์„œ๋Š” JDBC ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•œ ๋“œ๋ผ์ด๋ฒ„(driver)๋ฅผ ์ œ๊ณตํ•œ๋‹ค. JDBC ํ™˜๊ฒฝ ๊ตฌ์„ฑ JDK ์„ค์น˜ JDBC ๋“œ๋ผ์ด๋ฒ„ ์„ค์น˜ - Maven์— ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์˜์กด์„ฑ์„ ์ถ”๊ฐ€ํ•œ๋‹ค. MySQL์‚ฌ์ดํŠธ์—์„œ ๋‹ค์šด๋กœ๋“œ ํ•œ๋‹ค. mysql mysql-connector-java ${mysq..
1.4 Maven 1) Maven ์ด๋ž€? Maven์ด๋ž€? Maven์€ ์ง€๊ธˆ๊นŒ์ง€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ˜๋ณต์ ์œผ๋กœ ์ง„ํ–‰ํ•ด์™”๋˜ ์ž‘์—…๋“ค์„ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ๋“ฑ์žฅํ•œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. Maven์„ ์‚ฌ์šฉํ•˜๋ฉด ๋นŒ๋“œ(Build), ํŒจํ‚ค์ง•, ๋ฌธ์„œํ™”, ํ…Œ์ŠคํŠธ์™€ ํ…Œ์ŠคํŠธ ๋ฆฌํฌํŒ…, git, ์˜์กด์„ฑ๊ด€๋ฆฌ, svn๋“ฑ๊ณผ ๊ฐ™์€ ํ˜•์ƒ๊ด€๋ฆฌ์„œ๋ฒ„์™€ ์—ฐ๋™(SCMs), ๋ฐฐํฌ ๋“ฑ์˜ ์ž‘์—…์„ ์†์‰ฝ๊ฒŒ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Maven์„ ์ดํ•ดํ•˜๋ ค๋ฉด CoC(Convention over Configuration)๋ผ๋Š” ๋‹จ์–ด๋ฅผ ๋จผ์ € ์ดํ•ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. CoC๋ž€ ์ผ์ข…์˜ ๊ด€์Šต์„ ๋งํ•˜๋Š”๋ฐ, ์˜ˆ๋ฅผ ๋“ค์ž๋ฉด ํ”„๋กœ๊ทธ๋žจ์˜ ์†Œ์ŠคํŒŒ์ผ์€ ์–ด๋–ค ์œ„์น˜์— ์žˆ์–ด์•ผ ํ•˜๊ณ , ์†Œ์Šค๊ฐ€ ์ปดํŒŒ์ผ๋œ ํŒŒ์ผ๋“ค์€ ์–ด๋–ค ์œ„์น˜์— ์žˆ์–ด์•ผ ํ•˜๊ณ  ๋“ฑ์„ ๋ฏธ๋ฆฌ ์ •ํ•ด๋†จ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ๋ง์€ ๊ด€์Šต์— ์ด๋ฏธ ์ต์ˆ™ํ•œ ์‚ฌ์šฉ์ž๋Š” ์‰ฝ๊ฒŒ Maven์„ ์‚ฌ์šฉํ•  ..
1.3 ๊ฐœ๋ฐœํ™˜๊ฒฝ ์„ค์ • 1) JDK ๋‹ค์šด๋ฐ›๊ธฐ ๋ฐ ์„ค์น˜ํ•˜๊ธฐ ์ž๋ฐ” ํ”„๋กœ๊ทธ๋žจ์€ ํ”Œ๋žซํผ์— ๋…๋ฆฝ์ ์ด์ง€๋งŒ ์ž๋ฐ”๋ฅผ ์‹คํ–‰์‹œ์ผœ์ฃผ๋Š” JVM ์ž์ฒด๋Š” ํ”Œ๋žซํผ ์ข…์†์ ์ด๋‹ค. jdk 1.8.XXX ๋งŒ ๋‹ค์šด๋ฐ›์œผ๋ฉด ๋œ๋‹ค. jre๋Š” jdk์— ํฌํ•จ๋˜์–ด ์žˆ๋‹ค. ์ €๋Š” ๊ธฐ์กด์— ๊น”์•„๋†จ๋˜ ๋ฒ„์ „๊ณผ ์ถฉ๋Œํ•ด์„œ ๊ฝค๋‚˜ ๊ณ ์ƒ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค... JDK: Java Development Kit ์ž๋ฐ” ์‘์šฉ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์œผ๋กœ ๊ฐœ๋ฐœ์— ํ•„์š”ํ•œ ๋„๊ตฌ๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค. ์ปดํŒŒ์ผ๋Ÿฌ ๋ฐ ๋„๊ตฌ, JRE, ํด๋ž˜์Šค์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์†Œ์Šค, ์ž๋ฐ” ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ์ƒ˜ํ”Œ ์†Œ์Šค ๋“ฑ JRE: JAVA ์ž๋ฐ” ์‹คํ–‰ ํ™˜๊ฒฝ์œผ๋กœ JVM์ด ํฌํ•จ๋˜์–ด ์žˆ๋‹ค. ์ž๋ฐ” ์‹คํ–‰ ํ™˜๊ฒฝ๋งŒ ํ•„์š”ํ•œ ๊ฒฝ์šฐ JRE๋งŒ ๋”ฐ๋กœ ๋‹ค์šด์ด ๊ฐ€๋Šฅํ•˜๋‹ค. 2) ํ™˜๊ฒฝ์„ค์ •ํ•˜๊ธฐ ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ๊ณ ์น˜๊ณ  java -version, javac -version ๋ฒ„์ „ ๋งž๋Š”์ง€ ํ™•์ธ 3) ์ดํด๋ฆฝ..
1.2 SQL 1) SQL์ด๋ž€? SQL(Structured Query Language) SQL์€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‹ค ์‰ฝ๊ฒŒ ๊ฒ€์ƒ‰ํ•˜๊ณ  ์ถ”๊ฐ€, ์‚ญ์ œ, ์ˆ˜์ • ๊ฐ™์€ ์กฐ์ž‘์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ณ ์•ˆ๋œ ์ปดํ“จํ„ฐ ์–ธ์–ด์ž…๋‹ˆ๋‹ค. ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐ์ž‘ํ•˜๊ณ  ์ฟผ๋ฆฌํ•˜๋Š” ํ‘œ์ค€ ์ˆ˜๋‹จ์ž…๋‹ˆ๋‹ค. DML (Data Manipulation Language): ๋ฐ์ดํ„ฐ๋ฅผ ์กฐ์ž‘ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. INSERT, UPDATE, DELETE, SELECT ๋“ฑ์ด ์—ฌ๊ธฐ์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค. DDL (Data Definition Language): ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์Šคํ‚ค๋งˆ๋ฅผ ์ •์˜ํ•˜๊ฑฐ๋‚˜ ์กฐ์ž‘ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. CREATE, DROP, ALTER ๋“ฑ์ด ์—ฌ๊ธฐ์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค. DCL (Data Control Language) : ๋ฐ์ดํ„ฐ๋ฅผ ์ œ์–ดํ•˜๋Š” ์–ธ์–ด์ž…๋‹ˆ๋‹ค. ๊ถŒํ•œ์„ ๊ด€๋ฆฌํ•˜๊ณ , ๋ฐ..
1.1 MySQL 1) intro ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ Q> ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์„ ์–ด๋ฆฐ์ด๋„ ์•Œ ์ˆ˜ ์žˆ์„ ์ •๋„๋กœ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”. A> ๋„์„œ๊ด€์— ์žˆ๋Š” ์ฑ…๋“ค์ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ผ๊ณ  ํ•œ๋‹ค๋ฉด, ๋„์„œ๊ด€ ์‚ฌ์„œ๋ถ„๋“ค์ด๋‚˜ ๋„์„œ ์ •๋ณด๋ฅผ ์ฐพ์•„์ฃผ๋Š” ์ปดํ“จํ„ฐ๋ฅผ DBMS๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ธฐ๋ณธ๊ฐœ๋… (์ •์˜) ๋ฐ์ดํ„ฐ์˜ ์ง‘ํ•ฉ (a Set of Data) ์—ฌ๋Ÿฌ ์‘์šฉ ์‹œ์Šคํ…œ(ํ”„๋กœ๊ทธ๋žจ)๋“ค์˜ ํ†ตํ•ฉ๋œ ์ •๋ณด๋“ค์„ ์ €์žฅํ•˜์—ฌ ์šด์˜ํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต์šฉ(share) ๋ฐ์ดํ„ฐ์˜ ์ง‘ํ•ฉ ํšจ์œจ์ ์œผ๋กœ ์ €์žฅ, ๊ฒ€์ƒ‰, ๊ฐฑ์‹ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ฐ์ดํ„ฐ ์ง‘ํ•ฉ๋“ค๋ผ๋ฆฌ ์—ฐ๊ด€์‹œํ‚ค๊ณ  ์กฐ์งํ™”๋˜์–ด์•ผ ํ•œ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํŠน์„ฑ ์‹ค์‹œ๊ฐ„ ์ ‘๊ทผ์„ฑ(Real-time Accessability) - ์‚ฌ์šฉ์ž์˜ ์š”๊ตฌ๋ฅผ ์ฆ‰์‹œ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ณ„์†์ ์ธ ๋ณ€ํ™”(Continuous Evol..