2022年2022年关于JAVA的分页查询操作技术 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年2022年关于JAVA的分页查询操作技术 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年关于JAVA的分页查询操作技术 .pdf(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、关于 JAVA的分页查询操作技术核心提示: Servlet 版性能测试主要考虑的Servlet 版运行方式有:一:Servlet 在 Web 容器中的运行机制1 单独一个无状态的Servlet 实例运行即Web 容器里的多个线程调用一个Servlet 实例的运行方式2 多个 Servlet 实例 . 推广和普及Java技术,为国内众多的Java爱好者提供一个“Servlet 版性能测试主要考虑的Servlet 版运行方式有: 一:Servlet 在 Web 容器中的运行机制1单独一个无状态的Servlet 实例运行即Web 容器里的多个线程调用一个Servlet 实例的运行方式2 多个 Ser
2、vlet 实例在 Web 容器中有多个Servlet 实例的对象池, 并有多个Web 容器线程来分别调用执行二: Servlet 连接数据库的方式1 一对一即可每个Servlet 实例都有直接的数据库连接。具体方式有:1 在 Servlet 实例的每个处理方法中每次都调用数据库连接,然后用此连接进行数据库的查询等操作,最后关闭并释放此连接。2 在 Servlet实例的初始化操作时就连接一个“长”的数据库连接,直到Servlet 实例在 destroy 时关闭并释放此数据库连接。 因为现在的数据库操作主要是查询,没有对数据库的增加、 修改等操作,多用户业务查询、Web 容器多线程同时对一个Ser
3、vlet 的同一个数据库连接进行操作应该会没有数据操作同步等问题。2 使用 Web 容器的数据源这里主要是使用Web 容器的数据源数据库连接池。在理论上这种方式能提供最佳的性能。这是也是测试各种Web 容器产品在数据库连接池上实现的性能情况。这里主要看Web 容器的在各种应用情况下的最优化配置。Servlet 与数据源连接的实现方式:Servlet 直接从 Web 容器配置中取得数据源及其连接对象,然后通过此连接对象来操作数据库。对于数据库连接对象的管理由Web 容器来管理。三:要考虑的问题:1 大数据量传输问题大数据量通过Servlet 实例从数据库中取得并整理后,如何有效的传输到客户端IE
4、,并且 Servlet 实例如何有效在Web 容器中处理这些大数据量。2 对各种 JDBC版本的测试即不同的数据库使用其自己专用的JDBC来连接, 在性能上应该要好一些。这里也可比较Weblogic Server 中实现 JDBC与各种数据库 (MSSQL 、Oracle)专用的差别,从测试的结果看出Weblogic Server 的技术实例以及是否真正做到了数据库连接等处理的优化了吗。3 Weblogic Server 的优化配置31 对象池配置包括应用逻辑处理对象的对象池化以及使用数据源时的数据库连接对象池在各种具体应用环境下的优化配置。3 2 线程池配置以上两个方面涉及到对象池化和串行化
5、处理的策略。33 Weblogic Server 的配置的各种参数的相应情况下的配置1 JAVA VM (JAVA 虚拟机 )参数在各种应用情况下的配置。2 Weblogic Server 本身的各种参数配置。鉴于以上的考虑对Servlet 版的测试规划为以下几种测试用例:序号部署包名 (*.JAR *.WAR *.EAR 等) 数据源配置Weblogic Server 的 配 置预 期 结 果说 明可 能 出 现 的 问 题 和 现 象1 ServletQueryForPerConn.war 在每此业务处理时创建数据库连接,操作完毕后关闭并释放。通 过Web.xml配 置 文 件 来 配 置
6、JDBC 的 驱 动 类 型 和 连 接 。直 接 部 署ServletQueryForPerConn.jar 部署包。Web 容器中只有一个Serverlet 实例。建议配置较多的线程数量。性能差。在每此业务处理时创建数据库连接,操作完毕后关闭并释放。此包中没有设计到线程同步的有关代码。数据库很忙 (因为数据库要接收频繁的数据库连接)。可能瓶颈在数据库对频繁的连接处理。数据库事务方面:由于是在每次处理时就调用数据库连接并查询, 因此数据库的事务处理应该是单独在一个独立的处理过程中,与并行的其他线程的处理没有关系。2 ServletQueryForOnceConn.war Servlet 对象
7、只是的初始化时连接与数据库的一个连接,在以后的操作中式中使用这个连接。通过Web.xml 配置文件来配置JDBC的驱动类型和连接。直接部署ServletQueryForOnceConn.jar 包; Web 容器只有一个Servlet实例。建议配置较多的线程数量。性能较差。Servlet 对象只是的初始化时连接与数据库的一个连接, 在以后的操作中式中使用这个连接。此包中没有设计到线程同步的有关代码。数据库连接只有一个。可能瓶颈在Web 容器的多个线程对同一个数据库连接对象的同步等处名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - -
8、名师精心整理 - - - - - - - 第 1 页,共 4 页 - - - - - - - - - 理 (这些同步处理是Web 容器自己管理的) 。 可能出现查询的数据在多个客户请求中打乱(因为同时使用同一个数据库通信通道);并且多个线程(单独的处理单元)可能会在同一个处理事务中,可能各个处理单元会串行操作数据库(这要看数据库的具体实现了)。3 ServletQueryForConnPool.war 直接使用Web 容器的数据源和数据库连接池。配置数据源及数据库连接池。建议根据实际情况优化配置数据源和连接池。如可建立多个连接池等配置。性能好。Servlet 实例不管数据库连接,而是直接从We
9、b 容器中取得数据库连接。数据库的连接对象有Web 容器全权管理。此包中没有设计到线程同步的有关代码。对 Web 容器的数据库连接池的配置可能要根据具体情况进行有效的调整(如数据库连接对象个数和Web容器配额的线程个数的关系等)。 如果配置不佳可能是性能瓶颈在Web 容器或者在数据库方。4 ServletQueryForConnPool.war (同测试 3) 同测试 3 Web 容器的数据源重新配置为数据库产品专用的JDBC驱动器。性能好。测试目的是比较各种不同的JDBC数据连接驱动器的性能,以便得出根据不同的数据库产品选择最佳的JDBC驱动器。只测试数据库产品提供的专用 JDBC驱动器。(
10、说明:因为测试3 在理论上性能是最好,因此选用测试3。测试方法和测试 3 一样, 这样才有可比性。 )同测试 3。5 servletQueryDS_Cache.war 同测试 3 同测试 3 性能一般使用一变量来缓存查询的数据,用户以后的分页查询查询操作是直接从此缓存中取得的。这种方式对Web 容器的内存要求高,效果不是很好,对数据量查询小的效果可能会好些。 优点:减少的了对数据库访问的次数。缺点:需要较大的内存。对Weblogic 容器的内存要求高, 对于有大量用户的查询操作,并且查询的结果集较大时,可能对整个系统的性能是个很大的瓶颈。对大量数据的分页处理问题描述:背景1:一客户通过IE请求
11、 Web 服务器查询数据,而查询结果是上千条甚至是上万条记录,要求查询结果传送到IE 客户端并分页显示。背景2:一客户通过IE或者其他方式请求Web 服务器查询数据,而查询结果是上千条甚至是上万条记录,并要求查询结果把包传送到客户的E-mail 中。问:对于这样的有大量数据的结果集,在Web 服务器端如何有效的处理?可能涉及到的问题:1 内存占用大量数据的结果集, 可能要2传输速度及策略具体的分页处理技术序号名称 处理方法针对的数据库例子说明备注1 游标查询直接使用ResultSet 来处理。 ResultSet 是直接在数据库上建立游标,然后通过ResultSet 的行位置定位接口来获得指定
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年2022年关于JAVA的分页查询操作技术 2022 年关 JAVA 分页 查询 操作 技术
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内