Connection conn =DriverManager.getConnection("url","id","pw")// Connection 객체로 연결을 얻어옴PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM TABLE");ResultSet rs = pstmt2.executeQuery();
int min_salary =1000;String min_id =110;stmt = conn.createStatement();// Statement 객체 생성stmt.executeQuery("SELECT * FROM EMPLOYEE WHERE SALARY >"+ min_salary +"AND EMPLOYEE_ID >"+ min_id)// SALARY 열 값이 min_salary 변수에 저장된 값보다 큰 경우와 EMPLOYEE_ID 열 값이 min_id 변수에 저장된 값보다 큰 경우를 비교를 수행
pstmt = conn.preparedStatement("SELECT * FROM EMPLOYEE WHERE SALARY > ? AND EMPLOYEE_ID > ?");pstmt.setInt(1, min_salary)pstmt.setString(2, min_id)
// DBConnector 클래스publicclassDBConnector{publicstaticConnectiongetConnection(){String driver;String url;String id;String password;try{BufferedReader in =newBufferedReader(newFileReader("DB.txt"));// DB.txt에 써 있는 정보를 in BufferedReader 객체로 가져옴// 언패킹 driver = in.readLine(); url = in.readLine(); id = in.readLine(); password = in.readLine();Class.forName(driver);// forName()을 통해 드라이버를 설정(DriverManager 객체 생성)// DriverManager 클래스를 통해 DB와의 연결을 생성한다.Connection conn =DriverManager.getConnection(url, id, password);return conn;}catch(FileNotFoundException e1){ e1.printStackTrace();returnnull;}catch(IOException e){ e.printStackTrace();returnnull;}catch(ClassNotFoundException e){ e.printStackTrace();returnnull;}catch(SQLException e){ e.printStackTrace();returnnull;}}}
// 예시 Classpublicstaticvoidmain(String[] args){int min_sal =9000;try{Connection conn =DBConnector.getConnection();// Connection 객체 설정// ? 나중에 setInt할 것String sql ="SELECT * FROM EMPLOYEES WHERE SALARY > ?";PreparedStatement pstmt = conn.prepareStatement(sql);// setInt로 첫번째 ?에 매칭시킬 min_sal 변수 9000값을 대입시킴 pstmt.setInt(1, min_sal);// 값을 넣은 후에 executeQuery(), 쿼리를 실행ResultSet rs = pstmt.executeQuery();// 결과를 ResultSet 객체에 담음// emp_id, first_name, last_name, salarywhile(rs.next()){// ResultSet에 담긴 객체 레코드가 빌 때까지 반복System.out.printf("%d\t%10s\t%10s\t%s\n", rs.getInt(1), rs.getString(2), rs.getString(3), rs.getInt("salary"));} rs.close();// ResultSet 객체 정리 pstmt.close();// PrepareStatement 객체 정리 conn.close();// Connction 객체 정리}catch(SQLException e){ e.printStackTrace();}}