在以下代码中(我注释掉的那两行.),
sta.close();

rs.close();
为什么会报错呢,(运行时报Socket closed错.)
为什么啊,谢谢啦.
import java.sql.*;
public class TestScroll { public static void main(String[] args) {

String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=xsgl";
String user = "sa";
String password = "671354";
Connection conn = null;
Statement sta = null;
ResultSet rs = null;

try {
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
conn = DriverManager.getConnection(url, user, password);
sta = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
rs = sta.executeQuery("select * from stu");

rs.next();
System.out.println(rs.getString(1));
System.out.println(rs.getString(4));
rs.last();
System.out.println(rs.getString(1));
System.out.println(rs.isLast());
System.out.println(rs.getRow());

rs.absolute(13);//回滚;
System.out.println(rs.getString(1));
System.out.println(rs.getInt(5));
rs.absolute(15);
System.out.println(rs.isAfterLast());
rs.absolute(19);
System.out.println(rs.isAfterLast());//true;

} catch(ClassNotFoundException e) {
System.out.println("没有找到驱动类!");
} catch(SQLException e) {
System.out.println("连接数据库错误!");
} finally {
try {
if(conn != null) {
conn.close();
conn = null;
}
if(sta != null) {
//sta.close();          //为什么这里关闭系统资源时错误?
sta = null;
}
if(rs != null) {
//rs.close();
rs = null;
}
} catch(SQLException e) {
e.printStackTrace();
System.out.println("关闭系统资源错误!");
}
}
}}