WebFilter 路径匹配模式不生效

需求描述

在登录授权时,需要从 header 中获取 token 进行鉴权,通常使用过滤器处理指定的访问请求,但在使用 @WebFilter 注解时,发现其路径匹配模式不生效,即 url、urlPatterns 属性配置后,拦截了所有请求。

Bootstrap 多环境配置

需求描述

由于在 bootstrap.yml 文件中配置 CI/CD 的环境变量,而本地开发时并没有相关环境,所以需要手动切换其属性,在提交代码时,需要关注该配置文件是否会与云端冲突,极其浪费精力。
因此需要能够屏蔽本地与云端配置差异的手段。

同时处理 XML 和 JSON 接口

需求描述

出入参同时支持 XML 和 JSON 格式。

字段类型不一致的问题分析

问题描述

使用 mybatis 的结果集自动映射,发生了实体属性类型与表字段类型不一致;但实际上,相关实体的属性与表结构完全匹配。
关于实体类,是使用代码生成读取表结构生成的,但使用了公共父类,其中抽取出了一些通用的字段(包括主键、创建时间等)。

JetCache 使用

需求描述

解决方案

Feign 自定义配置

需求描述

在微服务项目中,需要请求第三方接口,通常情况下我们使用 spring 的 restTemplate。但接触到 feign 之后,这种将远程方法伪装成本地接口,屏蔽请求感知的方式,无疑更优雅。
但对于 oauth 认证,需要配置请求头,即设置 feign 的自定义配置。

实现 Jar 多版本共存

需求描述

现需要实现同时共存两个版本的 SDK,其中存在限定名完全相同的类,但两个类的方法并不完全相同,导致 JVM 在加载时无法按预期的调用类方法。

打包外部依赖

需求描述

由于公司 SDK 没有正式上线,只能提供 jar,需要手动添加依赖,在使用 maven 打包的时候提示找不到符号。

LocalDate 解析年月字符串

需求描述

使用 LocalDate 解析 yyyy-MM 格式的字符串时异常:

发布到私有仓库

需求描述

需要将工具类发布到公司的私有仓库中,为了避免每次手动在页面上操作,此处借助 maven 命令行和 idea 启动项实现一键发布。