언어/java

[java] 학생 관리 프로그램 (4) - db 연결 후 select

돌멩이수프 2022. 4. 24. 19:25
728x90
package database;
import java.sql.*;

public class DBconnection {

    private Connection con;
    private Statement st;
    private ResultSet rs;

    public DBconnection() {
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3307/study", "root", "???");
            st = con.createStatement();
        }
        catch(Exception e) {
            System.out.println("데이터베이스 연결 오류 : " + e.getMessage());
        }
    }

    public ResultSet select(int ID) throws SQLException{
        String sql = "select * from students where id = ?";
        PreparedStatement pst = con.prepareStatement(sql);
        pst.setInt(1, ID);
        ResultSet result = pst.executeQuery();

        while (result.next()) {

            int _ID = result.getInt("ID");
            String _name = result.getString("Name");
            String _birth = result.getString("BirthDay");
            String _major = result.getString("Major");
            System.out.println("학번 : " + _ID + "\n" + "이름 : " + _name + "\n" + "생년월일 : " + _birth + "\n" + "학과 : " + _major);
        }

        con.close();
        st.close();
        return result;
    }

}

진짜 너무 어려웠다.

일단 기억해야 될 건 반환타입이 int, String 등 말고도 ResultSet 자체로 올 수 있다는 것. 그거 말고는 더 생각나면 나중에 추가함...

728x90