์ ์ฒด ๊ธ (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.. ์ด์ 1 ยทยทยท 11 12 13 14 ๋ค์