IDE/Eclipse

MariaDB와 Java 연결하기

개발계발게발 2021. 6. 17. 11:06
반응형

1. MariaDB 홈페이지 접속 - > Download 클릭

 

2. Connectors선택

3. Java 8 connector 선택 후 jar파일 다운로드

 

 

4. 이클립스 프로젝트 우클릭 -> Build Path -> Configure Build Path... 선택

 

5. Libraries탭 - > Classpath 선택 -> Add External JARs.. 선택 후 Java 8 connector 선택 후 jar파일 추가

 

 

6. mariadb-java-client-2.7.3.jar 파일 add 확인 후 Apply and Close 선택

7. Referenced Libraries 추가 확인

 


이클립스 자바에서 MariaDB 연결하기

 

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

//자바와 마리아DB 연결

public class DB01 {
	public static void main(String[] args) {
		Connection conn = null;
		Statement stmt = null;
		//		"jdbc:mariadb://   ip주소    :port/DB이름
		String server = "jdbc:mariadb://220.70.33.29:3306/unknown";
		String id = "unknown";
		String pw = "01234567";
		
		try {
			Class.forName("org.mariadb.jdbc.Driver");
			conn = DriverManager.getConnection(server, id, pw);
			stmt = conn.createStatement();
			System.out.println("접속 성공");
		} catch (ClassNotFoundException e) {
			System.out.println("드라이버가 없습니다.");
		} catch (SQLException e) {
			//e.printStackTrace();
			System.out.println("접속정보 및 SQL 문제 발생");
		}finally {
			//닫아주기 : 가장 나중에 연 것 부터 닫기
			try {
				stmt.close();
				conn.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}		
	}
}

접속 성공

 

접속 성공 미출력시 (BuidPath 추가 확인 및 ip주소, 포트, db이름, id, password 확인)

 

package DB;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class DB02 {
	public static void main(String[] args) {
		
		Connection conn = null;
		Statement stmt = null;

		String url = "jdbc:mariadb://220.70.33.29:3306/poseidon";
		String id = "poseidon";
		String pw = "01234567";
		
		try {
			Class.forName("org.mariadb.jdbc.Driver");
			conn = DriverManager.getConnection(url, id, pw);
			stmt = conn.createStatement();
			System.out.println("접속 성공");
			ResultSet rs = stmt.executeQuery("SELECT * FROM member;");

			/*	stmt.execute(); = 결과값이 필요 없을 때
			 * 
			 * 	stmt.executeQuery(); = 결과값이 되돌아와야 할때
			 * 							조회
			 */
			System.out.println("번호\t이름\t나이\t사는곳");
			System.out.println("---------------------------");
			while(rs.next()) {
//				String result = rs.getString(4);
//				System.out.println(result);	
//				System.out.print(rs.getString(1) + "\t");
				System.out.print(rs.getString("member_no") + "\t");//컬럼명
				System.out.print(rs.getString(2) + "\t");
				System.out.print(rs.getString(3) + "\t");
				System.out.println(rs.getString(4));
			}
			
		} catch (ClassNotFoundException e) {
			System.out.println("드라이버가 없습니다.");
			e.printStackTrace();
		} catch (SQLException e) {
			System.out.println("접속 정보 및 SQL 문제 발생.");
			e.printStackTrace();			
		}finally {
			try {
				stmt.close();
				conn.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}			
	}
}

 

stmt.execute(); = 결과값이 필요 없을 때
삽입, 업데이트...
stmt.executeQuery(); = 결과값이 되돌아와야 할때
 ex) 조회...

반응형