pagehelper怎么计算总数的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pagehelper怎么计算总数的相关的知识,希望对你有一定的参考价值。

PageHelper.startPage会返回一个page对象,这个对象在查询结果出来后会把页数,记录总数给page对象,你用page.getPages()和getTotal()获取页数和记录总数。

PageHelper是MyBatis的分页查询的插件。

他与使用的页面无关,只要你在调用分页查询语句之前调用相应的方法,即可实现分页查询功能;如//获取第1页,20条内容PageHelper.startPage(1,20)。

扩展资料

pageHelper的原理:

pageHelper会使用ThreadLocal获取到同一线程中的变量信息,各个线程之间的Threadlocal不会相互干扰,也就是Thread1中的ThreadLocal1之后获取到Tread1中的变量的信息,不会获取到Thread2中的信息

所以在多线程环境下,各个Threadlocal之间相互隔离,可以实现,不同thread使用不同的数据源或不同的Thread中执行不同的SQL语句。

所以,PageHelper利用这一点通过拦截器获取到同一线程中的预编译好的SQL语句之后将SQL语句包装成具有分页功能的SQL语句,并将其再次赋值给下一步操作,所以实际执行的SQL语句就是有了分页功能的SQL语句。

参考资料来源:MyBatis-pagehelper

参考技术A PageHelper.startPage会返回一个page对象,这个对象在查询结果出来后会把页数,记录总数给page对象,你用page.getPages()和getTotal()获取页数和记录总数,我是这样拿到的,研究不深,作为参考本回答被提问者采纳 参考技术B 使用PageHelper做分页查询时,在执行数据查询之前会根据查询条件执行此SELECT COUNT(0) 查询,以获取数据总数

软件测试中执行覆盖率怎么计算。

是执行覆盖率 不是覆盖率=(至少被执行一次的item数)/item的总数

软件测试覆盖率
覆盖率=(至少被执行一次的item数)/item的总数
语句覆盖率=(至少被执行一次的语句数量)/(可执行的语句总数)
判定覆盖率=(判定结果被评价的次数)/(判定结果总数)
条件覆盖率=(条件操作数值至少被评价一次的数量)/(条件操作数值的总数)
判定条件覆盖率=(条件操作数值或判定结果至少被评价一次的数量)/(条件操作数值总数+判定结果总数)
路径覆盖率=(至少被执行一次的路径数)/(总的路径数)
需求覆盖率=(被验证到的需求数量)/(总的需求数量)
继承上下文判定覆盖率=(累加每个上下文内执行到的判定分支数)/(上下文数*上下文内的判定分支总数)
基于状态的上下文入口覆盖率=(累加每个状态内执行到的方法数)/(状态数*类内方法总数)
函数覆盖率=(至少被执行一次的函数数量)/(系统中函数的总数)
指令块覆盖率=(至少被执行的一次指令块的数量)/(系统中指令块总数)
DDP覆盖率=(至少被执行的一次的判定路径数量)/( 系统中判定路径总数)
分支条件组合覆盖率=(被评测到的分支条件组合数)/(分支条件组合数)
PPP覆盖率=(至少被执行的一次的PPP数量)/( 系统中PPP总数)追问

这里没有执行覆盖率 我搜到过这个

追答

不知道你的执行覆盖率指的是什么啊,你使用的那里的教案

参考技术A 简单点说,在你测试用例编写正常,全面情况下,可以这么计算=执行测试用例数/总测试用例数 参考技术B 不怎么清楚。学习。。。。。 参考技术C 1、定义:覆盖率是用来度量测试完整性的一个手段,同时也是测试技术有效性的一个度量。
2、计算:覆盖率=(至少被执行一次的item数)/item的总数
3、特点
1)根据覆盖率数据,可以检测我们的测试是否充分
2)分析出测试的弱点在哪方面
3)指导我们设计能够增加覆盖率的测试用例,有效提高测试质量,但是测试用例设计不能一味追求覆盖率,因为测试成本随覆盖率的增加而增加。

软件测试覆盖率分类
覆盖率按照测试方法大体上可以划分为三大类,即白盒覆盖(white-Box Coverage)、灰盒覆盖(Gray-Box coverage)和黑盒覆盖(Black-Box Coverage)。
白盒覆盖率(white-Box Coverage)
白盒覆盖率中使用的较常见的就是逻辑覆盖率(Logical Coverage ),也叫代码覆盖率(Code Coverage)或者结构化覆盖率(Structural Coverage),我们常见的逻辑覆盖包括:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖。
1、语句覆盖(Statement Coverage)
1)定义:在测试时,运行被测程序后,程序中被执行的可执行语句的比率。
2)计算公式:语句覆盖率=(至少被执行一次的语句数量)/(可执行的语句总数)
3)100 %语句覆盖率含义:在测试时,先设计若干个测试用例,然后运行被测程序,使程序中的每个可执行语句至少执行一次。
4)特点:语句覆盖可以检验每个可执行语句,但是即使语句覆盖率达到了100 %,也会有缺陷发现不了,所以覆盖率只是我们度量的手段。
2、判定覆盖(Decision Coverage)/分支覆盖率(Branch Coverage)
1)定义:在测试时,运行被测程序后,程序中所有判断语句的取真分支和取假分支被执行到的比率。
2)计算公式:判定覆盖率=(判定结果被评价的次数)/(判定结果的总数)
3)100 %条件覆盖率含义:在测试时,先设计若干个测试用例,然后运行测试程序,使得程序中每个判断的取真分支和取假分支至少经历一次,即判断的真假值均曾被满足。
4)特点
(1)若判定覆盖达到100 %,则语句覆盖必为100 %。
(2)即使判定覆盖率达到了100 %,也会有缺陷发现不了。
3、条件覆盖(Condition Coverage)
1)定义:在测试时,运行被测程序后,程序中所有判断语句中每个条件的可能取值(真值和假值)出现过的比率。
2)计算公式:条件覆盖率=(条件操作数值至少被评价一次的数量)/(条件操作数值的总数)
3)100 %条件覆盖率含义:在测试时,先设计若干个测试用例,然后运行被测试程序,要使每个判断中每个条件的可能取值至少满足一次。
4)特点:覆盖条件的测试用例不一定覆盖判定。

以上是关于pagehelper怎么计算总数的的主要内容,如果未能解决你的问题,请参考以下文章

PageHelper关联查询 统计总数问题

PageHelper关联查询 统计总数问题

记录pageHelper分页orderby的坑

pagehelper配合mybatis怎么设置?

mybatis pagehelper 怎么求出总页数

关于PageHelper分页问题。我用PageHelper分页查询后对查询的结果进行添加删除操作后,怎样保证pageInfo