我为什么不喜欢MyBatis-Plus

Categories:
我个人不喜欢MyBatis-Plus。 我觉得里面的很多设计都不好。挑2个典型的来说 1.代码生成器 程序是用来解决重复的,不是用来制造重复的。 你

闲聊Java枚举的实际使用

Categories:
方式一姑且叫它原生枚举。 public enum Gender { MALE,FEMALE,OTHER } 方式二因被广大程序员普遍使用,暂且叫它通用枚举(mybatis-plus也这样叫)。 public enum Gender { MALE(1, "Male"), FEMALE(2, "Female"), OTHER(3, "Other");

令牌桶与漏桶

Categories:
令牌桶和漏桶是常用的流量整形算法,具体来说,它们可以限制数据传输的速率,避免网络拥塞和资源浪费。 两者的使用场景和实现机制有所不同。 令牌桶 令牌

摸鱼与摆烂

Categories:
近两年经济形势不好,公司内也比较动荡。 躺平、摸鱼、摆烂,是平时比较常见的词语了。 前两天脑子突然莫名涌起一些想法,稍加整理记录下来。 何为摸鱼 我

闲聊null==a

Categories:
故事 代码评审的时候,是不是还会看到有小伙伴写下null == a这样的代码。 有时心血来潮,我会问一句,为什么这样写? 如果他回答里有防止空指针的话,

闲聊文件存储的设计

Categories:
故事 文件上传(如图片)等几乎是每个项目的标配了。 不管用不用第三方存储,相信不少团队都会针对文件上传、下载单独封装一个服务。 这里面的细节设计就

MyBatis-Plus里糟糕的IService设计

Categories:
我实在搞不懂,在已经有了BaseMapper后,为什么还要再整出一个 IService ? 它的出现,令很多人本就困惑的 Service 和 Dao/Mapper 的模糊的边界,更加混乱。

不该用的代码生成器

Categories:
在十几年前我还在上大学学编程的时候,就已经诞生了各种各样的代码生成器。 现在2023年了,各种代码生成器依然大行其道。 读取数据库表结构并生成相

本末倒置之规范

Categories:
故事 在一个项目里看到一个奇怪的“规范”。 如果需要用到缓存,必须将这个Service再包一层CacheService。 举一个不符合该“规范”的

我讨厌http状态码一律200

Categories:
昨晚在知乎偶然刷到个月经贴(月月有人问,年年有人愁) 为什么那么多公司做前后端分离项目后端响应的 HTTP 状态一律 200? 赞同一律200的一些观点虽然

不好的编程习惯之列表保存

Categories:
场景 相信大家工作中应该都有遇到过表单内包含列表数据的情况。如下图,一个出差申请单里同行人员是可以填写多行的。 首次保存是新增场景,直接inse

面向UI编程?

Categories:
背景 前两天团队内在做数据库设计评审,其中有个数据库表对应的UI类似下面: 分区 A B C 客厅 √ √ √ 厨房 √ √ 餐厅 √ √ 次卧 √ 天台 √ √ 其中 ABC是同一个

生不逢时的vo、po、dto

Categories:
案例 某项目采用微服务架构,将系统切分成大量微服务,服务间通过feign调用。 为了方便调用方,无需多个调用方各自去生成客户端代码,API提供方