进一步提高JDBC应用程序的性能(二)


 


作者: 赵杨 笔名:bootcool  



[bootcool@263.net,bootcool@163.net] 



美丽而温暖的昆明其实很适合做冷静的思考



                               进一步提高JDBC应用程序的性能(二)



 



:在面向对象的程序设计和提升程序性能之间做出平衡



当我们设计数据库应用程序的结构时,经常需要把对象模型映射成数据库中的表,或者把表反向映射成对象模型。面向对象的一个基本原则是:使得每一个对象与真实世界中的对应物具有共同的特征,以符合我们的思维习惯。



 比如,数据库中有这样一张学生表:
































Id



Name



Department



Position



Address



1



张三



物理系



团员



昆明



  现在,我们需要把该表从数据库中映射给用户,基于上述原则,我们考虑封装一个类在这我们暂时就称它为Record Set,当然具体到对学生表的映射,指的就是Student,并且得出一个遵循面向对象设计原则的映射方案:





 



(图3――方案1



我们知道,数据库应用程序的一个主要功能就是要把从数据库中查询到的结果,以某种形式再现给用户。为了符合用户的习惯,我们的程序使用了Java Swing 包中的JTable作为用户和程序之间交互的接口。我们现在唯一要做的就是确保程序映射数据的准确与快速.



我们使用AbstractTableModel 关于AbstractTableModel JTable的说明可以查看JDK1.3Doc作为映射数据的接口,当然也是用户与程序交互的核心。我们知道一个表格模型可以抽象为一个二维对象数组,或者二维Vector这样的数据结构。于是,我们有了另一个基于数据结构的映射方案



 





 



                               (图4――方案2



那究竟选择哪种方法呢?通过下表的比较,我们不难得出结论。

























































映射方案



面相对象



封装性



易理解性



灵活性



接口易实现性



工作量小,性能好



方案1



ü          



ü          



ü          



 



 



 



方案2



 



 



 



ü          



ü          



ü          



                                   (表 4



 



说明1方案1表面上似乎遵循了面向对象的原则,但是:



1):其工作量显然比方案2大。



2):结果集因为类封装而失去了灵活性。



3):中间的各种转化会使程序的性能降低。



说明2但是方案1 在很多情况下都是最佳的选择。因为,当用户通过Web方式与程序交互时,实现对结果集的再封装就是必要的了。



小结在笔者的程序中,为了提高程序的性能,不得以放弃了面向对象的程序设计原则。而以JTableAbstractTableModel API的本身特性反向得出了映射方案。有时依赖于API提供的方法,往往能提高程序的性能。当然这样的选择,主要取决于实际的要求和整个系统的结构设计,我们应该从不同的角度去考虑,最后才能做出平衡。



 



                                                          赵杨:2002.3.31



参考文章:



http://java.sun.com/j2se/1.3/docs/guide/jdbc/getstart/GettingStartedTOC.fm.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Hive JDBC Jar是用于使用JDBC连接Hive的Java库。Hive是基于Hadoop的数据仓库基础设施,提供了一种类似SQL的查询语言HiveQL来查询和分析大规模数据集。Hive JDBC Jar实际上是一个Java Archive文件,其中包含了Hive JDBC驱动程序的实现和依赖的类库。 使用Hive JDBC Jar可以方便地在Java应用程序中连接到Hive并执行查询操作。首先,我们需要将Hive JDBC Jar文件添加到Java应用程序的classpath中。然后,在代码中通过指定JDBC连接字符串、用户名和密码来建立连接。创建Hive JDBC连接之后,我们可以使用Java的JDBC API来执行HiveQL查询和操作。例如,我们可以执行SELECT语句来检索数据,或者执行INSERT、UPDATE、DELETE等语句来修改数据。 Hive JDBC Jar使得在Java应用程序中使用Hive变得非常简单和方便。通过使用Hive JDBC,我们可以利用Hive的分布式计算能力和SQL查询语言来处理和分析大规模的数据集。此外,Hive JDBC还提供了一些高级功能,如连接池、事务支持等,可以进一步提高应用程序性能和可靠性。 总而言之,Hive JDBC Jar是用于在Java应用程序中连接Hive的必备库文件。它提供了Hive JDBC驱动程序的实现和必要的依赖类库,使得我们可以方便地在Java应用程序中使用Hive进行数据查询和处理。通过使用Hive JDBC,我们可以充分利用Hive的强大功能,快速地分析和处理大规模数据集。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

v不吃v你

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值