https://downloads.mysql.com/archives/c-j/
버전은 낮은걸 사용하는걸 추천한다.
알집을 다운받아주자!!!
알집 압축을 풀고나면 jar파일을 등록 해주자
사용하는 프로젝트 파일에서 아래 그림과 같이 들어가주자!
번호 순서에 맞게 실행을 해준다.
3번 Add External에서 jar파일을 선택해준다
여기까지 실행했으면 1차적으로 DB와 연결이 됬다.
이제 클래스를 하나 만들어서 아래의 코드를 넣어주면 된다.
package db_connect.ch01;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DBClient {
private static final String BD_HOST = "localhost";
private static final int DB_PORT = 포트번호;
private static final String DB_DATABASE_NAME = "shopdb";
private static final String DB_CHARSET = "UTF-8";
private static final String DB_USER_NAME = "루트아이디";
private static final String DB_PASSWORD = "루트비번";
private static Connection conn = null; // 자바 개발자들이 만들어준 것
private static DBClient dbClient; // 사용자정의 클래스
// 외부에서 바로 생성을 막게 설계한다.
private DBClient() {}
//
public synchronized static DBClient getInstance() {
// 동기화 필요하다면
if(dbClient == null) {
dbClient = new DBClient();
}
return dbClient;
}
private static void nuBindingDBClient() {
dbClient = null;
}
// 연결
public Connection getConnection() {
// 방어적 코드
if(conn == null) {
String urlFormat = "jdbc:mysql://%s:%d/%s?serverTimezone=Asia/Seoul&characterEncoding=%s";
String url = String.format(urlFormat, BD_HOST, DB_PORT,DB_DATABASE_NAME,DB_CHARSET);
// MySQL JDBC 드라이버를 클래스로 로딩해서 DriverManager 클래스를 사용한다.
try {
Class.forName("com.mysql.cj.jdbc.Driver");
conn = DriverManager.getConnection(url,DB_USER_NAME,DB_PASSWORD);
System.out.println(">>> Connection Success <<<");
} catch (ClassNotFoundException e) {
e.printStackTrace();
System.out.println(">>> Connection Fail <<<");
} catch (SQLException e) {
System.out.println(">>> Connection Fail <<<");
e.printStackTrace();
}
}
return conn;
}
// Connection 해제
public static void connectClose() {
if(conn != null) {
try {
conn.close();
System.out.println(">>> Connection Close Ok <<<");
} catch (SQLException e) {
e.printStackTrace();
}
conn = null;
}
}
}
'개발일지 > Database' 카테고리의 다른 글
CRUD - (JDBC) (0) | 2022.10.18 |
---|---|
Class for Class (0) | 2022.10.18 |
BETWEEN 사용법 (0) | 2022.10.13 |
데이터베이스 (사용자 생성, 권한 확인) (0) | 2022.10.13 |
LIMIT, ORDER BY (0) | 2022.10.13 |
댓글