面试常见问题-MyBatis插件原理。使用Mybtais插件如何数据脱敏?

面试常见问题-MyBatis插件原理。使用Mybtais插件如何数据脱敏?,第1张

面试常见问题-MyBatis插件原理。使用Mybtais插件如何数据脱敏?
  • 在mybtis中对外提供了4大对象供开发者拦截,
  • 分别是Excutor:查看mybatis的sql执行过程,
  • ParameterHandler修改他的参数,ResultSetHandler拦截返回值,
  • StatementHandler进行分页,
  • 开发者自己定义一个类,实现Interceptor接口,实现intercept方法,在类上通过@Intercepts注解和@Signature选择拦截哪个类中的哪个方法,
  • 比如:@Intercepts(@Signature(type = ResultSetHandler.class, method = “handleResultSets”, args = Statement.class)),然后那自定义拦截器的类配置到mybatis的配置文件中。
  • 在加载mybatis的时候会去在执行到ResultSetHandler的时候生成拦截器器的链,后面去调用会走拦截器
    数据脱敏我们就需要去拦截ResultSetHandler对象修改返回值,在这个里面可以去做数据脱敏处理,可以通过反射获取对象的属性,判断哪些字段需要进行脱敏处理,如果需要脱敏处理,直接通过filed.setAccessibe(true)暴力反问,修改属性值

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5682336.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-17
下一篇2022-12-17

发表评论

登录后才能评论

评论列表(0条)

    保存