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

室内设计效果图报价seo零基础教学

室内设计效果图报价,seo零基础教学,建立网站的步骤及费用,五路居网站建设记录于2025年4月28号晚上--梧州少帅 1. 定义枚举类: public enum DesensitizeType {NAME, EMAIL } 2. 创建自定义注解: 用于标记需要脱敏的字段及其类型。 Retention(RetentionPolicy.RUNTIME) JacksonAnnotationsInside JsonSerialize(using Desen…

记录于2025年4月28号晚上--梧州少帅

1. 定义枚举类:

public enum DesensitizeType {NAME, EMAIL
}

2. 创建自定义注解:

用于标记需要脱敏的字段及其类型。

@Retention(RetentionPolicy.RUNTIME)
@JacksonAnnotationsInside
@JsonSerialize(using = DesensitizeSerializer.class)
public @interface Desensitize {DesensitizeType type();
}

3. 实现自定义序列化器:

根据注解类型应用不同的脱敏规则。

public class DesensitizeSerializer extends JsonSerializer<String> implements ContextualSerializer {private DesensitizeType type;@Overridepublic void serialize(String value, JsonGenerator gen, SerializerProvider serializers) throws IOException {switch (type) {case NAME:gen.writeString(desensitizeName(value));break;case EMAIL:gen.writeString(desensitizeEmail(value));break;default:gen.writeString(value);}}private String desensitizeName(String name) {if (name == null || name.isEmpty()) return "";if (name.length() == 1) return name;return name.charAt(0) + "*".repeat(Math.max(0, name.length() - 1));}private String desensitizeEmail(String email) {if (email == null || !email.contains("@")) return email;String[] parts = email.split("@");String local = parts[0];String domain = parts[1];if (local.length() <= 2) return "***@" + domain;return local.substring(0, 2) + "***@" + domain;}@Overridepublic JsonSerializer<?> createContextual(SerializerProvider prov, BeanProperty property) {Desensitize annotation = property.getAnnotation(Desensitize.class);if (annotation != null) {DesensitizeSerializer serializer = new DesensitizeSerializer();serializer.type = annotation.type();return serializer;}return this;}
}

4. 在DTO中应用注解:

在需要脱敏的字段上添加@Desensitize注解。

public class UserDTO {@Desensitize(type = DesensitizeType.NAME)private String name;@Desensitize(type = DesensitizeType.EMAIL)private String email;// Getters and Setters
}

需要添加的依赖:

<dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.9.5</version>
</dependency>

测试:

public static void main(String[] args) throws JsonProcessingException {ObjectMapper objectMapper = new ObjectMapper();UserDTO build = UserDTO.builder().name("黄成宇").email("huangchengyu1@byd.com").build();String json = objectMapper.writeValueAsString(build);System.out.println(json);}

http://www.cadmedia.cn/news/6592.html

相关文章:

  • 营销型网站策划公司论坛seo网站
  • 重庆省建设厅网站网络优化工程师招聘信息
  • 西安西工大软件园做网站的公司搜索引擎有哪些平台
  • 苍溪网站建设制作2022新闻大事件摘抄
  • 网页传奇游戏攻略长沙seo
  • 柳州市住房和城乡建设局网站soso搜搜
  • 网站宣传与推广的指导思想seo工作职责
  • 企业融资需求怎么写苏州seo关键词优化排名
  • 网站建设要用到编程吗北京网站优化快速排名
  • 2024年北京疫情消息1小时前哪有培训seo
  • 如何做网站流量买卖百度官方网站登录
  • 淘宝网站seo服务百度知道登录入口
  • 武汉洪山做网站推广建站平台
  • 网络建设和维护湛江seo推广外包
  • 云梦网络建站网站建设图片
  • 做网站要学java吗如何把品牌推广出去
  • 公司名称大全二字宁波百度seo点击软件
  • 深圳建设商城网站广东网站seo营销
  • 四川建设厅网站招聘免费的行情网站app软件
  • 山东学生做自我评价的网站企业网站
  • 有哪些做网站的公司模板建站流程
  • 网站开发 模块桔子seo工具
  • 建设部网站工程资质中国联通和腾讯
  • 电子 公司 网站建设教育机构网站
  • 做网站怎么挣钱赚钱谈谈自己对市场营销的理解
  • 武汉新闻重庆seo和网络推广
  • 湖北工程建设总承包有限公司网站北京疫情最新新闻
  • 一元建站亚马逊查关键词搜索量的工具
  • 离石市网站建设公司沈阳网页建站模板
  • 如何设计商务网站汕头网站建设方案外包