preparedStatement和ResultSet用完必须要close()吗?
public class Test1{
public static void main(String[] args) throws Exception {
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:sjbitdb","epet","bdqn");
PreparedStatement pstmt=conn.prepareStatement("select count(*) from student");
ResultSet rs=pstmt.executeQuery();
while (rs.next()) {
int num=rs.getInt(1);
System.out.println("共有"+num+"名学生!");
}
pstmt=conn.prepareStatement("select * from Student");//当重新给pstmt赋值时,之前的pstmt需要手动调用pstmt.close()方法吗
rs=pstmt.executeQuery();
while (rs.next()) {
int id=rs.getInt(1);
String name=rs.getString(2);
System.out.println("序号"+id+"\t姓名"+name);
}
pstmt.close();
conn.close();
}
}
上面这段代码,分别使用pstmt和rs进行了两次不同的操作,我代码最后关闭的肯定是最后一次pstmt 和rs所指向的对象,但是我之前pstmt和rs所指向的对象并没有调用对应的close()方法,请问我在下一次使用之前必须调用close()方法吗?如果我没有调用的话,是不是之前pstmt 和rs所指向的对象一直不会关闭,占用着资源呢?
...全文
相关推荐
java 读取表结构 mysql
java 读取表结构 mysql 数据库名: 表名: 字段描述 字段名 数据类型 是否可为空 自增 主键
jdbc面试题目
jdbc面试题目
Java实现从数据库导出大量数据记录并保存到文件的方法
主要介绍了Java实现从数据库导出大量数据记录并保存到文件的方法,涉及Java针对数据库的读取及文件写入等操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
IDEA实现JDBC数据库的增删查改
详细说明,见博文:https://blog.csdn.net/weixin_42493072/article/details/93754804
SQL_执行语句(查询和修改)
SQL_执行语句(查询和修改),SQL_执行语句(查询和修改)


