- 28
- 0
- 约2.85千字
- 约 5页
- 2018-05-31 发布于河南
- 举报
JDBC学习笔记——JDBC性能优化-By Jon
JDBC学习笔记——JDBC性能优化
作者:佚名 来自:CSDN
程序的性能主要由两个因素决定,一是数据库本身的性质,另一个是与数据库相对独立的jdbc应用程序接口(api)的使用。这里说的是如何正确使用jdbc编程接口,以获得更好的性能。
主要优化有:
选择正确的jdbc驱动程序
的优化:使用连接池来管理Connection对象
的优化:使用批量更新等
的优化:正确的从数据库中get数据等
选择正确的jdbc驱动程序:
、jdbc-odbc 桥
、本地api-部分 java驱动
、jdbc网路协议-纯java驱动
、jdbc本地协议
最好选择 jdbc网路协议-纯java驱动 效率比较高 但需要第三方软件的支持 比如corba weblogic属于这种类型
优化Connection对象:
、设置适当的参数
例如:
props.put(user,wuwei);
props.put(password,wuwei);
props.put(defaultRowPrefectch,30);
props.put(dufaultBatchValue,5);
Connection con=DriverManager.getConnection(jdbc:oracle:thin:@hostsString,props);
对象可以通过设置setDefaultRowPrefetch(int) 和 setDefaultBatchValue(int) 两个参数类优化连接
2、使用连接池
可以自己写一个连接池,这样程序的灵活性强,便于移植。
apache项目开发了一套非常通用而表现非常稳定的对象池 /commons/pool.htm
设计了自己的连接池后,在客户端调用建立对象:
public Object makeObject() throws Exception{
Class.forName(oracle.jdbc.driver.OracalDriver);
return DriverManager.getConnection(url,username,password);
}
销毁对象时用:
public void destroyObject(Object obj) throws Exception{
((Connection)obj.close());
}
注意几点:对象池里有没有回收机制,对象池里有机有容量限制,对象池里有多少个闲置对象(可以释放)
3、控制事务的提交
最好手动提交事务,不但可以可以保证数据原子性,而且对新能提高留下余地。
try{
connection.setAutoCommint(false);
// 代码用PreparedStatement性能比Statementh好
mit();
connection.setAutoCommit(true);
}catch(SQLException e){
}finally{
//代码
if(connection!=null){
connection.close();
}
}
4、适当的选择事务的隔离级别
TRANSACTION_READ_UNCOMMITED 性能最高
TRANSACTION_READ_COMMITED 快
TRANSACTION_REFEATABLE_READ 中等
RANSACTION_SERIALIZABLE 慢
(3)Statement 优化:
jdbc3个接口用来处理sql的执行,是Statement PreparedStatement CallableStatement提供适当的Statement接口批量执行sql从数据库批量获取数据。
PreparedStatement 比Statement性能要好 主要体现在一个sql语句多次重复执行的情况。
PreparedStatemnt只编译解析一次而Statement每次编译一次。
批量修改数据库
Statement 提供方法addBatch(String)和executeBatch()
调用方法为
stmt.addBatch(isnert.....);
stmt.addBatch(update.....);
stmt.executeBatch();
也可以用PreparedStatement从而更好的提高性能:
您可能关注的文档
最近下载
- 2026年时事政治测试题库100道附参考答案(完整版).docx VIP
- 儿科抢救药品临床应用与管理.pptx VIP
- 河北广谋新材料科技有限公司年产600万平方米复合革及隔音布、400万平方米新型复合网项目环境影响报告表.docx VIP
- 部编版语文五年级下册第七单元教材解读大单元集体备课.pptx VIP
- 部编版语文五年级下册第六单元教材解读大单元集体备课.pptx VIP
- 部编版语文五年级下册第五单元教材解读大单元集体备课.pptx VIP
- 部编版语文五年级下册第四单元教材解读大单元集体备课.pptx VIP
- 部编版语文五年级下册第三单元教材解读大单元集体备课.pptx VIP
- 部编版语文五年级下册第二单元教材解读大单元集体备课.pptx VIP
- 部编版语文五年级下册第一单元教材解读大单元集体备课.pptx VIP
原创力文档

文档评论(0)