쿼리문을 미리 만들어두고, bind변수를 사용하여 값만 나중에 넣어서 실행하는 객체
드라이버 로딩
커넥션 얻기
쿼리문 생성객체 얻기(바인드 변수 사용)
String insert = "insert into dept(deptno, dname, loc) values (?,?,?)";
PreparedStatement pstmt = con.prepareStatement(insert);
바인드변수에 값 설정
-정수값 : pstmt.setlnt(인덱스, 정수값);
-실수값 : pstmt.setDouble(인덱스, 실수값);
-문자열 : pstmt.setString(인덱스, 문자열값);
-날찌 : pstm.setDate(인덱스, java.sql.Date);
쿼리문 수행 후 결과 얻기
( 부모(Statement)의 method(executexxx())를 사용하지 않도록 주의 )
-create, drop, alter, grant, revoke => pstmt.execute();
-insert, update, delete => pstmt.executeUpdate();
연결끊기
실행중인 JVM에서 하나의 instance만 생성하고 사용하는 design pattern
-장점 : 속도가 빠르다. 메모리 사용량이 적다.
-단점 : singleton pattern은 사용중에 객체가 소멸되면 다시 살아나지 못한다.
객체가 소멸되었을 때 다시 생성하는 코드를 작성해야 한다.
-값이 저장되지 않고, 업무를 수행해야하는 상황에서 사용.
1. 클래스외부에서 직접 객체화 할 수 없도록 막는다.
생성자의 접근 지정자를 private로 설정.
public class Test{
private Test t;
private Test(){
}//Test
2. instance를 반환하는 method작성
public static Test getInstance(){
3. 객체를 하나로 유지하고, 반환하는 코드 작성
if( t == null ){
t = new Test();
}//end if
return t;
}//getInstance
}//class