在JSP中如果用到PreparedStatement,如何在一个也面里面打开两个表并返回响应的结果集?
建立一个链接,能不能用两个PreparedStatement对象啊?如果不能用,我怎么样查询两句不同的SQL语句?
PreparedStatement pstmSelect=con.prepareStatement("SELECT * FROM choice WHERE cid=?");
PreparedStatement pstmSelect1=con1.prepareStatement("SELECT * FROM judge WHERE jid=?");
同时用了两个ResultSet对象:
……
pstmSelect.setString(1,Integer.toString(y));
ResultSet rs=pstmSelect.executeQuery();
……
pstmSelect1.setString(1,Integer.toString(z));
ResultSet rs1=pstmSelect1.executeQuery();第一个结果集能返回我所需要的东西,但第二个就不行了,这是为什么?我该怎么办?
建立一个链接,能不能用两个PreparedStatement对象啊?如果不能用,我怎么样查询两句不同的SQL语句?
PreparedStatement pstmSelect=con.prepareStatement("SELECT * FROM choice WHERE cid=?");
PreparedStatement pstmSelect1=con1.prepareStatement("SELECT * FROM judge WHERE jid=?");
同时用了两个ResultSet对象:
……
pstmSelect.setString(1,Integer.toString(y));
ResultSet rs=pstmSelect.executeQuery();
……
pstmSelect1.setString(1,Integer.toString(z));
ResultSet rs1=pstmSelect1.executeQuery();第一个结果集能返回我所需要的东西,但第二个就不行了,这是为什么?我该怎么办?
一般用完一个连接要关闭connection.clos可能你没关闭吧
public class Bean{
public List ****list(String year,String pid) throws SQLException {
ArrayList list=null ;
if (list != null)
return list;
list = new ArrayList();
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
conn = ds.getConnection();
String sql = " *******";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while(rs.next())
{
} close(rs);
close(pstmt);
} catch (SQLException e) {
close(rs);
close(pstmt);
rollback(conn);
e.printStackTrace();
} finally {
close(conn);
}
return list;
}
public List ***list(String year,String pid) throws SQLException {
ArrayList list=null ;
if (list != null)
return list;
list = new ArrayList();
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
conn = ds.getConnection();
String sql = " *******";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while(rs.next())
{
} close(rs);
close(pstmt);
} catch (SQLException e) {
close(rs);
close(pstmt);
rollback(conn);
e.printStackTrace();
} finally {
close(conn);
}
return list;
}}