有关 SQLserver + JavaWeb端 多条件结果集 分页显示 的一点总结

三种实现多条件结果集分页的方式,可能还有其他方法:

 

        1.每次取查询结果的所有数据,然后根据页码显示指定的纪录。

       2.根据页面只取一页数据,然后显示这一页,这里要构造sql语句。

       3.取一定页数的数据,就是前面两种的折中。

 

PS:

        在这里要注明一下,是先进行条件检索,再分页。由于所使用的数据库是SQLserver 2008,不像其他数据库分页用limit字段可以方便的实现。所以过程有些复杂。

 

       第一种方法

                            SQLserver实现条件检索得到所有结果,再把所有结果传到服务器端,再用写Java文件处理分页,显示到Web端。

 

       优点:

              这相当于把一件事分成两部分去做,这种处理将事务的处理拆分,降低了耦合性。并且实现比较简单,而且由于所有结果都在服务器上了,查询速度比较快。

 

       缺点:

              占用服务器内存多一些,网络传输数据多。

 

       适合:

              数据量比较少的查询比较合适,要考虑到服务器压力

 

       第二种方法

                            SQLserver实现条件检索得到所有结果并分页,再把指定页数据传到Web端显示。

 

       优点:

              占用服务器内存少,且网络传输数据

 

       缺点:

              相当于把压力全集中在了数据库端,这样对数据库的压力大这类SQLserver语句构造复杂,因为在SQLserver中新条件的加入不能跟在原语句尾部就可以执行,得仔细想想。

 

       适合:

              数据库性能良好,能经得起折腾。

 

       第三种方法

              就是前边两种方法的综合,SQLserver实现条件检索得到所有结果,传一定量(多页)的数据到服务器端,再用写Java文件处理分页,显示到Web端。

 

       优点:

              占用内存相对不多,提高平均查询速度。即对各端的压力都不大,比较均衡。

 

       缺点:

              实现起来更加复杂,可能存在脏数据,需要自己定义一个缓存集合。如果查询的数据量比较大,可以考虑采用这样方式。

 

       适合:

              估计是采用得比较普遍吧。

posted @ 2016-12-13 09:59  夏洛克卷  阅读(134)  评论(0编辑  收藏  举报