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์ ๋๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ณต์ฌํ๋ค.
Gradle ์์กด์ฑ์ build.gradle์ ์ถ๊ฐํ๋ฉด ๋๋ค.
build.gradle
plugins {
id 'java'
}
group 'com.atoz_develop'
version '1.0-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
// jdbc driver
// https://mvnrepository.com/artifact/mysql/mysql-connector-java
compile group: 'mysql', name: 'mysql-connector-java', version: '8.0.19'
}
์์ ๊ฐ์ด dependencies ํ์์ ๋ณต์ฌํ ๊ฒ์ ๋ถ์ฌ๋ฃ๋๋ค.
๋๋จธ์ง๋ ํ๋ก์ ํธ๋ฅผ ์์ฑํ ๋์ ์ค์ ์ ๋ฐ๋ผ ์๋ ์์ฑ๋ผ์๋ ๋ด์ฉ์ด๋ค.
build.gradle์ ์์ ํ๊ณ ๋๋ฉด ์ฐ์ธก ํ๋จ์ 'Gradle projects need to be imported' ๋ฉ์์ง๊ฐ ๋ฌ๋ค.
Enable Auto-Import๋ฅผ ๋๋ฌ build.gradle์ ์์ ํ๋ฉด ์๋์ผ๋ก ์์กด์ฑ์ ๋ฐ๋๋ก ํ๋ค.
์ ์ ํ MySQL JDBC ๋๋ผ์ด๋ฒ๊ฐ ์๋์ผ๋ก ๋ค์ด์จ ๊ฒ์ ํ์ธํ ์ ์๋ค.
3. DB ์ฐ๋
๊ฐ๋จํ๊ฒ DB ์ฐ๋์ ํด๋ณด์.
public class Main {
public static void main(String[] args) {
try {
Connection conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3307",
"leica",
"1234"
);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(
"show databases"
);
while (rs.next()) {
System.out.println(rs.getString(1));
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
DB์์ ์คํค๋ง ๋ชฉ๋ก์ ๊ฐ์ ธ์ค๋ ์ฝ๋์ด๋ค.
์คํ ๊ฒฐ๊ณผ
์คํํด์ ์๋ฌ๊ฐ ๋ฐ์ํ์ง ์๊ณ ์ฐ๊ฒฐํ db์ ์คํค๋ง ๋ชฉ๋ก์ด ์ ์ถ๋ ฅ๋๋ฉด ์ฑ๊ณต์ ์ผ๋ก ์ฐ๋๋ ๊ฒ์ด๋ค.
๋๊ธ