62,614
社区成员
发帖
与我相关
我的任务
分享
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Properties;
import javax.sql.rowset.CachedRowSet;
import javax.sql.rowset.RowSetFactory;
import javax.sql.rowset.RowSetProvider;
public class CachedRowSetTest {
private static String driver;
private static String url;
private static String user;
private static String password;
public void initParam(String paramFile) throws Exception
{
Properties pop=new Properties();
pop.load(new FileInputStream(paramFile));
driver=pop.getProperty("driver");
url=pop.getProperty("url");
user=pop.getProperty("user");
password=pop.getProperty("pass");
}
public CachedRowSet query(String sql) throws Exception
{
Class.forName(driver);
Connection conn=DriverManager.getConnection(url, user, password);
Statement statement=conn.createStatement();
ResultSet rs=statement.executeQuery(sql);
RowSetFactory factory=RowSetProvider.newFactory();
CachedRowSet cachedRowSet=factory.createCachedRowSet();
cachedRowSet.populate(rs);
rs.close();
statement.close();
conn.close();
return cachedRowSet;
}
public static void main(String[] args) throws Exception
{
CachedRowSetTest cachedRowSetTest=new CachedRowSetTest();
cachedRowSetTest.initParam("F:/新建文件夹 (3)/codes/13/13.4/mysql.ini");
CachedRowSet rs=cachedRowSetTest.query("select * from student ");
rs.afterLast();
while(rs.previous())
{
System.out.println(rs.getString(1)+"\t"+rs.getString(2)+"\t"+rs.getString(3));
if(rs.getInt("id")==6)
{
rs.updateString("name", "qq");
rs.updateRow();
//rs.acceptChanges();
}
}
Connection conn=DriverManager.getConnection(url,user,password);
conn.setAutoCommit(false);
rs.acceptChanges(conn);
}
}