์คํ๋ง JDBC ํ๋ก๊ทธ๋๋ฐ - MyBatis ์ฐ๋ ์คํ๋ง JDBC ํ๋ก๊ทธ๋๋ฐ - MyBatis ์ฐ๋ ์ด ๊ธ์์๋ Oracle DB 11g๋ฅผ ์ฌ์ฉํ๋ค๊ณ ๊ฐ์ ํ๋ค. ๋ค๋ฅธ DB๋ฅผ ์ฌ์ฉํด๋ ๋ฌด๋ฐฉํ๋ค. MyBatis - Spring JDBC ํ๋ก๊ทธ๋๋ฐ์ ์ฝ๊ฒ ์์ ํ ์ ์๋๋ก ๋ง๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ - Mapper์ ์ญํ ์ ํ์ฅํ์ฌ ์ฟผ๋ฆฌ๋ฌธ ์์ฑ์ ๋ชจ๋ Mapper์์ ํ ์ ์๋๋ก ์ง์ํ๋ค. ์์กด์ฑ ์ถ๊ฐ Spring JDBC, Oracle JDBC ๋๋ผ์ด๋ฒ, Apache Commons DBCP์ MyBatis ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์์กด์ฑ์ ์ถ๊ฐํ๋ค. org.springframework spring-jdbc 5.1.9.RELEASE com.oracle ojdbc6 11.2.0.3 org.apache.commons commons-dbcp2 2.7.0 org.mybatis mybati.. 2020. 4. 28. ์คํ๋ง JDBC ํ๋ก๊ทธ๋๋ฐ - JdbcTemplate ์คํ๋ง JDBC ํ๋ก๊ทธ๋๋ฐ - JdbcTemplate Spring Framework๋ JDBC ํ๋ก๊ทธ๋๋ฐ์ ์ํด JdbcTemplate ํด๋์ค๋ฅผ ์ ๊ณตํ๋ฉฐ JdbcTemplate ํด๋์ค๋ ์์ฝ๊ฒ DB์ ์ฐ๋ํ ์ ์๋๋ก ๊ตฌํ๋์ด ์๋ค. ์ด ๊ธ์์๋ Oracle DB 11g๋ฅผ ์ฌ์ฉํ๋ค๊ณ ๊ฐ์ ํ๋ค. ๋ค๋ฅธ DB๋ฅผ ์ฌ์ฉํด๋ ๋ฌด๋ฐฉํ๋ค. ์์กด์ฑ ์ถ๊ฐ Spring JDBC, Oracle JDBC ๋๋ผ์ด๋ฒ, Apache Commons DBCP ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์์กด์ฑ์ ์ถ๊ฐํ๋ค. org.springframework spring-jdbc 5.1.9.RELEASE com.oracle ojdbc6 11.2.0.3 org.apache.commons commons-dbcp2 2.7.0 Oracle JDBC ๋๋ผ์ด๋ฒ๋ฅผ ๊ด๋ฆฌํ๋ ๋ ํ์งํ ๋ฆฌ.. 2020. 4. 27. SQL ์์กด ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฌธ์ ์ ๊ณผ JPA SQL ์์กด ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฌธ์ ์ ๊ณผ JPA ๊ฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๋ ค๋ฉด SQL์ ์ฌ์ฉํด์ผ ํ๋ฉฐ ์๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ JDBC API๋ฅผ ์ฌ์ฉํด์ SQL์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ๋ฌํ ์ ์๋ค. JPA๋ฅผ ์ฌ์ฉํ์ ๋์ ์ด์ ์ด ๋ฌด์์ธ์ง, SQL์ ์ง์ ๋ค๋ฃฐ ๋์ ๋ฌธ์ ์ ์ ๋ฌด์์ธ์ง ์์๋ณด๊ธฐ ์ํด ์๋ฐ์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉํด์ ํ์ ๊ด๋ฆฌ ๊ธฐ๋ฅ์ ๊ฐ๋ฐํด๋ณด์. ํ์ ํ ์ด๋ธ์ ์ด๋ฏธ ๋ง๋ค์ด์ ธ ์๋ค๊ณ ๊ฐ์ ํ๊ณ CRUD(๋ฑ๋ก, ์กฐํ, ์์ , ์ญ์ ) ๊ธฐ๋ฅ์ ๊ฐ๋ฐํด๋ณด์. JDBC ํ์ ๊ด๋ฆฌ ์ดํ๋ฆฌ์ผ์ด์ Member(ํ์) ๊ฐ์ฒด ์๋ฐ์์ ์ฌ์ฉํ Member(ํ์) ๊ฐ์ฒด๋ฅผ ๋ง๋ ๋ค. public class Member { private int no; private String email; private String name.. 2020. 3. 18. try-with-resource ๋ฌธ๋ฒ์ ์ฌ์ฉํ JDBC ํ๋ก๊ทธ๋๋ฐ ์์ ์ฝ๋ try-with-resource ๋ฌธ๋ฒ์ ์ฌ์ฉํ JDBC ํ๋ก๊ทธ๋๋ฐ ์์ ์ฝ๋ try-with-resource๋ java 7 ์ด์๋ถํฐ ์ง์๋๋ฉฐ try ๋ธ๋ญ ์คํ์ด ์๋ฃ๋๋ฉด ()์์ ๋ฆฌ์์ค์ ์์์ ํด์ ํ๋ ๋ฉ์๋๋ฅผ ์๋์ผ๋ก ํธ์ถํด์ค๋ค. String url = "jdbc:mysql://localhost:3306/myschema"; // ์์น ์ ๋ณด String username = "user"; // ์ธ์ฆ ์ ๋ณด String password = "1234"; // ์ธ์ฆ ์ ๋ณด // try-with-resource try(Connection conn = DriverManager.getConnection(url, username, password)) { String sql = "SELECT id, username, p.. 2020. 3. 11. IntelliJ๋ก Gradle ํ๋ก์ ํธ ์์ฑํ๊ณ DB ์ฐ๋ํ๊ธฐ IntelliJ๋ก Gradle ํ๋ก์ ํธ ์์ฑํ๊ณ DB ์ฐ๋ํ๊ธฐ 1. Gradle ํ๋ก์ ํธ ๋ง๋ค๊ธฐ ๊ฐ์ฅ ๋จผ์ ์ ํ๋ก์ ํธ๋ฅผ ์์ฑํ๋ค. ์ข์ธก์์ Gradle์ ์ ํํ๊ณ Project SDK์์ ์ฌ์ฉํ JDK ๋ฒ์ ์ ์ ํ, ์ค์ Additional Libraries and Frameworks์์๋ Java๋ง ์ ํํ๊ณ Next๋ฅผ ํด๋ฆญํ๋ค. ํ๋ก์ ํธ ์ด๋ฆ, ์์น, Group Id, Artifact Id๋ฅผ ์ ๋ ฅํ๊ณ Finish๋ฅผ ํด๋ฆญํ๋ค. 2. JDBC Driver ์์กด์ฑ ์ถ๊ฐ Maven ์ ์ฅ์(https://mvnrepository.com)์์ ์์ ์ด ์ฌ์ฉํ๋ DBMS์ JDBC ๋๋ผ์ด๋ฒ ์์กด์ฑ ๊ตฌ๋ฌธ์ ๋ณต์ฌํ๋ค. Gradle ํญ์ ๋ด์ฉ์ ๋ณต์ฌํ๋ฉด ๋๋ค. ๋๋ MySQL 8์ ๋๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ณต.. 2020. 3. 8. Context Parameter(์ปจํ ์คํธ ๋งค๊ฐ๋ณ์)๋ก web.xml์ DB ์ฐ๊ฒฐ ์ ๋ณด ๊ด๋ฆฌํ๊ธฐ ๊ด๋ จ ๊ธ - Servlet Init Parameter(์๋ธ๋ฆฟ ์ด๊ธฐํ ๋งค๊ฐ๋ณ์)๋ก web.xml์ DB ์ฐ๊ฒฐ ์ ๋ณด ๊ด๋ฆฌํ๊ธฐ - Tomcat ์๋ฒ DataSource ์ค์ ๋ฐฉ๋ฒ (+JNDI) Context Parameter(์ปจํ ์คํธ ๋งค๊ฐ๋ณ์)๋ก web.xml์ DB ์ฐ๊ฒฐ ์ ๋ณด ๊ด๋ฆฌํ๊ธฐ Servlet init parameter๋ ๊ทธ ๋งค๊ฐ๋ณ์๊ฐ ์ ์ธ๋ ์๋ธ๋ฆฟ์์๋ง ์ฌ์ฉํ ์ ์๊ณ ๋ค๋ฅธ ์๋ธ๋ฆฟ์ ์ฐธ์กฐํ ์ ์๋ค. ์ฌ๋ฌ ์๋ธ๋ฆฟ์ด ๊ณตํต์ ํ๊ฒฝ ์ ๋ณด๋ฅผ ์ฌ์ฉํ๋ค๋ฉด context parameter๋ฅผ ์ฌ์ฉํ๋๊ฒ ์ข๋ค. Context parameter๋ ๊ฐ์ ์น ์ดํ๋ฆฌ์ผ์ด์ ์ ์๋ธ๋ฆฟ๋ค์ด ๊ฐ์ด ๊ณต์ ํ ์ ์๋ ๋งค๊ฐ๋ณ์์ด๋ค. ๋ค์์ MySQL DB ์ฐ๊ฒฐ ์ ๋ณด๋ฅผ context parameter๋ก ์ ์ธํด์ DB ์ฐ๊ฒฐ์ด ํ์ํ ์๋ธ๋ฆฟ.. 2020. 2. 11. Servlet Init Parameter(์๋ธ๋ฆฟ ์ด๊ธฐํ ๋งค๊ฐ๋ณ์)๋ก web.xml์ DB ์ฐ๊ฒฐ ์ ๋ณด ๊ด๋ฆฌํ๊ธฐ ๊ด๋ จ ๊ธ - Context Parameter(์ปจํ ์คํธ ๋งค๊ฐ๋ณ์)๋ก web.xml์ DB ์ฐ๊ฒฐ ์ ๋ณด ๊ด๋ฆฌํ๊ธฐ Servlet Init Parameter(์๋ธ๋ฆฟ ์ด๊ธฐํ ๋งค๊ฐ๋ณ์)๋ก web.xml์ DB ์ฐ๊ฒฐ ์ ๋ณด ๊ด๋ฆฌํ๊ธฐ Servlet Init Parameter(์๋ธ๋ฆฟ ์ด๊ธฐํ ๋งค๊ฐ๋ณ์) ์๋ธ๋ฆฟ์ ์์ฑํ๊ณ ์ด๊ธฐํํ ๋, ์ฆ init()์ ํธ์ถํ ๋ ์๋ธ๋ฆฟ ์ปจํ ์ด๋๊ฐ ์๋ธ๋ฆฟ์ ์ ๋ฌํ๋ ๋ฐ์ดํฐ์ด๋ค. ๋ณดํต DB ์ฐ๊ฒฐ ์ ๋ณด์ ๊ฐ์ ์ ์ ์ธ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ ๋ ์ฌ์ฉํ๋ค. ๋ค์์ ๋ฐฉ๋ฒ์ผ๋ก ์ค์ ํ ์ ์๋ค. DDํ์ผ(web.xml)์ ์๋ธ๋ฆฟ ๋ฐฐ์น ์ ๋ณด์ ์ค์ ์ด๋ ธํ ์ด์ ์ ์ฌ์ฉํด์ ์๋ธ๋ฆฟ ์์ค ์ฝ๋์ ์ค์ ๊ฐ๋ฅํ 1๋ฒ์ ๋ฐฉ๋ฒ์ผ๋ก ์ค์ ํ๋๊ฒ ์ข๋ค. ์์ค ์ฝ๋์์ ๋ถ๋ฆฌํด์ ์ธ๋ถ ํ์ผ์ ๋๋๊ฒ ๋ ๊ด๋ฆฌํ๊ธฐ ์ฝ๊ธฐ ๋๋ฌธ์ด๋ค. ์๋์ ๊ฐ์ด.. 2020. 2. 11. [IntelliJ] ํ์๊ฐ์ ์์ (JAVA + MySQL) - (1) ํ์ ๋ชฉ๋ก ์กฐํ ๊ด๋ จ ๊ธ - [IntelliJ] ํ์๊ฐ์ ์์ (JAVA + MySQL) - (1) ํ์ ๋ชฉ๋ก ์กฐํ - [IntelliJ] ํ์๊ฐ์ ์์ (JAVA + MySQL) - (2) ํ์ ๊ฐ์ - [IntelliJ] ํ์๊ฐ์ ์์ (JAVA + MySQL) - (3) ํ์ ์ ๋ณด ์์ - [IntelliJ] ํ์๊ฐ์ ์์ (MVC) - (4) ๋ทฐ(JSP) ๋ถ๋ฆฌํ๊ธฐ [IntelliJ] JAVA ์๋ธ๋ฆฟ + MySQL ํ์๊ฐ์ ์์ - (1) ํ์ ๋ชฉ๋ก ์กฐํ ํ๊ฒฝ ์ ๋ณด IntelliJ IDEA 2019.3 Ultimate, Apache Tomcat 9, MySQL 8 ์์ ๊ฐ์ ํ์ ํ ์ด๋ธ์ ์ด์ฉํด ํ์ ๋ชฉ๋ก ์ถ๋ ฅ, ์ ๊ท ํ์ ๋ฑ๋ก, ๊ธฐ์กด ํ์ ์ ๋ณด ์์ ์ ํ๋ ์๋ธ๋ฆฟ์ ๊ตฌํํ๋ค. 1. ํ๋ก์ ํธ ์์ฑ ๋ฐ ์ธํ ์ฐ์ ์น ํ๋ก์ .. 2020. 2. 9. ์ด์ 1 ๋ค์