「 SPRINGBOOT 」 九月 01, 2021
SpringBoot --- Jackson TypeReference 动态定义泛型类型
文章字数 1.7k 阅读约需 2 mins.
说明
jackson 中将 json 转为 Java 复杂对象一般会使用 new TypeReference<List
这种方式有 2 个缺点
- 会不符合一些代码检测规范,比如 spotbugs, 会报出
SIC_INNER_SHOULD_BE_STATIC_ANON
的规范检查问题 - 无法动态的指定泛型类型
解决方式
使用 TypeFactory
类中的 constructParametricType
方法来解决泛型问题
使用示例
public class...
查看全文
「 SPRINGBOOT 」 七月 15, 2021
SpringBoot --- 使用动态多数据源来解决 ShardingSphere jdbc 接管 SpringBoot 全部数据源的问题
文章字数 11k 阅读约需 10 mins.
说明
Spring Boot 项目使用 ShardingSphere-JDBC,默认情况下会接管配置的全部数据源,这会导致一些问题
比如,所有的 sql 执行都会走 ShardingSphere 的分库或者分别的逻辑判断
最重要的是,ShardingSphere 不支持的 SQL 会直接报错
比如: https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/unsupported-items...
「 SPRINGBOOT 」 二月 18, 2021
重剑无锋,大巧不工 SpringBoot --- Jackson 关于日期时间的注解
文章字数 650 阅读约需 1 mins.
说明
@JsonFormat(pattern = “yyyy-MM-dd HH:mm:ss”) : 后端 =>前端的转换
@DateTimeFormat(pattern = “yyyy-MM-dd’T’HH:mm:ss”) : 前端 => 后端的转换
@JsonDeserialize(using = LocalDateTimeDeserializer.class) : jackson 反序列化
@JsonSerialize(using = LocalDateTimeSerializer.class...