본문 바로가기

Languages/java

Mysql JDBC 접속 (Iptime NAS2, and so on)

728x90
반응형

SQLDevloper 로 접속하는 방법은 따로 포스팅했는데 실제로 소스에서 접속은 어떻게 해야할까? 

아래 소스처럼 간단하게 싱글톤 객체로 만들어주고,  jdbc를 활용해서 접속하도록 한다. 

필자는 mariadb를 서버에 올려서사용중이었어서 그대로 mariadb의 jar를 활용해서 eclipse의 build path에 넣어주고 접속해서 쓰는데 문제가 없다. 

https://repo1.maven.org/maven2/org/mariadb/jdbc/mariadb-java-client/1.3.1/

 

Central Repository: org/mariadb/jdbc/mariadb-java-client/1.3.1

 

repo1.maven.org

eclipse mariadb jar build path 설정

public class DbPoolNAS {

	private Connection conn;
	private String dbIpDisk = "//ddns명.ipdisk.co.kr:3306/데이터베이스명";
	
	private static class SingleTon{
		static final DbPoolNAS oDbPool = new DbPoolNAS();
	}
	public Connection getConn() {
		return this.conn;
	}
	public static DbPoolNAS getInstance(){
		return SingleTon.oDbPool;
	}
	
	static{
		try {
			Class.forName("org.mysql.jdbc.Driver");
            // maria db인경우 (같은 jar활용)
			//Class.forName("org.mariadb.jdbc.Driver");
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	
	public void openIPdisk(){
		try {
        	this.conn = DriverManager.getConnection("jdbc:mysql:" + this.dbIpDisk , "root","비밀번호");
//			this.conn = DriverManager.getConnection("jdbc:mariadb:" + this.dbIpDisk , "root","비밀번호");
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	public void close() {
		try {
			this.conn.close();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}
728x90
반응형