Mybatis-Plus

springboot+mybatis-plue实现内置的CRUD使用详情

喜欢而已 提交于 2020-08-07 04:46:16
springboot+mybatis-plue实现内置的CRUD使用详情,具体修改删除操作内容后文也有详细说明 mybatis-plus的特性 无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑 损耗小:启动即会自动注入基本CURD,性能基本无损耗,直接面向对象操作 强大的 CRUD操作:内置通用 Mapper、通用Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求 支持 Lambda形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需再担心字段写错 支持主键自动生成:支持多达 4种主键策略(内含分布式唯一 ID 生成器 - Sequence),可自由配置,完美解决主键问题 支持 ActiveRecord 模式:支持ActiveRecord 形式调用,实体类只需继承 Model 类即可进行强大的 CRUD 操作 支持自定义全局通用操作:支持全局通用方法注入( Write once, use anywhere ) 内置代码生成器:采用代码或者Maven 插件可快速生成 Mapper 、 Model 、 Service 、 Controller 层代码,支持模板引擎,更有超多自定义配置等您来使用 内置分页插件:基于 MyBatis 物理分页,开发者无需关心具体操作,配置好插件之后,写分页等同于普通

实战:一键生成前后端代码,Mybatis-Plus代码生成器让我舒服了

丶灬走出姿态 提交于 2020-08-07 02:04:50
实战:一键生成前后端代码,Mybatis-Plus代码生成器让我舒服了 前言 在日常的软件开发中,程序员往往需要花费大量的时间写CRUD,不仅枯燥效率低,而且每个人的代码风格不统一。MyBatis-Plus 代码生成器,通过 AutoGenerator 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 等各个模块及前端页面的代码,极大的提升了开发效率。 项目介绍 本项目将以springboot用演示,前端使用freemaker,数据库持久层用mybatis(考虑到mybatis的使用还是最普遍的,就没有用jpa和mybatisplus),通过Velocity模板引擎配置各模块的文件模板,通过mybatis-plus代码生成器连接mysql,用商品表为例生成各模块的代码和前端页面。(本项目只演示分页查询和导出功能)。 本项目所有代码和脚本都能都文末找到地址。 实战 数据库脚本 创建一张商品表test_goods CREATE TABLE `test_goods` ( `id` bigint(20) DEFAULT NULL COMMENT 'id', `goods_sn` varchar(45) DEFAULT NULL COMMENT '商品编码', `name` varchar(255) DEFAULT NULL COMMENT

跟我学Springboot开发后端管理系统4:数据库连接池Druid和HikariCP

a 夏天 提交于 2020-08-06 04:27:21
上一篇文章主要讲解了如何再Matrix-Web中使用Mybatis-Plus,Mybatis-Plus作为Orm框架,连接数据库需要连接数据库的依赖。WEB 系统高并发环境下,频繁的进行数据库连接操作,造成系统技术瓶颈问题(无效的资源开销),通过为数据库连接为建立一个“缓冲池”。预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从“缓冲池”中取出一个,使用完毕之后再放回去。 数据库连接池有很多,比如c3p0、Druid、Hikari等。大家常用的连接池应该是阿里开源的Druid,Druid不仅是连接池,而且带有监控。在Matrix-Web中,选择的Druid作为数据库连接池。Hikari作为Spring Boot官方推荐的连接池,在这里也讲解一下。 在Spring Boot中使用Druid Druid是阿里开发的一个数据库连接池,在国内比较的流行,具有以下的特性: 可以监控数据库访问性能,Druid内置提供了一个功能强大的StatFilter插件,能够详细统计SQL的执行性能,这对于线上分析数据库访问性能有帮助。 数据库密码加密。直接把数据库密码写在配置文件中,这是不好的行为,容易导致安全问题。DruidDruiver和DruidDataSource都支持PasswordCallback。 SQL执行日志,Druid提供了不同的LogFilter,能够支持Common

如何一眼识别蚂蚁集团身价千万的阿里人

◇◆丶佛笑我妖孽 提交于 2020-08-06 01:19:57
程序员的成长之路 互联网/程序员/技术/资料共享 关注 阅读本文大概需要 3.5 分钟。 来自:BAT 6年前,阿里巴巴集团上市,估值1600亿美元,成为史上最大IPO,诞生了一位中国首富,还有成千上万个千万富豪。 6年后,支付宝母公司蚂蚁集团官宣,启动A+H股上市计划,估值2000亿美元。你们猜,又将诞生多少千万富豪? 从阿里巴巴集团2020财报中看到,全球近12万员工,虽然蚂蚁集团的员工人数没有公布,但可以猜测一下—— 西溪路的Z空间可以容纳8000人,蚂蚁集团还有部分业务分布在其他大厦,保守估计蚂蚁集团员工1w人,假设有40%的蚂蚁员工持股,那就有4000人。 蚂蚁集团每年给员工分配多少期权?最近三年分别是1300w股、1500w股和1560w股,除以4000人,平均每人4000股。 注意,这还是一年的,这样的期权激励,阿里每年都在发生。 事实上,前几年蚂蚁配股出手十分大方,都是8k、1w的给,加上入职给的,五年陈老蚂蚁手上有个2、3w股不是问题。 据说,以目前的公允价推测,蚂蚁上市后股价有望看到400,如果真是这样,那 1w股就是400万,3w股就千万身价了。 也难怪,官宣上市的消息一传出,蚂蚁Z空间整层楼欢呼,是财富自由的声音。 柠檬树上柠檬果,柠檬树下你和我。 今天,就来教大家如何一眼识别蚂蚁集团身价千万的阿里人—— 01 从外表 阿里有两种人,一种是集团的

计算机毕业设计之springboot+vue.js点餐小程序 点餐系统

橙三吉。 提交于 2020-08-05 07:52:05
功能 后台 : 1. 超级管理员(具有该系统所有权限)登录 查看系统所有管理员 操作:可新添加管理员并分配系统已有角色; 可对已有管理员进行信息编辑; 可对除超管外的其他管理员账号禁用/启用(一经禁用便不可登录该系统); 查看系统所有角色 操作:可新添加角色; 可重新编辑角色; 可对已拥有该角色的用户进行授权/变更已有权限; 可对除超管外的其它角色禁用/启用(一经禁用则拥有该角色的管理员不再拥有对该系统资源的访问); 查看所有菜品 操作:可对菜品上下架,及时更新菜品信息; 可添加新菜品; 查看菜品分类 操作:可添加新的菜品类别; 可对菜品类型启用禁用,如果此类型正在使用中则禁用失败; 查看所有订单 操作:可查看所有用户订单及订单详情; 后厨订单显示 查看财务报表.图表 操作:显示各个月份财务总计; 可根据时间查询不同阶段财务总额; 可将财务信息导出到excel表格; 可据图表查看各个月份财务走势; 2. 其它管理员(具有该系统的部分权限)登录 可访问由超管所授权的所有资源; 前台 : 1. 微信小程序登录 操作:可以授权微信ID,获取“拒绝”,“允许"; 可自动获取本微信id头像; 可把查出的数据放入接口; 2. 首页菜品展示 操作:可根据不同类别查看不同菜品 3. 加购物车 操作:登录用户必须扫码开桌后方可加购 加购成功即可下单进行指纹/密码支付 支付成功,订单传送后厨订单显示

小书MybatisPlus第4篇-表格分页与下拉分页查询

自闭症网瘾萝莉.ら 提交于 2020-08-04 19:14:53
本文为mybatis系列文档的第4篇,前三篇请访问下面的网址。 小书MybatisPlus第1篇-整合SpringBoot快速开始增删改查 小书MybatisPlus第2篇-条件构造器的应用及总结 小书MybatisPlus第3篇-自定义SQL 一、让Spring Boot-MybatisPlus支持分页 在已经集成了Mybatis Plus的Spring项目中加入如下分页拦截器的配置,让MybatisPlus支持分页 [@Configuration](https://my.oschina.net/pointdance) public class MybatisPlusConfiguration { //配置分页拦截器 [@Bean](https://my.oschina.net/bean) public PaginationInterceptor paginationInterceptor() { return new PaginationInterceptor(); } } 二、单表查询分页-表格分页 [@Test](https://my.oschina.net/azibug) public void testSelect() { LambdaQueryWrapper<User> query = new LambdaQueryWrapper<>(); query.ge(User

mybatis plus插入数据遇到主键没有默认值的问题

家住魔仙堡 提交于 2020-07-28 19:40:49
一、我在添加的时候,无缘无辜的给我报 java.sql.SQLException: Field 'id' doesn't have a default value 后来了解到 使用 mybatis-plus的insert方法,在底层会默认生成一个Long类型的UUID,这就导致跟数据库里面类型不一致导致错误,我们首先要做的是要把这个默认自增的主键给禁了 主键生成方式类型如下(IdType): AUTO(0, "数据库ID自增"), INPUT(1, "用户输入ID"), ID_WORKER(2, "全局唯一ID"), UUID(3, "全局唯一ID"), NONE(4, "该类型为未设置主键类型"), ID_WORKER_STR(5, "字符串全局唯一ID"); 我们可以设置主键的生成方式 @TableId(value = "id",type = IdType.INPUT) 这种方式是主键手动输入 做完以上操作,再去新增就大功告成啦~ 来源: oschina 链接: https://my.oschina.net/u/3459265/blog/4332467

小书MybatisPlus第5篇-Active Record模式精讲

别说谁变了你拦得住时间么 提交于 2020-07-28 17:18:49
本文为一个系列中的第五节,前四节访问如下地址: 小书MybatisPlus第1篇-整合SpringBoot快速开始增删改查 小书MybatisPlus第2篇-条件构造器的应用及总结 小书MybatisPlus第3篇-自定义SQL 小书MybatisPlus第4篇-表格分页与下拉分页查询 Active Record 适合非常简单的领域需求,尤其在领域模型和数据库模型十分相似的情况下。如果遇到更加复杂的领域模型结构(例如用到继承、策略的领域模型),往往需要使用分离数据源的领域模型,结合 Data Mapper (数据映射器)使用。 具体到使用层面,我们之前章节讲过使用Data Mapper 做数据的持久层操作。 User user = new User(); user.setName("字母哥"); user.setAge(18); userMapper.insert(user); //Mybatis Mapper模式 现在我们使用ActiveRecord模式,用法如下,注意二者的区别 User user = new User(); user.setName("zimug"); user.setAge(18); user.insert(); //ActiveRecord模式 一、使ActiveRecord模式生效 首先:需要让数据库表对应的数据持久层实体类。集成自Model<User>

spring cloud+spring boot 微服务 b2b2c b2c 电子商务

给你一囗甜甜゛ 提交于 2020-07-28 14:31:49
涉及平台:平台管理(包含自营店面)、商家端(PC端、手机端)、买家平台(PC端、H5/公众号、小程序、APP端(IOS/Android)、业务微服务 核心架构:Spring Cloud、Spring Boot、Mybatis Plus、Redis 前端框架:VUE、Bootstrap/H5/CSS3、IOS、Android、小程序 核心思想:分布式、微服务、云架构、模块化、原子化、持续集成、集群部署 开发模式:代码生成工具、驱动式开发模式、提高开发效率 社交模式:VR全景虚拟现实线上线下、直播带货、短视频带货、分销分润、代跑腿配送等 JDK/数据库:JDK 1.8+/MYSQL 5.6+ 源碼來源 来源: oschina 链接: https://my.oschina.net/u/3613013/blog/4312925