Mybatis-Plus

MyBatis-Plus | 最简单的查询操作教程(Lambda)

佐手、 提交于 2019-12-09 20:06:17
引言 上一篇: MyBatis-Plus | 最优雅最简洁地完成数据库操作 是对MyBatis-Plus的功能进行简单介绍,虽然是介绍,也让我们领略到他的优雅与强大。你是不是已经被吸引了?别着急,上一节,我们算是参观了MyBatis的风景,这一节,我将带你领略他独特的魅力。 Lambda 官方表示,3.x支持Lambda表达式,那应该怎么使用呢?我们来看个例子: QueryWrapper<Student> queryWrapper = new QueryWrapper<>(); queryWrapper.lambda().eq(Student::getName, "冯文议"); List<Student> studentList = list(queryWrapper); for (Student student : studentList) Console.info(student); 看一下测试结果(为了看好,我们转成json): { "id":1035789714459471874, "name":"冯文议", "age":26, "info":"无畏造英雄", "isDelete":false, "createTime":"Sep 1, 2018 3:21:26 PM", "updateTime":"Sep 1, 2018 3:21:26 PM", "gender":

SpringBoot+MyBatisPlus+ElementUI一步一步搭建前后端分离的项目(附代码下载)

▼魔方 西西 提交于 2019-12-09 13:45:19
场景 一步一步教你在IEDA中快速搭建SpringBoot项目: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/87688277 插件的安装参照下面博客 IDEA中SpringBoot项目使用@Data要安装Lombok插件 https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/88362861 项目使用EasyCode插件自动生成代码,EasyCode代码的使用参照 IDEA中安装EasyCode插件并连接数据库生成代码: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103132436 实现 搭建数据库 本地安装Mysql 8.0 ,并安装连接Mysql的工具 Navicat,新建数据库usr,并新建表user IDEA中新建SpringBoot项目 参照上面博客在IDEA中搭建好SpringBoot项目,搭建好后的项目目录为 在badao包下新建应用启动类 package com.badao.usermanage; import org.springframework.boot.SpringApplication; import org.springframework.boot

SpringBoot+MyBatisPlus+ElementUI一步一步搭建前后端分离的项目(附代码下载)

时光毁灭记忆、已成空白 提交于 2019-12-08 21:58:28
场景 一步一步教你在IEDA中快速搭建SpringBoot项目: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/87688277 插件的安装参照下面博客 IDEA中SpringBoot项目使用@Data要安装Lombok插件 https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/88362861 项目使用EasyCode插件自动生成代码,EasyCode代码的使用参照 IDEA中安装EasyCode插件并连接数据库生成代码: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103132436 实现 搭建数据库 本地安装Mysql 8.0 ,并安装连接Mysql的工具 Navicat,新建数据库usr,并新建表user IDEA中新建SpringBoot项目 参照上面博客在IDEA中搭建好SpringBoot项目,搭建好后的项目目录为 在badao包下新建应用启动类 package com.badao.usermanage; import org.springframework.boot.SpringApplication; import org.springframework.boot

mybatis_plus一对一实体映射

二次信任 提交于 2019-12-07 08:52:15
场景:查询中间表对应的用户和角色,这里一条中间表数据分别只对应一个用户和一个角色。当然一般不会有这样的需求,这里只是举例一对一关系. 一、数据结构 1、用户表 2、角色表 3、中间表 二、xml自定义sql <resultMap type="com.xiao.permission_system.entity.UerRole" id="BaseColumn"> <id column="id" property="id" /> <result column="uid" property="uid" /> <result column="role_id" property="roleId" /> <association property="users" javaType="com.xiao.permission_system.entity.UserInfo"> <id column="id" property="id" /> <result column="username" property="username" /> <result column="password" property="password" /> </association> <association property="roles" javaType="com.xiao.permission_system

mybatis_plus一对多实体映射

ぃ、小莉子 提交于 2019-12-07 08:33:44
场景:用户表和角色表通过中间表关联,要根据用户id获取用户拥有的角色列表 一、数据结构 1、用户表 2、角色表 3、中间表 方法一:在mapper类用注解,自定义sql @Select("select r.name from sys_role r LEFT JOIN sys_uer_role ur on ur.role_id=r.id where uid=#{uid}") List<Role> getRoles(String userId); 方法二:xml自定义sql <resultMap id="BaseColumn" type="com.xiao.permission_system.entity.Role"> <id property="id" column="id" /> <result column="name" property="name" /> <collection property="users" ofType="com.xiao.permission_system.entity.UerRole"> <id property="id" column="role_id"/> </collection> </resultMap> <select id="getRoles" resultMap="BaseColumn"> select r.name from sys

mybatis_plus一对一实体映射

家住魔仙堡 提交于 2019-12-06 16:52:34
场景:查询中间表对应的用户和角色,这里一条中间表数据分别只对应一个用户和一个角色。当然一般不会有这样的需求,这里只是举例一对一关系. 一、数据结构 1、用户表 2、角色表 3、中间表 二、xml自定义sql <resultMap type="com.xiao.permission_system.entity.UerRole" id="BaseColumn"> <id column="id" property="id" /> <result column="uid" property="uid" /> <result column="role_id" property="roleId" /> <association property="users" javaType="com.xiao.permission_system.entity.UserInfo"> <id column="id" property="id" /> <result column="username" property="username" /> <result column="password" property="password" /> </association> <association property="roles" javaType="com.xiao.permission_system

mybatisplus的一个坑

北城以北 提交于 2019-12-06 12:44:48
报错: Caused by: java.lang.ClassNotFoundException: com.baomidou.mybatisplus.extension.plugins.pagination.Page 原因是可能没有创建mybatisplus的分页插件类。 解决方式:引入mybatisplus分页插件类 @EnableTransactionManagement @Configuration @ComponentScan(basePackageClasses = com.springboot.cloud.common.web.interceptor.AuditInterceptor.class) public class MybatisConfig { // /** // * 初使化Mybatis审计字段自动赋值的interceptor 此配置在3.1.1版本之后已不需要 // */ // @Bean // public ISqlInjector sqlInjector() { // return new LogicSqlInjector(); // } /** * 分页插件 */ @Bean public PaginationInterceptor paginationInterceptor() { return new PaginationInterceptor()

mybatis-plus 3.2.0 分页返回total为0 解决方案

主宰稳场 提交于 2019-12-06 12:37:47
首先这个问题肯定是开启了二级缓存导致的 其次通过查看文档看到有这么一句话 也就是使用`CachePaginationInterceptor`替换`PaginationInterceptor `即 但是发现mybatis-plus3.2.0的jar包中并没有`CachePaginationInterceptor`这个类~ 所以暂时能想到的方法是:所有分页请求都不使用缓存[摊手] 具体操作如下: 在Mybatisplus-redis的配置类中的 put 缓存的方法中去掉 mapper 方法中的 selectPage 方法 这只是个下下策,待仔细研究下 CachePaginationInterceptor 这个类再看看有没有上上策 本文使用OpenWrite进行编写 来源: https://my.oschina.net/u/4163509/blog/3137476

崛起于Springboot2.X + Mybatis-plus(62)

柔情痞子 提交于 2019-12-06 08:01:47
《SpringBoot2.X心法总纲》 项目Git地址: https://gitee.com/mdxl/blog.git 1、项目结构 2、pom依赖 勾选web、jdbc、mysql、lombok依赖,然后添加其他依赖 <!--mybatis-plus配置依赖--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.2.0</version> </dependency> <!--mybatis-plus 代码生成器--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.2.0</version> </dependency> <!--辅助 mybatis-plus 代码生成器前端模版引擎插件--> <dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>2.3.29</version> </dependency> 3、配置类

mybatisplus的一个坑

五迷三道 提交于 2019-12-05 14:55:07
报错: Caused by: java.lang.ClassNotFoundException: com.baomidou.mybatisplus.extension.plugins.pagination.Page 原因是可能没有创建mybatisplus的分页插件类。 解决方式:引入mybatisplus分页插件类 @EnableTransactionManagement @Configuration @ComponentScan(basePackageClasses = com.springboot.cloud.common.web.interceptor.AuditInterceptor.class) public class MybatisConfig { // /** // * 初使化Mybatis审计字段自动赋值的interceptor 此配置在3.1.1版本之后已不需要 // */ // @Bean // public ISqlInjector sqlInjector() { // return new LogicSqlInjector(); // } /** * 分页插件 */ @Bean public PaginationInterceptor paginationInterceptor() { return new PaginationInterceptor()