博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Optional与Mybatis能否一起
阅读量:6510 次
发布时间:2019-06-24

本文共 1673 字,大约阅读时间需要 5 分钟。

1、mybatis的@Param()参数传递的问题,与JDK1.8的Optional的返回值问题。使用Optional与spring-data-jpa和mybatis有啥区别?

使用spring-data-jpa可以使用Optional<实体>,这样的返回不会出错。

但是Mybatis不行,返回值不能是 Optional<实体>,这样子会报错,字段也传入不到mapperxml中。

 

2、mybatis的传递参数为集合(set,list)的问题。

问题原因:

 

 出错原因:collection写set,list或者collection,所以出错。

 

3、mybatis使用自定义的分页插件,查询记录条数,查询显示内容

 

public class PageResult
{ private int currentPage; private int pageSize; private int totalPages; private long totalCount; private List
content; public int getCurrentPage() { return currentPage; } public void setCurrentPage(int currentPage) { this.currentPage = currentPage; } public int getPageSize() { return pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } public int getTotalPages() { return totalPages; } public void setTotalPages(int totalPages) { int page= (int) (this.totalCount/pageSize); if(this.totalCount%pageSize>0){ page++; } this.totalPages = page; } public long getTotalCount() { return totalCount; } public void setTotalCount(long totalCount) { this.totalCount = totalCount; } public List
getLContent() { return content; } public void setContent(List
content) { this.content = content; }

 页面传递的参数: 

currentPage 当前页,pageSize每页的数据条数
pageResult.setCurrentPage(currentPage); pageResult.setPageSize(pageSize); 计算有多少条记录count:select count(*) from 表 pageResult.setTotalCount(count);pageResult.setTotalPages(pageResult.getTotalPages()); 查询页面内容: select * from 表 where 条件
order by 字段 什么顺序(desc还是asc)limit #{currentPage},#{pageSize}
pageResult.setContent(页面内容) 返回pageResult即可。

转载于:https://www.cnblogs.com/fengli9998/p/9025953.html

你可能感兴趣的文章
【转载】Java程序设计入门 (二)
查看>>
which、whereis、location和fand的区别
查看>>
IP地址和子网划分学习笔记之《子网掩码详解》
查看>>
单词最近距离
查看>>
高性能网站性能优化与系统架构(ZT)
查看>>
程序猿知道英语词汇
查看>>
数据存储(两)--SAX发动机XML记忆(附Demo)
查看>>
ECSHOP添加购物车加图片飞入效果
查看>>
谈谈SQL 语句的优化技术
查看>>
数据结构Java实现04----循环链表、仿真链表
查看>>
ecshop如何判断缓存文件是否能更新
查看>>
javascript于boolean类型转换,运营商&amp;&amp;和|| 返回值
查看>>
Socket tips: UDP Echo service - Client code
查看>>
Loading half a billion rows into MySQL---转载
查看>>
iOS边练边学--通知机制和键盘处理小练习
查看>>
深入分析面向对象中的封装作用
查看>>
深刻理解Python中的元类(metaclass)
查看>>
Java编程的逻辑 (44) - 剖析TreeSet
查看>>
address元素
查看>>
Android View体系(六)从源码解析Activity的构成
查看>>