Mybatis-Plus

springboot整合分页插件PageHelper

只愿长相守 提交于 2020-08-14 16:51:17
1.pom引入 <!-- mybatis-plus --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.1.0</version> </dependency> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.12</version> </dependency> <!-- 分页插件--> <!-- <dependency>--> <!-- <groupId>com.github.pagehelper</groupId>--> <!-- <artifactId>pagehelper</artifactId>--> <!-- <version>5.1.10</version>--> <!-- </dependency>--> 使用注释的会报版本错 2. 配置文件 ############# 分页插件PageHelper配置 ############# pagehelper.helper-dialect=sqlserver

解决MybatisPlus修改时空字段不修改问题

冷暖自知 提交于 2020-08-14 08:38:31
问题描述: 今天遇到了一个问题,在更新数据时,MybatisPlus不会进行修改属性为空的数据表字段。 解决办法: 只需要在实体类的属性上加一行注释即可 /** * 姓名 */ @TableField(fill = FieldFill.UPDATE) private String name; 这行注释的意思是:在name这个属性执行修改时,将自动填充一个值(默认为null),即将字段修改为空,而不是不做修改。 来源: oschina 链接: https://my.oschina.net/summergao/blog/4493022

在线教育项目-Mybatis-Plus之AutoGenerator-代码生成器

笑着哭i 提交于 2020-08-14 02:48:42
官方文档 MyBatis-Plus- 代码生成器 官方简介 AutoGenerator 是 MyBatis-Plus 的代码生成器,通过 AutoGenerator 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 等各个模块的代码,极大的提升了开发效率。 实例 关于代码生成器的详细介绍我就不多说了,可以去官方文档里面看看,这个官方文档真的挺好的,可以很全面的了解和运用mp,我这里建议是看官方文档,如果有不懂的点可以再查查博客。 然后我把项目中实际运用到的一些配置进行展示,也就是把比较常用的配置进行解释。 import com . baomidou . mybatisplus . annotation . DbType ; import com . baomidou . mybatisplus . annotation . IdType ; import com . baomidou . mybatisplus . generator . AutoGenerator ; import com . baomidou . mybatisplus . generator . config . DataSourceConfig ; import com . baomidou . mybatisplus . generator .

MyBatis-plus如何实现树形结构展示

半城伤御伤魂 提交于 2020-08-14 02:12:28
一 提出需求 先看一下我们的需求,我们的需求是要实现下面这个页面的树形展示。使用的技术是MyBatis-plus。 二 分析需求 首先分析一下这个页面,这个页面是以树形结构的方式展示权限(资源)列表。虽然是树形展示,本质上,它还是一个表。我们可以这样定义权限(资源)表。 CREATE TABLE `sys_resource` ( `id` varchar(30) NOT NULL, `name` varchar(50) NOT NULL, `parent_id` varchar(30) DEFAULT NULL, `type` int(1) NOT NULL DEFAULT '0', `url` varchar(100) DEFAULT NULL, `permission` varchar(50) DEFAULT NULL, `color` varchar(10) DEFAULT NULL, `icon` varchar(30) DEFAULT NULL, `sort` int(11) NOT NULL DEFAULT '0', `verification` tinyint(1) NOT NULL DEFAULT '0', `create_date` datetime NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT

mybatis报shr错误,OGNL表达式问题BuilderException: Error evaluating expression &apos;shr

家住魔仙堡 提交于 2020-08-13 17:00:30
使用Mybatis- Plus 3.x版本时,普通的保存数据控制台报异常,大致如下 : Caused by : org . apache . ibatis . builder . BuilderException : Error evaluating expression 'shr ! = ' 'and shr !=null' . Cause : org . apache . ibatis . ognl . ExpressionSyntaxException : Malformed OGNL expression : 'shr ! = ' 'and shr !=null' [ org . apache . ibatis . ognl . ParseException : Encountered " " shr" Was expecting one of : < EOF > "," . . . "=" . . . "?" . . . "||" . . . "or" . . . "&&" . . . "and" . . . "shr" . . . 二、思考 首先想的是自己业务代码以及数据库字段是否存在问题,仔细检查了一遍发现并没有问题。然后仔细观察异常,发现其中有个关键字 shr ,全局搜索了下,正好是实体类字段shr(审核人)。因为是个5年前的项目,所以也没有吐槽数据库命名规范了

一、Spring Security 表单登录项目

徘徊边缘 提交于 2020-08-13 12:27:39
一、 项目 搭建 依赖 < dependency > < groupId > org.springframework.boot </ groupId > < artifactId > spring-boot-starter-security </ artifactId > </ dependency > 编写一个控制层接口 @RestController public class HelloController { @GetMapping( "/" ) public String hello() { return "登陆成功" ; } } 二、表单登录 启动后访问接口会重定向到登录页 在控制台生成UUID 的临时密码字符串,默认用户名为user Using generated security password: f0af6a0a-fbef-465e-941a-ec9afbaa9af9 登录后我们可访问控制层接口。 三、自定义配置 yml配置 密码是springboot auto配置,在SecurityProperties中定义,所以我们可在yml中自定义。 PasswordEncoder Spring Security 提供了多种密码加密方案,官方推荐使用 BCryptPasswordEncoder,BCryptPasswordEncoder 使用 BCrypt 强哈希函数,

MybatisPlus SQL 打印控制台

点点圈 提交于 2020-08-12 17:55:54
#applicaton.yml 配置 mybatis-plus: configuration: # 是否将sql打印到控制面板(该配置会将sql语句和查询的结果都打印到控制台) log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #效果: 来源: oschina 链接: https://my.oschina.net/u/4374048/blog/4488438

跟我学Springboot开发后端管理系统1:概述

老子叫甜甜 提交于 2020-08-12 14:06:50
前言 Matrxi-Web是一个前后端分离的管理系统,前端采用vue开发框架,后端使用springboot开发框架,具体快速开发、简单可复用的特点。只要把整体框架搭建起来了,后面就只用写CRUD了。 Matrxi-Web具备基本的管理系统的基本功能,后端CRUD代码只需要配置好数据库,便可一键生成。 使用教程 跟我学Spring Boot开发管理系统1:后端整体技术架构 目录 本项目一共有三个模块: matrix-web-backend 后端代码模块 matrix-web-admin 前端代码模块 matrix-gen-code 后端代码生成模块 使用的技术栈 后端模块 Web框架:Spring Boot 2.0.3 数据库ORM:Mybatis-Plus 数据库读写分离:Sharding-JDBC 数据库连接池:支持Druid、也支持Hikari 缓存:Caffeine 权限控制:AOP+注解 日志输出:AOP+logback+MDC 任务调度:Quartz 工作流:activiti5.22.0,设计页面放在前端模块。、 API管理:Swagger 前端模块 前端框架:Vue 网络框架:axios 组件:element-ui 路由:vue-router cookie技术:js-cookie 代码生产模块 生产代码:Mybatis-Plus自带的代码生成 包含的功能 Matrix

跟我学Springboot开发后端管理系统2:Mybatis-Plus实战2

一笑奈何 提交于 2020-08-12 09:14:02
在上一篇文章讲述了如何使用Mybatis-plus自动生成代码,生成的代码具有单表操作数据库的能力,节约了开发时间。然后讲述了如何在Spring Boot中整合Mybatis-Plus。这篇文章讲述如何使用Mybatis-Plus的增强功能:自动填充功能和查询分页功能。 Mybatis-Plus自动填充功能 在Matrix-web项目中,数据库的所有表都有四个公共字段,即create_by、create_time、update_by、update_time ,即存储了表数据的创建人、创建时间、更新时间、更新人。在对表插入一条数据的时候,需要自动填充四个字段,对表数据更新操作,需要更新后2个字段。但是如果在每个插入和更新业务逻辑里面, 手动的填充这四个字段,增加了工作量。幸好mybatis-plus有一个自动更新的插件。 实现自动填充功能很简单,只需要实现MetaObjectHandler接口和实现填充逻辑,并把它注入到spring ioc容器中即可。其中下面的代码UserUtils.getCurrentUserWithDefault();即获取当前请求的用户,在权限那一篇文章有讲到过,在这里不再重复;然后加上注解@Component注入到Spring ioc容器里面去。 @Component @Slf4j public class MyMetaObjectHandler

MybatisPlus-常用代码生成器(不生成简单增删改查逻辑代码)

六眼飞鱼酱① 提交于 2020-08-12 06:37:39
引入依赖 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.3.1.tmp</version> </dependency> 添加模板依赖(mybaitsplus必须依赖一个模板freemarker/Velocity等都可以 必须要有) 3选一: <dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity-engine-core</artifactId> <version>2.2</version> </dependency> --- Freemarker: <dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>2.3.30</version> </dependency> --- Beetl: <dependency> <groupId>com.ibeetl</groupId> <artifactId>beetl</artifactId> <version>3.1.6.RELEASE</version> <