<body>
<table border="1">
<tr>
<td>사원 번호</td>
<td>이름</td>
<td>직업</td>
<td>고용일</td>
<td>급여</td>
<td>부서번호</td>
</tr>
<%
Class.forName("com.mysql.jdbc.Driver");
Connection conn = null;
ResultSet rs = null;
PreparedStatement psmt = null;
try{
String url = "jdbc:mysql://localhost:3306/testqset?serverTimezone=Asia/Seoul";
String dbUser = "root";
String dbPw = "1234";
String query = "select * from EMP";
conn = DriverManager.getConnection(url, dbUser, dbPw);
psmt = conn.prepareStatement(query);
//매개변수를 사용하지 않는 경우는
//setInt(1,no)같이 set메소드가 필요없다
rs = psmt.executeQuery();
//executeQuery()는 ResultSet rs를
//결과값으로 반환한다
out.println("DB연결성공");
while(rs.next()){
%>
<tr>
<td><%= rs.getInt("empno") %></td>
<td><%= rs.getString("ename") %></td>
<td><%= rs.getString("job") %></td>
<td><%= rs.getString("hiredate") %></td>
<td><%= rs.getInt("sal") %></td>
<td><%= rs.getInt("deptno") %></td>
</tr>
<%
}//while문 end
}catch(SQLException ex){
out.println("DB연결실패");
}finally {
if (conn != null) {
conn.close();
}
}
%>
</table>
</body>
rs = psmt.executeQuery(); 행에서
PreparedStatement 는 인자값을 주지않아도 된다
반대로 Statement -> rs = smt.executeQuery(query);