java
z_zhong02
这个作者很懒,什么都没留下…
展开
-
用redis接口恶意访问缓存中不存在的key造成造成后端存储压力大如何避免
面试时会经常问道:使用redis时,用接口恶意访问不存在的key,造成造成后端存储压力大宕机等问题?缓存穿透缓存穿透是指查询一个根本不存在的数据,缓存层和存储层都不命中,且不将空结果写到缓存中。 会导致后端存储负载变大,造成后端存储宕机等问题。可以在程序中分别统计总调用数、缓存命中数、存储命中数,若有大量存储层空命中,可能是出现了缓存穿透。产生原因:1.自身代码或数据出现问题 2.恶意攻击,爬虫造成空命中如何解决:1 缓存空对象存储层不命中,扔将空对象保存到缓存层。适用场景:数据频繁变化、原创 2020-08-27 17:16:19 · 683 阅读 · 0 评论 -
最近的一个项目需求基础开发总结
进入某东大厂的高效率开发团队的第一个需求任务开发进入新团队后熟悉阶段:1、了解项目情况,项目框架、代码规范、公共类等,是否有可优化部分,在会议提出自己的有效建议,也可以指出项目中的不足(重在让领导知道你有自己思考)2、在入职熟悉期间,融入团队的同时,观察工作时间安排,是否合理有效开发,开会可以提出自己有效建议和见解3、是否有自己理解的新技术,可进行优化项目中某些功能,提出自己的见解项目需求评估及确认:1、拿到需求后,认真每行的筛选,确定每一个细节需求,并标注2、需求评估时,针对需求人员的讲解原创 2020-08-24 15:46:52 · 264 阅读 · 0 评论 -
Idea 常用快捷键_zhs
Idea 常用快捷键 1.Ctrl+E,可以显示最近编辑的文件列表 2.Shift+Click可以关闭文件 3.Ctrl+[或]可以跳到大括号的开头结尾 4.Ctrl+Shift+Backspace可以跳转到上次编辑的地方 5.Ctrl+F12,可以显示当前文件的结构 6.Ctrl+F7可以查询当前元素在当前文件中的引用,然后按F3可以选择 7.Ctrl+N,可以快速打开类 8.Ctrl+Shift+N,可以快速打开文件 9.Alt+Q可以看到当前方法的声明 10.Ctrl原创 2020-08-24 14:53:35 · 139 阅读 · 0 评论 -
树形结构表3种设计-转载
在开发中经常遇到树形结构的场景,本文将以部门表为例对比几种设计的优缺点;参考:https://blog.csdn.net/qq_38011415/article/details/95462698原创 2020-08-24 11:40:04 · 278 阅读 · 0 评论 -
JAVA分组、Map遍历、集合去重复除,树状结构获取第二层级的集合
开发中遇到的开发场景1 如带国家的省市县、公司部门层级关系等场景以国家省市县为例树状结构,类似于省市县地区,甚至更长的多个树的集合最上层有一个虚拟层级(国家),层级下面可以理解为省,数据集合是存在多个树状集合的平面数据输出结果:输出每个国家的省使用到的技术点,集合分组Collectors.groupingBy,获取集合中某个字段的集合,map的遍历,删除包含内容 upNo.removeIf()private List queryNO(NodeQry pageQry, UserInfo user原创 2020-08-20 10:46:51 · 892 阅读 · 0 评论 -
JAVA常用遍历替换数据
//集合遍历替换List<T> Alist = new ArrayList<>(); Alist).stream().filter(bean -> { if (bean.getStartDate().compareTo(Constant.START_DATE) == 0 && bean.getEndDate().compareTo(Constant.END_DATE) == 0) { bean.set原创 2020-08-17 14:03:38 · 1190 阅读 · 0 评论 -
常用Lambda集合取值及类型转换
常用Lambda取值及类型转换#nodeList 改为Map集合 Map<String, A> nodeNameMap = nodeList.stream().collect(Collectors.toMap(A::getNodeNo, Function.identity(), (k1, k2) -> k1));#获取集合中一列值的集合List<String> list= nodeList.stream().map(A::getNodeNo).distinct().c原创 2020-08-13 14:49:22 · 2986 阅读 · 0 评论 -
JAVA树状结构转List平面
JAVA树状结构转List平面使用递归实现#主方法A 实体,@ApiModel(value = "A", description = "信息")@Datapublic class A{ /** * bod编码 */ @ApiModelProperty(value = "bod编码", hidden = true) @Size(max = 30) private String B; @ApiModelProperty(value = "子节点集合")原创 2020-08-13 11:40:17 · 2274 阅读 · 1 评论