jdbc

TaeYoon Kim·2023년 11월 30일
0

기초 (치트 시트)

목록 보기
10/23
post-custom-banner
  1. JDBC 다운로드
    공식 홈페이지에서 다운 받을 수 있음.
    하지만 Gradle를 통해 추가할 수 있음

build.gradle 파일의 depandency부분에 아래 코드 추가

// https://mvnrepository.com/artifact/com.mysql/mysql-connector-j
    implementation group: 'com.mysql', name: 'mysql-connector-j', version: '8.0.33'

mysql server 준비

mysql 테이블 생성 값도 대충 추가

CREATE TABLE Student
(   student_id      int           NOT NULL AUTO_INCREMENT, 
    student_name    VARCHAR(100)    NOT NULL,
    PRIMARY KEY (student_id)                  );

java 부분

import java.sql.*;

public class JDBCTest {
    public static void main(String[] args) {
        Connection conn = null; //연결하는 객체
        Statement statement = null; //sql 을 실행하는 객체
        ResultSet resultSet = null; //sql 결과를 저장하는 객체

        String id ="kty";
        String passward ="qwer1234";



        try{
            // Connection을 얻기 위해 필요한 url 역시, 벤더사마다 다르다.
            // mysql은 "jdbc:mysql://localhost/사용할db이름" 이다.
            String url = "jdbc:mysql://192.168.72.30/test";
            // @param  getConnection(url, userName, password);
            // @return Connection
            conn = DriverManager.getConnection(url, id, passward);
            System.out.println("연결 성공");
            statement = conn.createStatement();
            String sql = "select * from Student;";
            resultSet = statement.executeQuery(sql);
            while(resultSet.next()){
                System.out.print(resultSet.getString(1));
                System.out.print("  ");
                System.out.print(resultSet.getString(2));
                System.out.print("\n");

            }
        }

        catch(SQLException e){
            System.out.println("에러: " + e);
        }
        finally {
            try {
                if (conn != null && !conn.isClosed()) {
                    conn.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }


}

Select문과 insert,update,delete문이 쓰는 메소드가 다르다.
Select은 statement.executeQuery(sql);
insert,update,delete 은 .executeUpdate(sql);

String sql = "select * from Student;";
            resultSet = statement.executeQuery(sql);
String sql = "INSERT INTO Student (student_name) VALUES ('을지문덕');";
            statement.executeUpdate(sql); //영향을 받은 행 갯수를 반환
post-custom-banner

0개의 댓글