위로 아래

DB 연결 매니저 생성

DB에 연결하는 과정을 여러번 거쳐야하니, 아예 클래스로 만들어두고 계속 재사용할 예정이다

 

우선 사용할 변수들을 private로 선언

private Connection conn;
private String url = "jdbc:mysql://localhost/board";
private String user = "아이디";
private String pawd = "비밀번호";

 

 

 

DBConnectionManager 객체 생성

private static DBConnectionManager dbmgt = null;

public static DBConnectionManager getInstance () {
    if(dbmgt == null)
        dbmgt = new DBConnectionManager();
    return dbmgt;
}

클래스 내에서 사용할 수 있게 DBConnectionManager 타입의 dbmgt 변수 선언과 초기화.

 

dbmgt가 private이니, 접근할 수 있도록 getInstance() 메소드 생성

DBConnectionManager 객체가 없으면 dbmgt를 생성해서 반환해주는 역할.

 

 

 

 

생성자에 드라이버 연결

생성자에 드라이버 연결 코드를 입력해, dbmgt가 생성되면 드라이버에 연결되도록 설정

public DBConnectionManager() {
    try {
        Class.forName("com.mysql.cj.jdbc.Driver");
    } catch (ClassNotFoundException e) {
        e.printStackTrace();
    }
}

드라이버 연결을 위해, 사용하는 데이터베이스의 드라이버 파일을 WEB-INF > lib 폴더에 꼭 넣어놓아야 한다.

 

 

 

드라이버 연결

private로 선언한 변수 url, user, pawd를 입력해서 드라이버에 연결

드라이버 연결 객체 conn을 반환

public Connection getConnection() {
    try{
        conn = DriverManager.getConnection(url,user,pawd);
    } catch (SQLException e) {
        e.printStackTrace();
    }
    return conn;
}

 

 

 

 


전체 코드

더보기
package bean;

import java.sql.*;

public class DBConnectionManager {
	private Connection conn;
	private String url = "jdbc:mysql://localhost/board";
	private String user = "아이디";
	private String pawd = "비밀번호";
	private static DBConnectionManager dbmgt = null;
	
	public static DBConnectionManager getInstance () {
		if(dbmgt == null)
			dbmgt = new DBConnectionManager();
		return dbmgt;
	}
	
	public DBConnectionManager() {
		try {
			Class.forName("com.mysql.cj.jdbc.Driver");
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
	}
	
	public Connection getConnection() {
		try{
			conn = DriverManager.getConnection(url,user,pawd);
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return conn;
	}
}