MyBatisPlus-QueryWrapper
全部标签前言早就知道MybatisPlus对分页进行了处理,但是一直没有实战用过,用的是自己封装的一个分页组件,虽不说麻烦吧,但是也不是特别简单。写起来还是比较复杂,但是最近这个组件有了点小小的bug,我决定是时候放弃它了,毅然加入光荣的进化。然后我就去摸索使用MybatisPlus封装的分页组件,不用不知道,一用吓一跳。不得不说是真香啊!功能强大且使用简单吹了这么多,下面就简单下如何使用MybatisPlus实现分页效果简单说明核心代码其实就这几行:PageProjectBiddVO>page=newPage(pageNo,pageSize);IPageProjectBiddVO>projectBi
前言早就知道MybatisPlus对分页进行了处理,但是一直没有实战用过,用的是自己封装的一个分页组件,虽不说麻烦吧,但是也不是特别简单。写起来还是比较复杂,但是最近这个组件有了点小小的bug,我决定是时候放弃它了,毅然加入光荣的进化。然后我就去摸索使用MybatisPlus封装的分页组件,不用不知道,一用吓一跳。不得不说是真香啊!功能强大且使用简单吹了这么多,下面就简单下如何使用MybatisPlus实现分页效果简单说明核心代码其实就这几行:PageProjectBiddVO>page=newPage(pageNo,pageSize);IPageProjectBiddVO>projectBi
MybatisPlus代码生成器这里讲解的是新版(mybatis-plus3.5.1+版本),旧版不兼容官方文档:https://baomidou.com/(建议多看看官方文档,每种功能里面都有讲解)配置这里的配置表格和官方文档一致数据源配置(DataSource)属性说明示例urljdbc路径jdbc:mysql://127.0.0.1:3306/mybatis-plususername数据库账号rootpassword数据库密码123456dbQuery(IDbQuery)数据库查询newMySqlQuery()schema(String)数据库schema(部分数据库适用)mybatis
MybatisPlus代码生成器这里讲解的是新版(mybatis-plus3.5.1+版本),旧版不兼容官方文档:https://baomidou.com/(建议多看看官方文档,每种功能里面都有讲解)配置这里的配置表格和官方文档一致数据源配置(DataSource)属性说明示例urljdbc路径jdbc:mysql://127.0.0.1:3306/mybatis-plususername数据库账号rootpassword数据库密码123456dbQuery(IDbQuery)数据库查询newMySqlQuery()schema(String)数据库schema(部分数据库适用)mybatis
多数据源适用:一般工作时候会有多个数据库,每个库对应不同的业务数据。程序如果每次数据都访问同一个数据库,该数据库压力很大访问会很慢。官方文档:https://baomidou.com/(建议多看看官方文档,每种功能里面都有讲解)【本文章使用的mybatisplus版本为3.5.2】约定本框架只做切换数据源这件核心的事情,并不限制你的具体操作,切换了数据源可以做任何CRUD。配置文件所有以下划线_分割的数据源首部即为组的名称,相同组名称的数据源会放在一个组下。切换数据源可以是组名,也可以是具体数据源名称。组名则切换时采用负载均衡算法切换。默认的数据源名称为master,你可以通过spring.d
多数据源适用:一般工作时候会有多个数据库,每个库对应不同的业务数据。程序如果每次数据都访问同一个数据库,该数据库压力很大访问会很慢。官方文档:https://baomidou.com/(建议多看看官方文档,每种功能里面都有讲解)【本文章使用的mybatisplus版本为3.5.2】约定本框架只做切换数据源这件核心的事情,并不限制你的具体操作,切换了数据源可以做任何CRUD。配置文件所有以下划线_分割的数据源首部即为组的名称,相同组名称的数据源会放在一个组下。切换数据源可以是组名,也可以是具体数据源名称。组名则切换时采用负载均衡算法切换。默认的数据源名称为master,你可以通过spring.d
CRUD官方文档:https://baomidou.com/(建议多看看官方文档,每种功能里面都有讲解)【本文章使用的mybatisplus版本为3.5.2】条件构造器一般都是用service层的方法,因为比mapper层的全。十分重要:Wrapper记住查看输出的SQL进行分析相当于创建一个构造器对象,然后讲需要查询or更新的条件写在里面,最后打包给mapperorservice层的插入、更新方法下图是Wapper的子类,QueryWrapper和UpdateWrapper是一般的Wrapper,AbstractLambdaWrapper是lambda语法糖的链式操作(两者选择一种使用即可)
CRUD官方文档:https://baomidou.com/(建议多看看官方文档,每种功能里面都有讲解)【本文章使用的mybatisplus版本为3.5.2】条件构造器一般都是用service层的方法,因为比mapper层的全。十分重要:Wrapper记住查看输出的SQL进行分析相当于创建一个构造器对象,然后讲需要查询or更新的条件写在里面,最后打包给mapperorservice层的插入、更新方法下图是Wapper的子类,QueryWrapper和UpdateWrapper是一般的Wrapper,AbstractLambdaWrapper是lambda语法糖的链式操作(两者选择一种使用即可)
我们知道,要对数据求和,写sql很简单:selectsum(exp)fromtable_name我们在用mybatisplus做求和计算的时候,mybatisplus的Wrapper不支持sum函数。事实上,mybatisplus只有求count的api,至于其他聚合函数,例如sum、max、min、avg等,都是不支持的。这种情况下,我们就无法使用lambda表达式了,只能以字符串的形式写"sum(xxx)",lookbelow:publicResultgetPlatOrderTransCount(MerPlatOrderRequestmerPlatOrderRequest){QueryWr
我们知道,要对数据求和,写sql很简单:selectsum(exp)fromtable_name我们在用mybatisplus做求和计算的时候,mybatisplus的Wrapper不支持sum函数。事实上,mybatisplus只有求count的api,至于其他聚合函数,例如sum、max、min、avg等,都是不支持的。这种情况下,我们就无法使用lambda表达式了,只能以字符串的形式写"sum(xxx)",lookbelow:publicResultgetPlatOrderTransCount(MerPlatOrderRequestmerPlatOrderRequest){QueryWr