当前位置: 首页 > news >正文

网站建设的视频教程重庆网站推广 软件

网站建设的视频教程,重庆网站推广 软件,嵌入字体的网站,天河网站建设设计文详细解析在Spring Boot应用中优雅地脱敏敏感信息&#xff0c;如手机号、邮箱、身份证等&#xff0c;使用的是Jackson库中的JsonSerializer。 1. 创建自定义脱敏序列化器 首先&#xff0c;创建一个继承自JsonSerializer<String>的序列化器。以MobileSerializer为例&am…

文详细解析在Spring Boot应用中优雅地脱敏敏感信息,如手机号、邮箱、身份证等,使用的是Jackson库中的JsonSerializer

1. 创建自定义脱敏序列化器

首先,创建一个继承自JsonSerializer<String>的序列化器。以MobileSerializer为例,代码如下:

import cn.hutool.core.util.DesensitizedUtil;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;import java.io.IOException;/*** <p>* 自定义手机序列号器* </p>** @author snogzixian* @since 2023-09-24*/
public class MobileSerializer extends JsonSerializer<String> {/*** 自定义序列化方法,用于对手机号进行脱敏处理并写入JSON生成器。** @param mobile             要序列化的手机号* @param jsonGenerator      JSON生成器,用于写入序列化后的数据* @param serializerProvider 序列化提供者,提供序列化所需的服务* @throws IOException 如果在序列化过程中发生I/O错误*/@Overridepublic void serialize(String mobile, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {// 检查手机号是否为null或者是否是有效的手机号if (mobile == null || !isValidMobile(mobile)) {// 如果手机号无效,直接输出原始手机号jsonGenerator.writeString(mobile);return;}// 调用脱敏工具类对手机号进行脱敏处理String mobileDesensitized = DesensitizedUtil.mobilePhone(mobile);// 将脱敏后的手机号字符串写入到JSON生成器jsonGenerator中jsonGenerator.writeString(mobileDesensitized);}/*** 检查手机号的合法性** @param mobile 手机号* @return 如果手机号合法则返回true,否则返回false*/private boolean isValidMobile(String mobile) {// 在此处添加对手机号合法性的检查逻辑return true;}
}

其中,serialize方法用于处理数据的脱敏逻辑,isValidMobile用于检查数据的合法性。

2. 使用自定义序列化器

在实体类中,使用@JsonSerialize注解指定字段使用自定义序列化器。例如,对于一个用户的手机号,我们在实体类中如下使用:

/*** <p>* 实体类* </p>** @author snogzixian* @since 2023-09-24*/
public class User {@JsonSerialize(using = MobileSerializer.class)private String mobile;// 其他字段和getter、setter
}

3. 扩展性 - 支持多类型数据脱敏

为支持多类型数据(如邮箱、身份证等)脱敏,你可以为每种数据类型创建对应的序列化器类,类似于MobileSerializer

例如,创建一个EmailSerializer处理邮箱脱敏:

public class EmailSerializer extends JsonSerializer<String> {// 实现邮箱的脱敏逻辑
}

在实体类中,对应字段使用@JsonSerialize注解指定使用EmailSerializer

public class User {@JsonSerialize(using = EmailSerializer.class)private String email;// 其他字段和getter、setter
}

http://www.yayakq.cn/news/100151/

相关文章:

  • 网站设计动图怎么建设上海企业网站建设制作
  • 成都学校网站制作注册公司步骤
  • 网络网站建设的意义网上申请公司注册流程
  • 网站开发英文合同信阳网站设计
  • 潮州网站推广教程北京比较好的互联网公司
  • 设计网站printerest浙江网站建设网
  • 怎么做淘宝店网站收录网站开场动画怎么做
  • 找做网站的朋友赤峰网站策划
  • 南宁网站建设醉懂网络企业网站网页设计费用
  • 电商导购网站开发如何建立网站的英文版
  • 中国建设银行贷款网站北京债务优化公司
  • 网站网页设计多少钱做aelogo动效有什么好的网站
  • 平东网站建设网页无法访问如何解决h5
  • 网页设计网站题目页面 菜单 wordpress
  • 桂林市生活网官方网站广州建网站公司
  • 用网站做邮箱吗安阳网红街
  • 电商网站建设分析广州域名企业网站建站哪家好
  • 网站开发微博semi是什么意思
  • 重庆旅游网站建设专做校园购物网站
  • 建设银行官方网站网址wordpress设置用户注册资料
  • 电子科技产品网站建设学院网站建设的目的
  • 国家网站备案iphone8多少钱
  • 网站建站家家具全屋定制
  • 鹤壁专业做网站公司太原建站建设
  • 佛山网站制作系统优秀的网站建设价格
  • 网站推广专家十年乐云seo天津建站网
  • 巴中市网站建设手机网站 qq代码
  • 广州牌具做网站的公司网站建设经营属性
  • sem是什么仪器企业网站seo方案
  • cms建站方案企业网站开发介绍