logo头像

From zero to HERO

数据库脚本工单管理工具Yearning

数据库脚本工单管理工具Yearning

平常我们线上执行的SQL脚本都是很粗犷的。呼叫一下DBA或者运维,把脚本发过去,然后告诉他在哪个环境执行。然后双方沟通不畅,测试环境的脚本执行到生产了!脚本写的有问题执行错了却没有回滚脚本!或者...

如何自动填充SQL语句中的公共字段

如何自动填充SQL语句中的公共字段

1. 前言我们在设计数据库的时候一定会带上新增、更新的时间、操作者等审计信息。 之所以带这些信息是因为假如有一天公司的数据库被人为删了,尽管可能有数据库备份可以恢复数据。但是我们仍然需要追踪到这...

自己动手编写一个Mybatis插件:Mybatis脱敏插件

自己动手编写一个Mybatis插件:Mybatis脱敏插件

1. 前言在日常开发中,身份证号、手机号、卡号、客户号等个人信息都需要进行数据脱敏。否则容易造成个人隐私泄露,客户资料泄露,给不法分子可乘之机。但是数据脱敏不是把敏感信息隐藏起来,而是看起来像真...

Spring Data R2DBC响应式操作MySQL

Spring Data R2DBC响应式操作MySQL

1. 前言在使用R2DBC操作MySQL数据库 一文中初步介绍了r2dbc-mysql的使用。由于借助DatabaseClient`操作MySQL,过于初级和底层,不利于开发。今天就利用Spri...

使用R2DBC操作MySQL数据库

使用R2DBC操作MySQL数据库

1. 简介三月份已经介绍过R2DBC,它是一种异步的、非阻塞的关系式数据库连接规范。尽管一些NoSQL数据库供应商为其数据库提供了反应式数据库客户端,但对于大多数项目而言,迁移到NoSQL并不是...

一对多分页的SQL应该怎么写?

一对多分页的SQL应该怎么写?

1. 前言MySQL一对多的数据分页是非常常见的需求,比如我们要查询商品和商品的图片信息。但是很多人会在这里遇到分页的误区,得到不正确的结果。今天就来分析并解决这个问题。 2. 问题分析我们先创...

Docker容器启动时初始化Mysql数据库

Docker容器启动时初始化Mysql数据库

1. 前言Docker在开发中使用的越来越多了,最近搞了一个Spring Boot应用,为了方便部署将Mysql也放在Docker中运行。那么怎么初始化 SQL脚本以及数据呢? 我这里有两个传统...

Mybatis结果映射器resultMap的基本用法

Mybatis结果映射器resultMap的基本用法

1. 前言 resultMap 元素是 MyBatis 中最重要最强大的元素。它可以让你从 90% 的 JDBC ResultSets 数据提取代码中解放出来,并在一些情形下允许你进行一些 JD...