51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

maven

三款新插件上线, API 鉴权, API 网关, Swagger URL 同步文档!

三款新插件上线, API 鉴权, API 网关, Swagger URL 同步文档!

厉飞雨 阅读(43) 评论(0) 赞(1)

除了有近期很火的 Chatgpt 插件,最近我们上线了 3 款插件: 1. API 开源网关,帮助你将配置一键发布到网关; 2. API 鉴权,Basic Auth 是基于 HTTP 的安全认证机制,会在请求头部加入 Authorization 字段; 3. Swagger URL ,支持从 Swagger URL 增量同步 API 数据到 Postcat 。 在右上角插件...

Netty零拷贝原理详解!

Netty零拷贝原理详解!

厉飞雨 阅读(47) 评论(0) 赞(1)

你好,我是**猿java**。 在传统的I/O操作中,数据在内核和用户空间之间频繁拷贝会导致系统资源的浪费和性能瓶颈,为了解决这些问题,零拷贝技术应运而生。Netty 作为一个高性能的 Java网络框架,在其设计中充分利用了零拷贝技术,以提升数据传输效率。这篇文章,我们将深入探讨 Netty的零拷贝机制,包括其工作原理、实现方式以及相关源码的分析。 1. 什么是零拷贝? {...

【WEB 系列】SpirngBoot 整合 Swagger

【WEB 系列】SpirngBoot 整合 Swagger

厉飞雨 阅读(38) 评论(0) 赞(1)

背景 {#背景} -------- 由于 Spring Boot 能够快速开发、便捷部署等特性,相信有很大一部分 Spring Boot 的用户会用来构建 RESTful API。而我们构建 RESTful API 的目的通常都是由于多终端的原因,这些终端会共用很多底层业务逻辑,因此我们会抽象出这样一层来同时服务于多个移动端或者 Web 前端。 ​ 这样一来,我们的 RES...

Swagger 与 HATEOAS 的区别

Swagger 与 HATEOAS 的区别

厉飞雨 阅读(39) 评论(0) 赞(2)

1、概览 {#1概览} ----------- 设计 REST API 通常使用两种流行的方法:*Swagger* 和 *HATEOAS*。这两种方法都旨在使 API 更友好、更易懂,但遵循不同的范式。 本文将带你了解 *Swagger* 和 *HATEOAS* 的区别以及一些常见用例。 2、Swagger 是什么? {#2swagger-是什么} -----------...

mybatisplus转义模糊查询

mybatisplus转义模糊查询

厉飞雨 阅读(82) 评论(0) 赞(1)

mybatisplus转义模糊查询 背景: MySQL 模糊查询时,如果前端传了特殊字符而后端没有对特殊字符转义的话,特殊字符就会被识别为SQL中的特殊字符,发挥其特殊字符的含义,如占位符'_'、'%'等,如需MySQL将这些字符识别为普通字符,则需要在其前面加上转义符,默认是反斜杠,即变为'_'、'%'即可。 ...

带你了解 MyBatis 插件设计演化过程

带你了解 MyBatis 插件设计演化过程

厉飞雨 阅读(147) 评论(0) 赞(2)

之前写过一篇 [《Mybatis 插件实现动态设置参数》](https://51tbox.com/) 文章,介绍了 Mybatis 插件的扩展和使用。笔者在空闲时间梳理了一下 MyBatis 插件的工作原理,在此记录和分享其插件功能代码的演化过程。 一、原始代码 {#一、原始代码} ---------------- 我们简略 MyBatis 执行 SQL 的步骤,下边的原始...

Mybatis 插件实现动态设置参数

Mybatis 插件实现动态设置参数

厉飞雨 阅读(319) 评论(0) 赞(1)

一、背景 {#一、背景} ------------ 笔者在搭建架构时,通常会利用泛型对 dao 层 和 service 层公共的代码(增删改)进行抽取,但是遇到一个尴尬的问题,就是实体类中的时间设置。 解决办法有很多,简单的方法就是在 web 层接收实体类参数后直接设置时间即可。但是,web 层理论上只是调用 service 层代码而已,设置时间的操作应该放在 servic...

Mybatis-Plus 动态表名的使用

Mybatis-Plus 动态表名的使用

厉飞雨 阅读(347) 评论(0) 赞(2)

> Mybatis-Plus版本:3.4.3.4 需求:在数据库中存在多个表结构相同,表名不同数据表 , 现需根据条件判断并选择操作哪一个数据表。在不使用动态表明的情况下, 一个表对应一个实体类,实体类又需要对应不同的Mapper、Service,明显增加了很多代码量。如果使用动态表名的方式,则只需要一个实体类就可以操作多张表,减少工作量,提升效率。 假设存在两个数据...