自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 用redis接口恶意访问缓存中不存在的key造成造成后端存储压力大如何避免

面试时会经常问道:使用redis时,用接口恶意访问不存在的key,造成造成后端存储压力大宕机等问题?缓存穿透缓存穿透是指查询一个根本不存在的数据,缓存层和存储层都不命中,且不将空结果写到缓存中。 会导致后端存储负载变大,造成后端存储宕机等问题。可以在程序中分别统计总调用数、缓存命中数、存储命中数,若有大量存储层空命中,可能是出现了缓存穿透。产生原因:1.自身代码或数据出现问题 2.恶意攻击,爬虫造成空命中如何解决:1 缓存空对象存储层不命中,扔将空对象保存到缓存层。适用场景:数据频繁变化、

2020-08-27 17:16:19 642

原创 最近的一个项目需求基础开发总结

进入某东大厂的高效率开发团队的第一个需求任务开发进入新团队后熟悉阶段:1、了解项目情况,项目框架、代码规范、公共类等,是否有可优化部分,在会议提出自己的有效建议,也可以指出项目中的不足(重在让领导知道你有自己思考)2、在入职熟悉期间,融入团队的同时,观察工作时间安排,是否合理有效开发,开会可以提出自己有效建议和见解3、是否有自己理解的新技术,可进行优化项目中某些功能,提出自己的见解项目需求评估及确认:1、拿到需求后,认真每行的筛选,确定每一个细节需求,并标注2、需求评估时,针对需求人员的讲解

2020-08-24 15:46:52 215

原创 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 118

原创 树形结构表3种设计-转载

在开发中经常遇到树形结构的场景,本文将以部门表为例对比几种设计的优缺点;参考:https://blog.csdn.net/qq_38011415/article/details/95462698

2020-08-24 11:40:04 240

原创 JAVA分组、Map遍历、集合去重复除,树状结构获取第二层级的集合

开发中遇到的开发场景1 如带国家的省市县、公司部门层级关系等场景以国家省市县为例树状结构,类似于省市县地区,甚至更长的多个树的集合最上层有一个虚拟层级(国家),层级下面可以理解为省,数据集合是存在多个树状集合的平面数据输出结果:输出每个国家的省使用到的技术点,集合分组Collectors.groupingBy,获取集合中某个字段的集合,map的遍历,删除包含内容 upNo.removeIf()private List queryNO(NodeQry pageQry, UserInfo user

2020-08-20 10:46:51 872

原创 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 1156

原创 常用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 2925

原创 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 2199 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除