Spring Boot(六十一):实现接口返回数据脱敏实现
创始人
2025-05-28 15:19:20

1 背景

之前的项目有限敏感信息,当时使用的的是aop对信息进行脱密,下面使用注解的方式进行实现

2 思路

(1)要做成可配置多策略的脱敏操作,要不然一个个接口进行脱敏操作,重复的工作量太多,很显然违背了“多写一行算我输”的程序员规范。

思来想去,定义数据脱敏注解和数据脱敏逻辑的接口, 在返回类上,对需要进行脱敏的属性加上,并指定对应的脱敏策略操作。

(2)接下来我只需要拦截控制器返回的数据,找到带有脱敏注解的属性操作即可,一开始打算用 @ControllerAdvice 去实现,但发现需要自己去反射类获取注解。

当返回对象比较复杂,需要递归去反射,性能一下子就会降低,于是换种思路,我想到平时使用的 @JsonFormat,跟我现在的场景很类似,通过自定义注解跟字段解析器,对字段进行自定义解析,tql。

3 实现

3.1 自定义数据注解,并可以配置数据脱敏策略:

package com.example.demo.annotation;import com.example.demo.datam

相关内容

热门资讯

一分钟明白“皇冠十三水可以开挂... 直接打开搜索微信;【7413232】操作使用教程: 1.亲,实际上皇冠十三水这款游戏是可以开挂的,确...
今日.热议“博乐龙江填大坑其实... 今日.热议“博乐龙江填大坑其实是有挂的”(确实是有挂)【无需打开直接搜索微信【5382285】操作使...
重大通报“美猴王有透视挂吗”(... 您好:美猴王这款游戏可以开挂,确实是有挂的,需要软件加微信【4194432】,很多玩家在美猴王这款游...
今日重大通报“老友集安麻将可以... 今日重大通报“老友集安麻将可以开挂吗”(其实是有挂),确实是有挂的,需要了解加客服微信【483082...
今日重大通报“圣省晃晃麻将可以... 您好:圣省晃晃麻将这款游戏可以开挂,确实是有挂的,需要软件加微信【7563328】,很多玩家在圣省晃...