摘要:常用工具類封裝方法注釋銀行卡號脫敏名字脫敏規則,張三豐,脫敏為豐對手機號進行脫敏對身份證號進行脫敏元轉為無小數點的分
import org.apache.commons.lang.StringUtils;import java.math.BigDecimal;public class CommonUtil { public static String safeToString(Object value, String defaultValue) { if (value != null) { return StringUtils.trim(String.valueOf(value)); } return defaultValue; } public static Integer safeToInteger (Object obj, Integer defaultValue) { if (obj != null) { return Integer.parseInt(String.valueOf(obj)); } return defaultValue; } /** * 方法注釋: 銀行卡號脫敏 * @return */ public static String getHideCardNo(String cardNo){ if (StringUtils.isNotBlank(cardNo)) { StringBuffer cardBuffer = new StringBuffer(); char[] card = cardNo.toCharArray(); if (card.length > 8 && card.length <= 12) { card[card.length - 5] = "*"; card[card.length - 6] = "*"; card[card.length - 7] = "*"; card[card.length - 8] = "*"; } if (card.length > 12) { for (int i = 5; i <= 12; i++) { card[card.length - i] = "*"; } } int head = card.length%4 + 4; for (int i = 0; i < head; i++) { cardBuffer.append(card[i]); } cardBuffer.append(""); for (int i = 0; (i + head)< card.length; i++) { cardBuffer.append(card[i + head]); if ((i+1)%4 == 0) { cardBuffer.append(""); } } return cardBuffer.toString().trim(); } return cardNo; } /** * 名字脫敏 * 規則,張三豐,脫敏為:**豐 */ public static String nameDesensitization(String name){ if(name==null || name.isEmpty()){ return ""; } String myName = null; char[] chars = name.toCharArray(); if(chars.length==1){ myName=name; } if(chars.length==2){ myName=name.replace(name.substring(0,1), "*"); } if(chars.length>2){ myName=name.replaceAll(name.substring(0, chars.length-1), "*"); } return myName; } /** * 對手機號進行脫敏 * @param phone * @return */ public static String getHidePhone (String phone) { if (StringUtils.isNotBlank(phone)) { phone = phone.replaceAll("(^//d{3})//d.*(//d{4})", "$1****$2"); } return phone; } /** * 對身份證號進行脫敏 * @param idNumber * @return */ public static String desensitizedIdNumber(String idNumber){ if (StringUtils.isNotBlank(idNumber)) { if (idNumber.length() == 15){ idNumber = idNumber.replaceAll("(//w{3})//w*(//w{4})", "$1********$2"); } if (idNumber.length() == 18){ idNumber = idNumber.replaceAll("(//w{3})//w*(//w{4})", "$1***********$2"); } } return idNumber; } /** * 元轉為無小數點的分 * * @param price * @return */ public static BigDecimal yuan2Fen(BigDecimal price) { return new BigDecimal(price.multiply(new BigDecimal("100")).longValue()); } public static void main(String[] args) { String idNumber = desensitizedIdNumber("421202199805060221"); System.out.println(idNumber); }}
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/121608.html
摘要:打印字符串我在人民廣場吃著炸雞打印字符串模板我在吃著炸雞人民廣場我在人民廣場吃著炸雞打印數組日志工具封裝的日志工廠兼容了各大日志框架,使用起來也非常簡便。 前言 無...
摘要:不用自己來創建,而是通過池來獲取對象使用完后,調用的方法也不會真的關閉,而是把歸還給池連接池技術可以完成對象的再次利用接口為數據庫連接池提供了公共的接口各個廠商需要讓自己的連接池實現這個接口。 1.DButils工具類的介紹個三個核心類 A: 概述 DBUtils是java編程中的數據庫操作實用工具,小巧簡單實用。 DBUtils封裝了對JDBC的操作,簡化了JDBC操作,可以少...
摘要:所以,我實現了一個稱為的類來應用反射。現在流行的語言大都支持反射。這組內省主要是針對類進行操作的,能夠獲取類的屬性信息。可以看到,通過的內省機制,解決了的最關鍵的問題。在封裝反射的時候,會充分考慮到各種情況。 BeanMap 學習具體的技術工具的好辦法就是些Demo、造輪子。所以,我實現了一個稱為BeanMap的類來應用java反射API。 這個BeanMap的功能是將一個Bean包裝...
摘要:因為通常把不使用修飾的成員變量和方法也稱為實例變量實例方法。形參個數可變的方法允許定義形參個數可變的參數,從而允許為方法指定數量不確定的形參。方法返回值類型修飾符等,與方法重載沒有任何關系。 類和對象 定義類 面向對象的程序設計過程中有兩個重要概念:類(class)和對象(object,也被稱為實例,instance),其中類是某一批對象的抽象,可以把類理解成某種概念;對象才是一個具體...
閱讀 3359·2021-09-30 09:47
閱讀 2742·2021-08-18 10:22
閱讀 2527·2021-08-16 10:49
閱讀 2893·2019-08-30 15:53
閱讀 2738·2019-08-29 16:14
閱讀 3190·2019-08-28 18:18
閱讀 3236·2019-08-26 13:21
閱讀 794·2019-08-26 12:02