TypechoJoeTheme

王子博客

用户名
密码
用户名
邮箱
2022-09-21

Excel办公技巧:巧用分类汇总功能批量合并相同内容单元格

Excel办公技巧:巧用分类汇总功能批量合并相同内容单元格
应用案例将下图工作表中相同组别的单元格进行合并,比如A2和A3单元格中的内容同为“1组”,将两个单元格进行合并。操作步骤1 选中工作表数据区域的任一单元格,这里选择A1单元格,在“数据”选项卡“分级显示”功能组中单击“分类汇总”按钮。2 在弹出的“分类汇总”对话框中,设置“分类字段”为“组别”,“选定汇总项”为“组别”,单击“确定”按钮。此时,在原数据区域左侧会新增一列分类汇总列。3 选中A2:A10单元格区域,同时按CTRL+G组合键调出“定位”对话框,在对话框中单击左下方的“定位条件”按钮。4 在弹出的“定位条件”对话框中,选择“空值”,单击“确定”,这样就能选中A2:A10单元格区域所有的空白单元格。5 在“开始”选项卡“对齐方式”功能组中单击“合并后居中”按钮,这样A列中被选中的空白单元格就进行了合并居中,合并区域与B列中要合并的区域正好相对应。6 选中数据区域任意一个单元格,在“数据”选项卡“分级显示”功能组中单击“分类汇总”按钮。7 在弹出的“分类汇总”对话框中单击“全部删除”按钮,此时,表格A列中的分类汇总项被删除。8 选中A列中的合并区域A2:A8单元格,在“开始...
王子
2022-09-21

技术与技巧

158 阅读
0 评论
2022年09月21日
158 阅读
0 评论
2022-09-14

使用Spring AOP实现异步文件上传

使用Spring AOP实现异步文件上传
背景相信很多系统里都有这一种场景:用户上传 Excel,后端解析 Excel 生成相应的数据,校验数据并落库。这就引发了一个问题:如果 Excel 的行非常多,或者解析非常复杂,那么解析+校验的过程就非常耗时。如果接口是一个同步的接口,则非常容易出现接口超时,进而返回的校验错误信息也无法展示给前端,这就需要从功能上解决这个问题。一般来说都是启动一个子线程去做解析工作,主线程正常返回,由子线程记录上传状态+校验结果到数据库。同时提供一个查询页面用于实时查询上传的状态和校验信息。进一步的,如果我们每一个上传的任务都写一次线程池异步+日志记录的代码就显得非常冗余。同时,非业务代码也侵入了业务代码导致代码可读性下降。从通用性的角度上讲,这种业务场景非常适合模板方法的设计模式。即设计一个抽象类,定义上传的抽象方法,同时实现记录日志的方法。例如://伪代码,省略了一些步骤 @Slf4j public abstract class AbstractUploadService<T> { public static ThreadFactory commonThreadFactor...
王子
2022-09-14

Java,技术与技巧

186 阅读
0 评论
2022年09月14日
186 阅读
0 评论
2022-09-13

轻量级虚拟机Multipass使用教程

轻量级虚拟机Multipass使用教程
当我们电脑内存不够的时候 你会怎么想?加内存??还是使用虚拟机?最近,打算在 windows电脑上安装一个虚拟机,用来学习 K8S。首先想到的是 Vmware 然后打开浏览器找了找,发现只提供付费版本。然后,开始尝试使用免费 VirtualBox,但是在安装 CentOS 的时候,貌似因为 windows版本的原因,总是报错,花费了好几天的时间,试过各种方案,最终解决无果,就放弃了。。就在老王要放弃的时候,突然在 Ubuntu 官网进行冲浪的时候,发现了一款叫 Multipass 的东西。它可以快速在电脑上快速搭建一个轻量级的虚拟机,并且相比于 Vmware 更加轻量,只需一行命令快速创建 Ubuntu 虚拟机。Multipass 是一个轻量虚拟机管理器,是由 Ubuntu 运营公司 Canonical 所推出的开源项目。运行环境支持 Linux、Windows、macOS。在不同的操作系统上,使用的是不同的虚拟化技术。在 Linux 上使用的是 KVM、Window 上使用 Hyper-V、macOS 中使用 HyperKit 以最小开销运行VM,支持在笔记本模拟小型云。同时,...
王子
2022-09-13

技术与技巧

888 阅读
0 评论
2022年09月13日
888 阅读
0 评论
2022-09-11

SpringBoot接入轻量级分布式日志框架(GrayLog)

SpringBoot接入轻量级分布式日志框架(GrayLog)
运行应用的服务器一般是集群,日志数据会记录到不同的机器上,排查和定位问题只能登录各个服务器查看。今天来聊聊这个话题。00、为什么需要分布式日志组件?在文章正式开始之前,我分享下我以前负责过的一个系统,它的架构如下:每次当我查问题的时候,我可能能把问题初步定位在逻辑层,但为了能给业务方交代,我需要给证据业务方看(日志信息就是铁证)。一个请求肯定是被这8台机器内的某一台处理,但具体是哪一台,我不知道。所以,我需要上每台机器上grep一把日志,然后才能找出对应的日志证明我的分析。有的时候,可能接入层也需要一起参与进去,就排查一个问题,人都傻了了(翻看日志的时间占用了太久了)。后来啊,看了同事的骚操作(在item2 编写脚本:快速登录堡垒机(免去输入账号和密码信息),根据应用服务器数量来切割窗口并且切换到对应的日志目录)。说白了就是一键登录多台应用服务器。嗯,这查日志的速度比起以前又快了好多。再后来,公司运维侧又主力推在Web页面上登录应用服务器(自动登录堡垒机),这能省去编写脚本(支持批量操作)。但从当时的体验上,没有用item2访问得流畅(总感觉卡卡的)。不过还有问题,因为我们在很多...
王子
2022-09-11

GrayLog,分布式日志

155 阅读
0 评论
2022年09月11日
155 阅读
0 评论
2022-09-09

grayLog部署安装

grayLog部署安装
前言Graylog 的架构主要有两种,一种是最小化 Graylog,用于较小的非关键或测试环境,各组成组件之间不冗余,设置简单快捷;另一种是针对更大生产环境下的 Graylog,各组成组件之间组成集群架构,在 Graylog 节点前部署负载均衡,适用于生产环境。最小化 Graylog 所有的组件都部署在一台服务器之上,其架构如下:生产环境下 Graylog 架构如下:一、准备环境此次部署既要满足测试功能,又要能够对生产环境下的架构有清楚认识,决定先部署一台单节点的最小化 graylog,然后再扩展加入集群。各组件版本选型分别是:elasticsearch-6.6.2、mongodb-4.0、graylog-3.0.0、openjdk1.8.0_181 等。二、单节点部署首先部署单节点最小化 graylog,部署步骤如下:1.配置可通外网网络或搭建内部最新 yum 源(此处不做详细介绍)2.关闭 selinux、iptable、firewalld 等防火墙setenforce 0 #将SELINUX=enable修改成SELINUX=disabled,保存退出 vim /etc/s...
王子
2022-09-09

GrayLog,分布式日志

593 阅读
1 评论
2022年09月09日
593 阅读
1 评论