Connection 循环保存大量数据问题
我连接一个sqlite数据库(小型桌面数据库),也是要循环保存几千条数据,一开始快一些后来很慢
代码大约是这样的:
public static Connection getSqlliteConn(String sqlName) {
try {
//sqlName: 数据库路径
Class.forName("org.sqlite.JDBC");
// String aaa=Db.class.getResource("/").toString();
String fileName = sqlName;
Connection conn = DriverManager.getConnection("jdbc:sqlite:" + fileName);
return conn;
}
catch (Exception e) {
e.printStackTrace();
}
return null;
}
/////////////////// 方法//////////
Connection conn=null;
conn = Db.getSqlliteConn(fileName);
conn.setAutoCommit(false);
SqliteDb.sdTask(conn, taskInfoId); ////从oracle数据查出后 插入sqlite数据
////从oracle数据查出后 插入sqlite数据库里8个表 要循环很多次 每次很多条总计有1万条吧
从oracle 查数据 根据id我用的 this.hibernateTemplate.load(TXjInfo.class, id) 查的,还有list的;
conn.commit();
conn.close();
一开始我看sql语句快一些,过了1分钟后就开始慢了,后来更慢了,,看看哪的问题啊,
hibernate可以加
session.flush();
session.clear();
就很快,,Connection 这个怎么清空下 或是有其他办法吗?