数据脱敏组件 quick-transform 1.1.0版本更新

数据脱敏组件 quick-transform 1.1.0版本更新

介绍

quick-transform-spring-boot-starter是一款基于SpringBoot的返回值数据处理组件,主要目的是用于数据脱敏等返回数据额外处理操作
1.该组件提供默认的注解和对应的处理策略利用AOP,可以便捷的对一些常见敏感数据进行数据修改操作

2.允许用户添加自定义的处理策略对方法返回值进行便携加工

3.项目地址:
码云: 查看gitee仓库
github: 查看github仓库

4.项目完整介绍: 完整介绍

安装教程

  1. 该组件已提交到中央仓库,直接引入下面依赖即可

    
         com.github.Silwings-git
         quick-transform-spring-boot-starter
         1.1.0
    
    

1.1.0版本新增原始数据备份

  1. 原始数据备份默认是关闭状态,开启数据备份后,会将数据转换之前的原始数据备份到线程中(基于ThreadLocal),在之后需要使用原始数据时即可通过工具类获取.
  2. 开启方式:
    1. 全局配置: 在配置文件中添加transform.open-backups,接收布尔类型,true表示开启全局原始数据备份.
    2. 注解配置: @MethodTransform,@Transform,@DataTransform及其语义化注解中均包含backups字段,默认为FOLLOW,表示跟随全局配置.如果需要开启数据备份,设置为OPEN.
    3. 优先级说明:
      1. 注解配置优先级高于全局配置,无论全局如何,只要注解上设置为OPEN,就会执行原始数据备份.注解默认跟随全局配置
      2. 与@MethodTransform相同,当原始数据是实体类,而方法与实体类同时声明了备份设置时,是否备份以方法上的配置为准,如果方法没有配置,才以实体类上的@Transform为准.
  3. 获取/删除备份数据
    1. 数据转换后会返回一个增强后的新数据,需要使用该新数据对象来获取原始数据
    2. 调用工具类TransformUtils的getBackup(T res)即可获取原始数据,res为数据转换后获取到的新数据实例
    3. 调用工具类TransformUtils的removeBackup(T res)即可删除指定数据的原始数据,res为数据转换后获取到的新数据实例
    4. 调用工具类TransformUtils的removeAllBackup()即可删除全部备份数据
  4. 支持的数据类型
    1. 目前只支持基本数据类型(含包装类),String和实体类实例的数据备份,集合数组等类型暂不支持,如果对这些数据类型设置为备份,会在日志提示相关信息,不会导致程序终止,另外也无法获取到备份数据
    2. 备份数据的存储容器是HashMap,所以当存入相同key时,旧的数据会被覆盖,届时会有相关日志提示.
  5. 其他说明
    1. 数据备份是以进入策略类transform(T t)方法的实例为单位的,所以在进行数据备份时是将T t进行备份,实体类中字段上声明的注解的备份配置不会有任何效果
    2. 推荐使用注解的备份配置而不是全局配置,只在需要使用原始数据时才对数据进行备份,避免不必要的开销
    3. 备份数据是存储于线程中的,如果你的线程是长时间存在不会自动关闭的,可以使用TransformUtils相关的方法删除数据,防止出现内存溢出问题

你可能感兴趣的:(数据脱敏组件 quick-transform 1.1.0版本更新)