写在前面

下午没事, 看一下同事写的脱敏白名单管理功能. 所谓的脱敏就是将页面中查询出的信息列表当中的身份证号及手机号等关键信息部分用*号代替.该功能主要思路是新增一个页面用于配置哪些页面以及页面中哪些字段需要加入脱敏管理. 不上图的穷b叨叨就是耍流氓.

以手机号为例, 大致思路就是在需要脱敏显示关键信息的页面初始化时判断该页面的手机号是否启用了脱敏, 如果启用了则将手机号的值中间5位用*号代替. 未启用则正常显示.

关键步骤(基于jeecg开发平台3.7版本,formatterjs是自定义js方法)

1.jsp

引入判断是否启用脱敏的js, 页面初始化的执行方法

js部分

    var phoneNoFlag;
$(function () {
//检查手机号是否脱敏
phoneNoFlag = isTuoMin('managerPhone','cEquipmentInfoController',false);
}); //手机号码脱敏显示
function changePhNoStyle(value, row, index) {
var phNoLen = value.length;
if (phNoLen != 11) {
return value;//格式不准确,不脱敏
} else {
if (phoneNoFlag) {
return value.substr(0, 3) + "*****" + value.substr(8, 3);
}
return value;
}
}

2.引入的js文件

用于判断字段是否启用了脱敏

/**
* 查询某菜单某字段是否要求脱敏
* @author wangzhuang
* @date 2019/10/08
* @param fieldNo 字段名
* @param url 菜单url 格式如:whiteListController
* @returns
*/
function isTuoMin(fieldNo,url,flag){
$.ajax({
type: "post",
url: "whiteListController.do?checkIsTuoMin",
data: {
fieldNo: fieldNo,
url:url
},
async : false,//异步请求
dataType: "json",
success: function (data) {
if (data.success) {
flag = true;
}
}
});
return flag;
}

3.后台判断

    /**
* 检查是否要求脱敏
*
* @param request
* @return
*/
@RequestMapping(params = "checkIsTuoMin")
@ResponseBody
public AjaxJson checkIsTuoMin(HttpServletRequest request) {
AjaxJson j = new AjaxJson();
String url = request.getParameter("url");
String fieldNo = request.getParameter("fieldNo");
if (whiteListService.queryFlag(url, fieldNo)) {
j.setSuccess(true);
} else {
j.setSuccess(false);
}
return j;
}

功能本身思路简单感觉没什么亮点, 唯一想深入看的就数zTree了, 自从毕业只是ctrl+c ctrl+v, 今天详细看一下zTree.https://www.cnblogs.com/yadongliang/p/11642931.html

web项目脱敏白名单管理的更多相关文章

  1. 一个web项目中间的团队管理

    一个web项目中间的团队管理     最近在参加一个比赛,我们选的题目是:MOOC大型网络在线课堂.这个题目是我们五个人都想做的,我们的成员都是志同道合的五个人.   作为团队的统率者:   定义规范 ...

  2. Windows Azure Web Site (14) Azure Web Site IP白名单

    <Windows Azure Platform 系列文章目录> 我们知道,在Azure Cloud Service和Virtual Machine,可以通过Endpoint ACL (Ac ...

  3. 如何为ASP.NET Core设置客户端IP白名单验证

    原文链接:Client IP safelist for ASP.NET Core 作者:Damien Bowden and Tom Dykstra 译者:Lamond Lu 本篇博文中展示了如何在AS ...

  4. 第一个web项目

    1)       创建Java Web Project 2)       创建相应的包 3)       创建类并继承于HttpServlet 4)       重写service()方法 5)    ...

  5. JavaWeb学习之tomcat安装与运行、tomcat的目录结构、配置tomcat的管理用户、web项目目录、虚拟目录、虚拟主机(1)

    1.tomcat安装与运行双击tomcat目录下的bin/startup.bat,启动之后,输入http://localhost:8080,出现安装成功的提示,表示安装tomcat成功 2.tomca ...

  6. 酒店管理web项目总结

    酒店管理web项目总结 半个月的努力,一个完整的酒店项目也就新鲜出炉了,在项目的制作中总结了一些酒店管理项目的特点. 1.需求分析,酒店管理需要什么? 1)首先系统的安全性,对于任何一个系统来说,安全 ...

  7. 对actuator的管理端点进行ip白名单限制(springBoot添加filter)

    在我们的SpringCloud应用中,我们会引入actuator来进行管理和监控我们的应用 常见的有:http://www.cnblogs.com/yangzhilong/p/8378152.html ...

  8. java传统web项目添加maven管理jar包,log4j无法正常输出日志

    本文适合1年以上编程基础的开发人员阅读,非技术创新,可作为故障排除实录参考/收藏. 背景 笔者最近在给公司一个老的web项目改造升级,项目使用springmvc+mybatis,由于项目比较久远,没有 ...

  9. web项目中日志管理工具的使用

    在web项目中,很多时候会用到日志管理工具,常见的日志管理用具有:JDK logging(配置文件:logging.properties) 和log4j(配置文件:log4j.properties) ...

随机推荐

  1. Qt使用QPainter绘制矢量图并保存为svg文件

    位图和矢量图: Bitmap: Usually a larger file size Cannot be enlarged into a higher resolution as the image ...

  2. ubuntu升级python版本(3.5 -> 3.6)

    #获取最新的python3.6,将其添加至当前apt库中,并自动导入公钥 $ sudo add-apt-repository ppa:jonathonf/python-3.6 $ sudo apt-g ...

  3. I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2

    遇到了这个问题,意思是你的 CPU 支持AVX AVX2 (可以加速CPU计算),但你安装的 TensorFlow 版本不支持 解决:1. 如果是初学者 或者 没有太大计算速度的需求,在开头加上这两行 ...

  4. Linux搭建MySQL主从

    实现目标 搭建两台MySQL服务器(一主一从),一台作为主服务器,一台作为从服务器,主服务器进行写操作,从服务器进行读操作. 工作流程概述 主服务器: 开启二进制日志 配置唯一的server-id 获 ...

  5. oracle 排序后分页查询

    demo: select * from ( select * from DEV_REG_CFG_CAMERA where 1 = 1 order by unid asc) where rownum & ...

  6. python实现系统调用cmd命令的模块---subprocess模块

    如果要python实现系统命令或者调用脚本,python中可以利用os或者subprocess模块实现: 一.os模块: # coding:utf-8 command = os.system('net ...

  7. mysql的binlog空间维护

    .Binlog空间维护 一,显示当前的logs文件记录 show master logs; 二,清空n天前的日志,减少磁盘空间 PURGE MASTER LOGS BEFORE DATE_SUB(CU ...

  8. 三大框架整合(hibernate-spring-struts2)

    三大框架整合说明 一.导包---41个包 二.单独配置spring容器---applicationContext.xml (1)导入约束(beans|context|aop|tx) (2)写数据库读取 ...

  9. 题解:[HAOI2008]下落的圆盘

    时空限制:1000ms / 128MB 原题链接: 洛谷 bzoj Description 有n个圆盘从天而降,后面落下的可以盖住前面的.求最后形成的封闭区域的周长.看下面这副图, 所有的红 色线条的 ...

  10. 对ABBYY FineReader功能的探究

    ABBYY FineReader,一个强大的PDF阅读器和OCR识别器! 阅读主界面 OCR主界面 资源就不贴了,不过提示一下大家:Google Search 懒 得 勤 快,就可以找到. 经过研究, ...