写在前面

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

    一.Collection 集合 Collection:单列集合类的根接口,用于存储一系列符合某种规则的元素,它有两个重要的子接口,分别是 java.util.List 和 java.util.Set. ...

  2. Android 系统自带图片裁剪功能(适配7.0、8.0、对了还有小米手机)

    前段时间写了如何获取相册和拍照之后的照片并且进行显示和上传,这一次是如何进行圆形图像制作,经常看我写的笔记的人会知道,我很懒.那么我就懒的自定义了,目前需求就用原生的就好了,大神的轮子,我会在后面进行 ...

  3. 访问Stack Overflow速度超慢的原因

    很多网站,尤其是国外网站,为了加快网站的速度,都是用了 Google 的 CDN. 但是在天朝,由于某些原因,导致全球最快的 CDN 变成了全球最慢的. 解决方法步骤如下: 下载ReplaceGoog ...

  4. 【漏洞复现】Apache Solr via Velocity template远程代码执行

    0x01 概述 Solr简介 Apache Solr 是一个开源的企业级搜索服务器.Solr 使用 Java 语言开发,主要基于 HTTP 和 Apache Lucene 实现.Apache Solr ...

  5. H3C STA>PC的数据转发

  6. springboot 集成百度的唯一ID生成器

    UidGenerator是百度开源的Java语言实现,基于Snowflake算法的唯一ID生成器.而且,它非常适合虚拟环境,比如:Docker.另外,它通过消费未来时间克服了雪花算法的并发限制.Uid ...

  7. Ansible--项目实战

    Ansible项目实战lnmp 项目规划 通过ansible roles配置lnmp环境,nginx通过源码编译安装,php通过源码编译安装,mysql通过yum安装(mysql源码编译超级慢)支持系 ...

  8. 性能测试基础---LR关联

    ·什么时候需要做关联?一般来说,在脚本运行出错的时候,我们就可能需要进行关联处理. ·脚本出错分为两种情况: ·直接回放出错(失败).通常来说,如果录制成功,回放失败,排除数据的唯一性约束之后,那就必 ...

  9. PL/SQL Developer 快捷键

    前面我有分享了一个PLSQL美化规则,其实通过统一的美化SQL,把这里SQL写在Java代码里可以比较容易阅读代码,且保持良好得编码风格. 在工作中我们也经常使用PLSQL来写一SQL,有些常用的SQ ...

  10. python预课05 爬虫初步学习+jieba分词+词云库+哔哩哔哩弹幕爬取示例(数据分析pandas)

    结巴分词 import jieba """ pip install jieba 1.精确模式 2.全模式 3.搜索引擎模式 """ txt ...