1. 前言 在微服务项目中,建议所有接口使用统一的API前缀,多类业务可用不同前缀区分。这样便于Nginx/Openresty等反向代理统一处理,好处如下: 简化配置:统一前缀可减少API代理配置项,降低管理复杂度和出错风险; 便于开发:统一前缀利于为相同业务编写Lua插件,实现诸如鉴权等功能; 保
1. 前言 项目中的TCP连接器需要解码终端设备上传的指令,绝大多数的指令数据字段字段基于","进行分隔,主要使用Java字符串的原生split方法。近期,在优化连接器性能的过程中,对于字符串分割的性能表现产生好奇。 因此基于网上给出的benchmark代码,测试不同编译器下,常见的字符串分割方法的
做过Java后端开发的同学应该都用使用过Springfox和Swagger,但我相信很多同学都对这两个工具的理解和使用都有问题。 Swagger是什么 根据官网的介绍,Swagger是一系列用于Restful API开发的工具,开源的部分包括: OpenAPI Specification:API规范
1.前言 近期看微信支付库,发现其随机数生成器使用的是SecureRandom,并非是经常使用的ThreadLocalRandom,具体代码如下所示: /** 随机串生成工具 */ public class NonceUtil { private NonceUtil() {} priva
1. 前言 近期使用Spring Boot编写了一些简单的工具应用,部署的时候图省事,不想编写开机自启动脚本并且完成Linux主机定时任务配置,因此想着通过Docker compose解决部署问题。 主要需要完成如下步骤: 完成日志配置(指定日志生成路径/app/logs); 创建Docker fi
1. 前言 项目上部署Spring Boot应用至内网环境的时候,发现在调用生成Excel时主机缺失相应字体,又因为内网机器无法访问互联网下载相应字体,导致功能调用失败,为解决此问题,需要在打包Spring Boot镜像时,将需要的字体一并打包。 2. 打包字体 在Linux Docker镜像中生成
1.前言 Emoji表情在通讯场景被广泛使用,最近处理bug单时就遇到了相关问题,在解决问题的过程中重新认识了下Java的字符编码,故形成此文。 String emostring ="😂😍🎉👍"; 上述字符串中包含4个Emoji表情,从直观上我们认为其长度应该为4,但是通过如下代码计算其长度