java手机号中间四位脱敏方阿飞

动态 未结 0 87
小小草
小小草 LV1 2023年9月23日 23:40 发表
在Java中,可以使用正则表达式和字符串操作来实现手机号中间四位脱敏。以下是一个示例代码: ```java public class PhoneUtils { // 手机号中间四位脱敏 public static String desensitize(String phone) { if (phone == null || phone.length() != 11) { return phone; } return phone.replaceAll("(\\d{3})\\d{4}(\\d{4})", "$1****$2"); } } ``` 以上代码中,`desensitize`方法用于将手机号中间四位脱敏。首先判断手机号是否为11位,如果不是则直接返回原始值。然后使用正则表达式将手机号中间四位替换成`****`,最后返回脱敏后的手机号。 在实际应用中,可以将该方法封装成工具类,方便在其他地方调用。例如,在Spring MVC中,可以通过注入该工具类来对手机号进行脱敏。以下是一个示例代码: ```java import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; @Controller @RequestMapping("/user") public class UserController { private final PhoneUtils phoneUtils; public UserController(PhoneUtils phoneUtils) { this.phoneUtils = phoneUtils; } @GetMapping("/profile") public String userProfile(Model model) { String phone = "13812345678"; // 假设用户手机号为13812345678 String desensitizedPhone = phoneUtils.desensitize(phone); model.addAttribute("phone", desensitizedPhone); return "profile"; } } ``` 以上代码中,`userProfile`方法用于展示用户个人资料页面。首先获取用户手机号,并调用`desensitize`方法对其进行脱敏,然后将脱敏后的手机号添加到模型中,最后返回一个视图名称,用于展示用户个人资料。在前端中,可以使用`${phone}`表达式来显示脱
收藏(0)  分享
相关标签: 智能问答
问题没解决?让AI助手帮你作答 AI助手
0个回复
  • 消灭零回复