🦕 공룡이 되자!

JDBC 본문

Development/Java

JDBC

Kirok Kim 2021. 12. 13. 22:17
  • 첫 단계로는 Mysql connector/j를 아래 링크를 통해 설치를 하고 해당 경로에 파일을 넣는다.

 2021.12.09 - [Data/Database_MySQL] - MacOS MySQL 설치

 

MacOS MySQL 설치

정말 이거로 애먹었다.. 부디 다른 분들은 이걸 보시고 한 번에 해결하시길... Mysql에서는 mac installer를 지원하지 않기 때문에 workbench, connector/j, mysql 따로 받아줘야한다. mysql는 homebrew로 설치하..

recordkk.tistory.com

  • 그 뒤에 작업하려는 eclipse의 project explorer의 java project에 connector-java-8.0~.jar을 붙여 넣고 

  • 해당 jar를 우클릭하여 builpath를 클릭하여 add to build path를 눌러준다.

package day12_13;

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

public class JdbcUtil {

	public static Connection getConnection() throws ClassNotFoundException, SQLException {
		Class.forName("com.mysql.cj.jdbc.Driver");
		System.out.println("로딩 성공");
		String url = "jdbc:mysql://127.0.0.1/db1";
		String username = "user2";
		String pass = "4321";
		Connection conn = DriverManager.getConnection(url, username, pass);
		return conn;
	}

	public static void close(Statement stmt, Connection conn) {
		try {
			if (stmt != null)
				stmt.close();
		} catch (SQLException e) {
		}
		try {
			if (conn != null)
				conn.close();
		} catch (SQLException e) {
		}
	}

}
  • class.forname으로 아까 경로에 붙여 넣어준 jar파일의 driver를 실행시키고
  • drivermanager와 connection클래스를 활용하여 sql과 연결을 해준다.
  • 참고로 접근하려면 미리 user를 생성을 하고 해야한다.
package day12_13;

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

public class TestInsertJdbc {
	public static void main(String[] args) {
		Connection conn = null;
		PreparedStatement stmt = null;
		String username = "최길동";
		String tel = "010-114";
		String intro = "김씨'네번째 유저";
		String addr = "부산";
		String insertSql = "insert into member(no,name,tel,intro,addr)";
		insertSql += "values(?,?,?,?,?)";
		try {
			conn = JdbcUtil.getConnection();
			System.out.println("db연결성공");
			stmt = conn.prepareStatement(insertSql);

//			stmt.executeQuery();
			System.out.println("등록성공");
			stmt.setInt(1, 6);
			stmt.setString(2, username);
			stmt.setString(3, tel);
			stmt.setString(4, intro);
			stmt.setString(5, addr);
			stmt.executeUpdate();
		} catch (Exception e) {
			System.out.println("sql오류");
			e.printStackTrace();
		} finally {
			JdbcUtil.close(stmt, conn);
		}

	}
}
  • 해당 내용은 직접 sql에 java를 통해 넣어주는 것이다.
  • setInt는 말그대로 int타입 String은 string타입을 대입한다.
해당 내용은 이해보다는 암기가 중요하다 jdbc를 통해 sql을 연결할려면 위의 사항이 필요한 과정이라고 인지를 하고 외우면 되겠다.

 

반응형

'Development > Java' 카테고리의 다른 글

Mybatis...1  (0) 2021.12.15
Mybatis...2  (0) 2021.12.15
Collection framework Set/Map  (0) 2021.12.12
Java 코드리뷰...1 forEach  (2) 2021.12.11
Java 클래스 및 메서드 정리  (0) 2021.12.08
Comments