随笔分类 - java
摘要:前言 最近接到一个需求,批量上传图片到服务器及实时更新上传进度。当处理大量文件上传任务时,效率是一个关键因素。传统的串行方式会导致任务耗时较长,而使用并发处理可以极大地提高上传效率。想到很久之前用CompletableFuture优化过一些多统计的业务场景,效果都还不错,因此在这里也使用它来优化一下
阅读全文
摘要:前言 Java8的四大函数式接口及相关的扩展接口在日常使用中的频率也是非常多的,包括自己定义的函数式接口,在JDK1.8之前,我们定义的方法都是用来接收参数,然后自己根据参数传递实现逻辑。在1.8之后,可以通过参数传递一段行为代码,将公共的行为代码封装成一个函数式接口传递,可以减少很多代码量,在St
阅读全文
摘要:前言 最近有个项目里面中有大量的Excel文档导入导出需求,数据量最多的文档有上百万条数据,之前的导入导出都是用apache的POI,于是这次也决定使用POI,结果导入一个四十多万的文档就GG了,内存溢出... 于是找到EasyExcel的文档,学习了一番,解决了大数据量导入导出的痛点。 由于项目中
阅读全文
摘要:前言 很久都没有写博客了,一来是感觉工作中没有接触什么新东西,二来也是自己变懒了,业余时间都耗费在了休闲上面,主动学习的次数越来越少了。今天项目里需要对接到支付宝转账给个人账户,正好以前没有弄过,把对接步骤在此总结一下。 配置 支付宝对接官方文档 : https://opendocs.alipay.
阅读全文
摘要:前言 Jenkins在工作中都使用过,之前都是运维去搭建部署,弄好了之后给我一个网址去构建项目就可以了,所以也都是一直没了解过安装过程。 今天在自己的服务器上搭建了一遍,中间有遇到很多坑,特在此归纳总结一下。 安装 首先需要先安装jdk和maven,用来编译和打包。 jdk的安装教程:https:/
阅读全文
摘要:记录一下flatMap的用法 个人理解是将流中的流合并 @Data @AllArgsConstructor @NoArgsConstructor public class WhiteIp { //id private Integer id; //域名 private String domain; /
阅读全文
摘要:背景 想必大家在项目中都有遇到把一个列表的多个字段累加求和的情况,也就是一个列表的总计。有的童鞋问,这个不是给前端做的吗?后端不是只需要把列表返回就行了嘛。。。没错,我也是这样想的,但是在一场和前端的撕逼大战中败下阵来之后,这个东西就落在我身上了。当时由于工期原因,时间比较紧,也就不考虑效率和易用性
阅读全文
摘要:前言 这篇文章教大家如何搭建一个自己的网站,平时我们在写项目的时候大部分都是由运维去部署发布的,可能对这方面不太关注。今天手把手教大家实现,我媳妇看了都学会了! 准备工具 一个可运行的java项目; 一台服务器; 一个数据库。 具体实现 项目 先准备一个java项目,我是在GitHub上找的一个开源
阅读全文
摘要:前言 前些天无意间在百度搜索了一下以前写过的博客 我啥时候在这么多不知名的网站上发表博客了???点进去一看, 内容一模一样,作者却不是我... 然后又去搜了其他篇博客,果然,基本上每篇都在别的网站上有,细想,可能是通过网络爬虫爬取博客园首页博客,然后copy至自己网站中,于是乎,博主也来实现一遍爬取
阅读全文
摘要:前言 在上一篇《Spring学习之——手写Spring源码(V1.0)》中,我实现了一个Mini版本的Spring框架,在这几天,博主又看了不少关于Spring源码解析的视频,受益匪浅,也对Spring的各组件有了自己的理解和认识,于是乎,在空闲时间把之前手写Spring的代码重构了一遍,遵循了单一
阅读全文
摘要:前言 Sping的生态圈已经非常大了,很多时候对Spring的理解都是在会用的阶段,想要理解其设计思想却无从下手。前些天看了某某学院的关于Spring学习的相关视频,有几篇讲到手写Spring源码,感觉有些地方还是说的挺好的,让博主对Spring的理解又多了一些,于是在业余时间也按照视频讲解实现一遍
阅读全文
摘要:业务场景 在很多项目中,都有类似数据汇总的业务场景,查询今日注册会员数,在线会员数,订单总金额,支出总金额等。。。这些业务通常都不是存在同一张表中,我们需要依次查询出来然后封装成所需要的对象返回给前端。那么在此过程中,就可以把这个接口中“大任务”拆分成N个小任务,异步执行这些小任务,等到最后一个小任
阅读全文
摘要:前言 最近看到很多童鞋在项目中的对请求参数的校验都用的if来判断各参数的属性,如: if(StringUtils.isBlank(username)){ return RR.exception("账号不能为空"); } if(StringUtils.isBlank(password)){ retur
阅读全文
摘要:前言 以前写过的一个老项目中,有这样一个业务场景,比喻:一个外卖系统需要接入多家餐馆,在外卖系统中返回每个餐馆的菜单列表 ,每个餐馆的菜单价格都需要不同的算法计算。 代码中使用了大量的if else嵌套连接,一个类中数千行代码(眼睛快看瞎...),而且随着业务的扩展,接入的餐馆会越来越多,每接入一个
阅读全文
摘要:为什么要这样做? Security和Shiro相信大家都用过,常见的两种权限框架,既然都是属于权限框架,那么肯定都有自己的权限控制,为什么还要使用Security的同时去实现Shiro的权限控制呢? 由于新项目使用的是Security,于是去百度了一波详解,知道了Security是使用@PreAut
阅读全文

浙公网安备 33010602011771号