Jquery中文网 www.jquerycn.cn
Jquery中文网 >  脚本编程  >  java  >  正文 优化JDBC编程-多提提意见

优化JDBC编程-多提提意见

发布时间:2019-10-06   编辑:www.jquerycn.cn
jquery中文网为您提供优化JDBC编程-多提提意见等资源,欢迎您收藏本站,我们将为您提供最新的优化JDBC编程-多提提意见资源
<script>ec(2);</script>
优化JDBC编程
这是我根据MS SQL SERVER 2000 JDBC DRIVER HELP,并参考其它资料整理而成。ms的这个帮助文件实在有失大家风范,示例代码很.....有兴趣者可以去下载http://download.microsoft.com/download/SQLSVR2000/jdbc/2000/NT45XP/EN-US/setup.exe。由于本人水平有限,文中不当之处请大家批评指正。
1.尽量减少对数据库元数据方法的使用
    同样是产生一个ResultSet对象,DatabaseMetaData 对象的方法比其它JDBC方法相对要慢,因此平繁使用该方法会降低系统的性能。
 在程序中应当对产生的结果集信息进行高速缓存,比如将getTypeInfo()返回的结果集存入Vector或Hashtable中,这样可大大提高程序的效率。
2.应避免的方法调用模式
    在方法调用时应当尽量避免传入null做为参数,虽然有时能执行成功,但这对DB Server负担很重。其实在很多情况下所需的参数是已知的。比如:
    //这里略去了捕获违例代码(下同)。
    DatabaseMetaData md=...;
    ResultSet rs=md.getTables(null,null,"authors",null);//取得MS SQL SERVER pubs数据库中authors表的信息.
    应当写成:
       ResultSet rs=md.getTables("northwind","dbo","authors",new String[]{"TABLE"});
    这样使程序更有效可靠。
3.使用哑查询语句来取得表的相关特征信息
    一个哑查询语句(Dummy Query,译为哑查询不知是否恰当,愿与大家探讨)不会产生有记录的结果集,比如:select * from tableName where 1=0,因为条件永不成立,DB Server 不会执行这条语句。因此,在不需产生记录行的情况下,哑查询能极大地提高程序的执行效率。比如我们要了解一个表的有关列信息时,上面的语句比select * from tableName这个语句要高效得多,后者数据库服务器要检索所有的行并返回一个记录集,而前者不需要。针对这一问题,JDBC可以有以下两种方法:
    case 1:使用getColumns()方法
        //getColumns()是DatabaseMetaData的一个方法,其有关信息请查阅JDK1.3文档

您可能感兴趣的文章:
asp.net性能优化方法-优化特定配置文件
asp.net性能优化方法-数据库访问性能优化
asp.net生能优化方法-会话状态的灵活应用
写出高效jquery代码的19条指南
jQuery代码优化 遍历篇
站长必看之网站代码怎么优化
web开发人员学习jQuery的6大理由及jQuery的优势介绍
怎么让百度快速收录新网站
xheditor与validate插件冲突的解决方案
Lighttpd 配置与性能优化

[关闭]