table에 맞는 객체를 java클래스로 생성해준다.
이 때, 속성명은 테이블 속성과 일치해야하며
데이터 형식은 Wrapper로 만들어져야 한다.
intellij에서 따로 들아ㅣ버를 등록해야 함!
Class.forName("com.mysql.cj.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/scott?serverTimezone=Asia/Seoul",
"scott",
"scott");
이 때 Statement를 사용하면 SQL쿼리를 만들 때 불편하다.
그래서 쓰는 게 PreparedStatement 객체!
PreparedStatement는 쿼리 작성 시, 변수가 들어갈 부분을 ? 로 입력하고, set을 이용해 따로 변수를 넣어준다.
String sql = "INSERT INTO dept VALUES (?,?,?)";
PreparedStatement pstmt = con.prepareStatement(sql);
try(pstmt; con) {
//v1
// int result = pstmt.executeUpdate(sql);
//v2
pstmt.setInt(1 ,newDept.getDeptno());
pstmt.setString(2,newDept.getDname());
pstmt.setString(3,newDept.getLoc());
int result = pstmt.executeUpdate();
if(result != 0) {
insertReuslt = true;
return insertReuslt;
}
}
파일 버퍼처럼 열고 닫는 게 필요하다.
그래서 try(statement; con) 처럼 try문을 사용함