分页

有关mybatis的笔试

六月ゝ 毕业季﹏ 提交于 2019-12-04 16:29:18
1.mybatis 中的 #{} 和 ${} 的区别? 答 : 定义: #{} 是预编译。 作用: mybatis 处理 #{} 时, sql 会将它替换成 ? ,然后调用 PreparedStatement 的 set 方法来赋值;还可以防止 sql 注入。 注释: sql 注入是一种注入攻击,可以执行恶意的 sql 语句。是通过 sql 代码插入数据库查询,使得攻击者可以控制 web 应用服务后面的数据库服务器 , 可以对数据库进行一些操作。比如添加,修改和删除数据库中的数据。 定义 :${} 字符串替换。 作用: mybatis 处理 ${} 时, sql 会将它替换成变量的值。 2.mybatis 有几种分页方式? 答 : 有四种,分别是数组分页, sql 分页,拦截器分页, Rowbounds 分页。 3.mybatis 的物理分页与逻辑分页的区别? 答 : 定义:物理分页是依赖于某个物理实体,这个实体就是数据库,例如 mysql 数据库提供的 limit 关键字,程序员编写关于 limit 关键字的查询语句,数据库就会返回分页结果。 定义 : 逻辑分页是程序员编写的代码,数据库返回的不是分页结果,而是全部数据,然后程序员通过代码获取分页数据。常用操作就是一次性查询全部数据存放到 list 集合,然后通过索引获取指定范围的数据, 两者对比: 数据库的负担

Django REST framework分页

不羁的心 提交于 2019-12-04 15:57:04
DRF分页组件 为什么要使用分页 我们数据表中可能会有成千上万条数据,当我们访问某张表的所有数据时,我们不太可能需要一次把所有的数据都展示出来,因为数据量很大,对服务端的内存压力比较大还有就是网络传输过程中耗时也会比较大。 通常我们会希望一部分一部分去请求数据,也就是我们常说的一页一页获取数据并展示出来。 DRF使用分页器 # 分页 class BookView(APIView): # authentication_classes = [TokenAuth,] # [TokenAuth(),] # permission_classes = [] # throttle_classes = [] # parser_classes = [JSONParser, FormParser] def get(self, request): print("request.user", request.user) print("request.auth", request.auth) print("_request.body", request._request.body) print("_request.GET", request._request.GET) book_list = Book.objects.all() # # 分页(原理) from rest_framework

jquery ajax分页写法

拈花ヽ惹草 提交于 2019-12-04 15:55:33
jquery ajax分页写法 我用的是laypage插件 前端代码 <pre> function demo(curr) { $.getJSON('/home/index/getinfo', { page: curr || 1 //向服务端传的参数,此处只是演示 }, function (res) { var html = ''; var list = res.data.list; $.each(list, function (k, v) { html += '<div'; if(k%2==0){ html += ' style="margin-left:0px;"'; } html += ' class="perinfocontent" onclick="window.location.href=\'content.html?id='+v['id']+'\'">'; html += '<img src="'+v['fengmiantu']+'" alt="" class="pic">'; html += '<div class="infos">'; html += '<div class="title">'+v['title']+'</div>'; html += '<div class="tiyao">'+v['content']+'</div>'; html += '<div

yii2分页的基本使用及其配置详解

冷暖自知 提交于 2019-12-04 15:39:59
作者:白狼 出处: http://www.manks.top/yii2_linkpager_pagination.html 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 先说明下我们本篇文章都要讲哪些内容 分页的使用,一步一步的教你怎么做 分页类LinkPager和Pagination都可以自定义哪些属性 分页类LinkPager如何扩展成我们所需要的 第一步,我们来看看yii2自带的分页类该如何去使用? 1、controller action use yii\data\Pagination; $query = Article::find()->where(['status' => 1]); $countQuery = clone $query; $pages = new Pagination(['totalCount' => $countQuery->count()]); $models = $query->offset($pages->offset) ->limit($pages->limit) ->all(); return $this->render('index', [ 'models' => $models, 'pages' => $pages, ]); 2、View use yii

操作系统-第4章习题解析

我只是一个虾纸丫 提交于 2019-12-04 12:21:06
第4章习题解析 1.为什么要配置层次式存储器? 答:这是因为:   a.设置多个存储器可以使存储器两端的硬件能并行工作。   b.采用多级存储系统,特别是Cache技术,这是一种减轻存储器带宽对系统性能影响的最佳结构方案。   c.在微处理机内部设置各种缓冲存储器,以减轻对存储器存取的压力。增加CPU中寄存器的数量,也可大大缓解对存储器的压力。 2.可采用哪几种方式将程序装入内存?它们分别适用于何种场合? 答:将程序装入内存可采用的方式有:绝对装入方式、重定位装入方式、动态运行时装入方式;绝对装入方式适用于单道程序环境中,重定位装入方式和动态运行时装入方式适用于多道程序环境中。 3.何为静态链接?静态链接时需要解决两个什么问题? 答:静态链接是指在程序运行之前,先将各自目标模块及它们所需的库函数,链接成一个完整的装入模块,以后不再拆开的链接方式。   将几个目标链接装配成一个装入模块时,需解决以下两个问题:     将相对地址进行修改。即将除第一个模块外的相对地址修改成装入模块中的相应的相对地址。     变换外部调用符号。即将每个模块中所用的外部调用符号,都变换为相对地址。 4.何谓装入时动态链接?装入时动态链接方式有何优点? 答:装入时动态链接是指将用户源程序编译后所得到的一组目标模块,在装入内存时,采用边装入边链接的一种 链接方式,即在装入一个目标模块时

sql 分页查询

杀马特。学长 韩版系。学妹 提交于 2019-12-04 11:25:15
分页 使用SELECT查询时,如果结果集数据量很大,比如几万行数据,放在一个页面显示的话数据量太大,不如分页显示,每次显示100条。 要实现分页功能,实际上就是从结果集中显示第1~100条记录作为第1页,显示第101~200条记录作为第2页,以此类推。 因此,分页实际上就是从结果集中“截取”出第M~N条记录。这个查询可以通过 LIMIT <M> OFFSET <N> 子句实现。我们先把所有学生按照成绩从高到低进行排序: -- 按score从高到低 Run 现在,我们把结果集分页,每页3条记录。要获取第1页的记录,可以使用 LIMIT 3 OFFSET 0 : -- 查询第1页 Run 上述查询 LIMIT 3 OFFSET 0 表示,对结果集从0号记录开始,最多取3条。注意SQL记录集的索引从0开始。 如果要查询第2页,那么我们只需要“跳过”头3条记录,也就是对结果集从3号记录开始查询,把 OFFSET 设定为3: -- 查询第2页 Run 类似的,查询第3页的时候, OFFSET 应该设定为6: -- 查询第3页 Run 查询第4页的时候, OFFSET 应该设定为9: -- 查询第4页 Run 由于第4页只有1条记录,因此最终结果集按实际数量1显示。 LIMIT 3 表示的意思是“最多3条记录”。 可见,分页查询的关键在于,首先要确定每页需要显示的结果数量 pageSize

Django:RestFramework之-------分页

天大地大妈咪最大 提交于 2019-12-04 08:52:22
9.分页操作 分页,看第n页,每页显示n条数据 分页,在n个位置,向后查看n条数据. 加密分页,上一页和下一页 1.基于PageNumberPagination分页 1.路由: url(r'^(?P<version>[v1|v2]+)/splitpage/$', views.SplitpageView.as_view(),), 2.视图函数 from rest_framework.pagination import PageNumberPagination from rest_framework.response import Response #分页需要导入类 class SplitpageView(APIView): def get(self,request,*args,**kwargs): #获取所有数据 roles = models.Role.objects.all() #创建分页对象 pg = PageNumberPagination() #在数据库中获取分页的数据 pager_roles = pg.paginate_queryset(queryset=roles,request=request,view=self) print(pager_roles) #对数据进行序列化 ser = PagerSerialiser(instance=pager_roles,many

thinkphp 数据分页

情到浓时终转凉″ 提交于 2019-12-04 08:46:51
通常在数据查询后都会对数据集进行分页操作,ThinkPHP也提供了分页类来对数据分页提供支持。 下面是数据分页的两种示例。 第一种:利用Page类和limit方法 $User = M ( 'User' ); // 实例化User对象 $count = $User -> where ( 'status=1' )-> count (); // 查询满足要求的总记录数 $Page = new \Think\Page ( $count , 25 ); // 实例化分页类 传入总记录数和每页显示的记录数(25) $show = $Page -> show (); // 分页显示输出 // 进行分页数据查询 注意limit方法的参数要使用Page类的属性 $list = $User -> where ( 'status=1' )-> order ( 'create_time' )-> limit ( $Page -> firstRow . ',' . $Page -> listRows )-> select (); $this -> assign ( 'list' , $list ); // 赋值数据集 $this -> assign ( 'page' , $show ); // 赋值分页输出 $this -> display (); // 输出模板 第二种:分页类和page方法的实现