返回顶部
首页 > 资讯 > 后端开发 > JAVA >java—手机号脱敏
  • 548
分享到

java—手机号脱敏

javajvm开发语言 2023-09-06 20:09:19 548人浏览 泡泡鱼
摘要

Java中手机号脱敏是指将真实手机号码中的一部分数字用特定字符替换,以保护用户的个人信息。通常,手机号码脱敏会将手机号的中间几位或者最后几位替换成特定字符,例如用“*”、"X"或者其他随意选择的字符来

Java中手机号脱敏是指将真实手机号码中的一部分数字用特定字符替换,以保护用户的个人信息。通常,手机号码脱敏会将手机号的中间几位或者最后几位替换成特定字符,例如用“*”、"X"或者其他随意选择的字符来代替。

手机号脱敏的目的是防止用户个人信息外泄。在互联网应用中,需要很多场景获取用户的手机号,例如注册、登录、找回密码等操作,这些操作都需要输入手机号进行验证。如果应用程序没有对用户手机号进行脱敏或者其他保护措施,存在泄漏用户手机号的风险,这种风险可能导致用户个人权益的损失。

使用Java实现手机号脱敏可以灵活地适用于各种应用场景和需求,具体实现方法可以根据实际情况选择。

手机号脱敏方法

字符串替换法

通过字符串的替换方法,将手机号码中位数为3至7的数字替换为星号,即可实现手机号的脱敏。

String mobile = "13812345678";String result = mobile.replaceAll("(\\d{3})\\d{4}(\\d{4})", "$1****$2");System.out.println(result); // 输出:138****5678

StringBuilder法

使用StringBuilder来构建新的脱敏手机号,可以有效减少内存占用。

String mobile = "13812345678";StringBuilder sb = new StringBuilder(mobile);sb.replace(3, 7, "****");String result = sb.toString();System.out.println(result); // 输出:138****5678

commons-lang3

在Apache Commons Lang3工具类库中,提供了StringUtils类,其中有一个方法叫做hide方法可以实现手机号码的脱敏。

import org.apache.commons.lang3.StringUtils;String mobile = "13812345678";String result = StringUtils.overlay(mobile, "****", 3, 7);System.out.println(result); // 输出:138****5678

lombok

在Lombok框架中,提供了一个注解@Mask可以用来进行数据脱敏操作。可以通过使用lombok的@Data注解和@Mask注解来实现实体类中某些属性的脱敏操作。

import lombok.Data;import lombok.experimental.Accessors;import com.alibaba.fastJSON.annotation.jsONField;import com.alibaba.fastjson.serializer.ToStringSerializer;import com.alibaba.fastjson.serializer.JSONSerializer;@Data@Accessors(chain = true)public class User {    private Long id;    private String name;    @JSONField(serializeUsing = ToStringSerializer.class) // fastjson对Long类型转为String    @Mask(prefixNoMaskLen=3, suffixNoMaskLen=4, mask = "*")  // 加这个注解    private Long mobile;}

来源地址:https://blog.csdn.net/l_010/article/details/131324132

--结束END--

本文标题: java—手机号脱敏

本文链接: https://lsjlt.com/news/397477.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • java—手机号脱敏
    Java中手机号脱敏是指将真实手机号码中的一部分数字用特定字符替换,以保护用户的个人信息。通常,手机号码脱敏会将手机号的中间几位或者最后几位替换成特定字符,例如用“*”、"X"或者其他随意选择的字符来...
    99+
    2023-09-06
    java jvm 开发语言
  • Java 实现数据脱敏的详细讲解
    数据脱敏是一种数据保护技术,它通过对敏感数据进行修改或替换,使得数据无法被识别或关联到个人身份,从而保护个人隐私。在Java中,可以通过各种技术来实现数据脱敏,本文将详细讲解Java实现数据脱敏的方法...
    99+
    2023-09-07
    java 正则表达式 开发语言
  • MYSQL(电话号码,身份证)数据脱敏的实现
    一、数据脱敏解释 在日常开发需求中会经常遇到数据脱敏处理,比如身份证号、手机号,需要使用*进行部分替换显示。这样能使敏感隐私信息在一定程度上得到保护。那么什么是数据脱敏呢? 在涉及客户安全数据或者一些商业性敏感数据...
    99+
    2022-05-28
    MYSQL 数据脱敏 MYSQL 电话号码脱敏 MYSQL 身份证脱敏
  • Java利用Jackson序列化实现数据脱敏
    几天前使用了Jackson对数据的自定义序列化。突发灵感,利用此方法来简单实现接口返回数据脱敏,故写此文记录。 核心思想是利用Jackson的StdSerializer,@JsonS...
    99+
    2024-04-02
  • Java怎么用Jackson序列化实现数据脱敏
    这篇“Java怎么用Jackson序列化实现数据脱敏”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Java怎么用Jackso...
    99+
    2023-07-05
  • Java利用Jackson序列化实现数据脱敏详解
    目录1.背景2.目标3.主要实现3.1基于Jackson的自定义脱敏序列化实现3.2定义脱敏接口、以及工厂实现3.3常用的脱敏器实现3.4注解定义3.5定义脱敏符号4.使用样例&am...
    99+
    2023-05-13
    Java Jackson序列化实现数据脱敏 Java Jackson序列化 Java 数据脱敏
  • java随机生成姓名,身份证号,手机号
    import cn.hutool.core.date.DateTime;import cn.hutool.core.date.DateUtil;import cn.hutool.core.util.R...
    99+
    2023-10-04
    java
  • Java怎么通过注解实现接口输出时数据脱敏
    小编给大家分享一下Java怎么通过注解实现接口输出时数据脱敏,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Java注解实现接口输出数据脱敏在后台管理中,对于手机号...
    99+
    2023-06-22
  • Java 如何通过注解实现接口输出时数据脱敏
    目录Java注解实现接口输出数据脱敏先声明了一个注解我们目前只支持对手机号然后我们需要实现注解的拦截功能我对默认声明和脱敏名称和手机号进行了测试Java注解的字段脱敏处理定义需要脱敏...
    99+
    2024-04-02
  • Java正则替换手机号代码实例
    在日常生活中,我们经常会遇到将一个手机号的4-7位字符串用正则表达式替换为为星号“*”。这是出于对安全性和保护客户隐私的考虑将程序设计成这样的。下面我们就来看看具体代码。package Test0914;public class Mobil...
    99+
    2023-05-31
    java 正则表达式 ava
  • python手机号正则
    手机号正则:((13[0-9]|15[0|3|6|7|8|9]|18[8|9])\d{8})     ---移动,联通全段...
    99+
    2023-01-31
    正则 手机号 python
  • Android 手机获取手机号实现方法
    最近做到一个项目,需要获取手机号。项目中使用的手机卡为电信卡,那么就以此为例吧。 网上不符合需求的方法 Google了一下,网上的做法如下: //获取手机号码 Teleph...
    99+
    2022-06-06
    方法 手机 Android
  • Java随机生成姓名,手机号,住址代码示例
    这篇文章主要是关于Java随机生成姓名,手机号,住址的代码,你要是问我有什么用,我也不知道,纯粹练习吧。随机生成测试数据import java.util.HashMap;import java.util.Map;public class R...
    99+
    2023-05-30
    java 基础 随机生成
  • php手机号如何设置星号
    这篇文章主要讲解了“php手机号如何设置星号”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php手机号如何设置星号”吧!首先,我们需要了解手机号的格式。在中国,手机号的格式为 11 位数字,...
    99+
    2023-07-05
  • 亚马逊子账号和主账号手机号
    1. 什么是亚马逊子账号和主账号? 在亚马逊平台上,主账号是指注册亚马逊账号的用户,而子账号则是由主账号创建的附属账号。主账号可以创建多个子账号,并授予不同的权限和访问级别。子账号可以用于管理亚马逊卖家中心、亚马逊广告、亚马逊物流等业务。...
    99+
    2023-10-27
    账号 亚马逊 手机号
  • Android手机号注册、绑定手机号获取短信验证码实例
    本文写了一个常见的功能——手机app中注册或绑定手机号的获取验证码的功能,也就是短信验证功能   具体效果就是,你在注册界面填写手机号,点击获取验证码按钮,---然后会收到验证...
    99+
    2022-06-06
    验证码 短信验证码 Android
  • python 正则匹配手机号
    import rephone = str(input('请输入手机号:'))# b = str(12345678912)t = re.compile(r'^1(3\d|4[4-9]|5[0-35-9]|6[67]|7[013-8]|8[0...
    99+
    2023-01-31
    正则 手机号 python
  • 注意:小程序获取手机号要收费了——手机号快速验证
    目录 收费说明手机号快速验证组件手机号实时验证组件付费管理修改建议 收费说明 自2023年8月26日起,小程序获取手机号组件将需要付费使用。 手机号快速验证组件 https://developers.weixin....
    99+
    2023-08-16
    微信
  • 浅析Android手机卫士保存手机安全号码
    推荐阅读: 浅析Android手机卫士sim卡绑定 深入浅析Android手机卫士保存密码时进行md5加密 详解Android 手机卫士设置向导页面 浅析Android手机卫士...
    99+
    2022-06-06
    Android
  • javascript如何验证手机号码
    这篇文章主要介绍了javascript如何验证手机号码,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 javas...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作