- 博客(121)
- 资源 (1)
- 收藏
- 关注
原创 记一次javaMetaspace导致CPU200%的排查
看报错是:java.lang.OutOfMemoryError: Metaspace,刚开始的时候眼挫,忽略了后面的Metaspace,只看到了OutOfMemoryError,就各种找代码问题。insertMotionDataByWxCallBack方法并发多(其实也没多少,可能就3个?)就导致CPU200%了,本地没法复现。
2023-04-23 19:50:36 750 1
原创 临时解决新款macbookpro m1pro刘海屏遮住部分菜单栏应用的问题
临时解决新款macbookpro m1pro刘海屏遮住部分菜单栏应用的问题背景:新买的2021款MacBook Pro m1pro,有刘海屏,会遮住部分菜单,我还以为是软件不兼容。目前官方还未有解决方案。所以临时解决方案如下:有个软件叫做Bartender 4,用来缩起不常用的菜单应用。官网地址:https://www.macbartender.com/当然也可以用PJ版:https://macwk.com/soft/bartender-4...
2022-04-24 15:32:08 10507 2
原创 《代码整洁之道 Clean Code》读书笔记
《代码整洁之道 Clean Code》读书笔记我从第一次开始写代码的时候,就总是有一种强迫症,总是想写出在当时的认知范围内,最优雅的代码,或者也可以说最合适的代码。所以在进一步的说,就是最整洁的代码了。就像这本书的名字一样,见书名即知道书的内容。所以,优秀的整洁的代码是自带解释的,甚至不用注释,就能见字如意,能够大概的明白这部分代码是做什么用的,要实现什么样的功能。所以,我认为,整洁要达到的目标,就是要让人能读懂。引用一个说法:低级程序员的代码只有机器能看懂,中级程序员的代码人能看懂,高级程序员用业务
2022-04-01 13:06:17 715
原创 java8中groupingBy时自定义Map类型
java8中groupingBy时自定义Map类型1、场景2、解决方案1、场景业务中,需要对数据根据日期排序后再根据某个字段分组groupingBy,但是在测试时发现,groupingBy会打乱之前排序好的内容,查看groupingBy的底层发现,默认会分组成HashMap的类型。2、解决方案为了让分组后的数据不变化排序的顺序,所以需要用LinkedHashMap来存放数据。即使用三参数的groupingBy,指定返回有序的LinkedHashMap。Collectors.groupingB
2022-01-06 19:39:32 2887
原创 centos安装docker和portainer可视化界面
centos安装docker和可视化界面一、安装docker前期准备1、查看当前系统内核版本2、更新yum包(生产环境请谨慎操作)3、卸载旧版本(如果之前安装过的话)正式安装docker1、安装需要的软件包, yum-util 提供yum-config-manager功能,另两个是devicemapper驱动依赖2、设置yum源,不然搜不到docker3、查看可以安装哪些docker版本4、选择一个版本并安装:`yum install docker-ce-版本号`5、启动docker并设置开机自启6、查看d
2021-12-23 11:40:02 2629
原创 Redis入门指南
Redis入门指南一级目录二级目录三级目录一、安装1、通过Homebrew安装Redis2、配置文件3、打开redis-cli命令行客户端二、Redis的数据类型1、String类型1.1 操作2、Hash(哈希)类型2.1 操作3、List类型4、SET类型5、Sorted-Sets类型三、持久化1、两种方式1、RDB2、AOF四、可视化界面软件推荐一级目录二级目录三级目录因redis偏操作,所以本次读书笔记用叙事风格来描述~以前看过redis相关的网课,在51CTO开着倍速看的,尽管会用了,但
2021-12-21 18:44:11 1098
原创 macos在命令行快捷打开vscode和idea
macos在命令行快捷打开vscode和idea1、vscode安装快捷命令到命令行2、idea安装快捷命令到命令行1、vscode安装快捷命令到命令行在vscode的app界面,command+shift+p,调出vscode的命令行输入框发,输入 install code,然后选中安装即可~命令行输入code .尝试打开当前文件夹2、idea安装快捷命令到命令行在头部菜单中选择Tools,然后选中Create Command-line Launcher...然后OK即可~
2021-12-20 12:51:21 953
原创 windows中Nginx解决bind() to 0.0.0.0:80 faild的错误
windows中Nginx解决bind to 0.0.0.0:80 faild的错误1、错误场景2、解决方案1、错误场景在启动nginx的时候,报错80端口被占用了,提示:bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions)2020/04/18 14:40:23 [emerg] 8180#7652: bind() t
2021-12-02 18:44:59 2876
原创 springboot中接口post请求时分页处理
springboot中接口post请求时分页处理1、背景2、解决方案1、背景在前端请求springboot接口时,page分页多为get请求,然后在get请求中定义参数@PageableDefault Pageable pageable即可,如:@GetMapping(value = "/page")public Page<VO> queryPage(@PageableDefault Pageable pageable) { return service.queryPage(pa
2021-11-25 11:19:03 2867
原创 eNSP搭建USG6000V防火墙教程-web
eNSP搭建USG6000V防火墙教程-web1、先注册设备(很重要,一定要先注册设备)2、创建USG6000V3、启动防火墙和连接客户机3、开启一系列的功能和配置ip4、避坑指南1、先注册设备(很重要,一定要先注册设备)2、创建USG6000V拖动到空白区域启动,第一次会让导入USG6000V镜像3、启动防火墙和连接客户机如果启动报错45,那就重新注册下eNSP并重启见第一步启动后双击进入命令行输入默认账号和密码 u:admin/p:Admin@12
2021-10-12 19:02:55 23977 8
原创 eNSP安装教程
eNSP安装教程一、安装eNSP1、先安装依赖组件2、安装eNSP主程序eNSP+V100R003C00SPC100+Setup ---不要安装在中文路径下3、安装完成后注册设备一、安装eNSP程序包位置:https://drive.weixin.qq.com/s?k=AOgAQQfOAAsw1wAKEgAAcAbgbSAKQ1、先安装依赖组件依赖组件:WinPcap_4_1_3 —直接下一步,但不要安装在中文路径下Wireshark_v3.4.6 或者wireshark-win3
2021-10-12 19:00:48 8092 6
原创 解决ssh长时间不操作后自动断开操作无反应的问题
解决ssh长时间不操作后自动断开操作无反应的问题1、问题描述2、解决方案1、问题描述ssh登录某个服务器的时候,长时间不操作,在想输入东西的时候,发现怎么也输入不了,无反应,只能退出重新登录。自动登出了。原因是因为,有些活跃的路由器中,会默认断开不活跃的TCP连接,所以才导致ssh断开。用手机热点就应该没有这个问题。2、解决方案思路就是在客户端机器上,设置ssh心跳,60秒一次配置ssh的config文件(没有就创建)macos在如下目录cd ~/.ssh然后配置config文件
2021-09-24 10:01:23 717
原创 《Java编程思想》读书笔记
《Java编程思想》读书笔记读《Java编程思想》的一些心得1、一切皆对象到底存在了什么地方2、操作符3、初始化与清理4、复用类5、接口读《Java编程思想》的一些心得 《Java编程思想》,也叫《Thinking in Java》。 首先,这是一本非常非常非常好的一本书,是值得二刷、三刷、四刷的书。奈何我读书技巧不够,读的太慢,导致我还未读完这本书。但就目前我读完的地方而言,已经是受益颇多,也刷新了我太多的认知。大学的时候,也有学过Java相关的内容,但是老师讲的并不深刻,亦可能是我理解的不
2021-09-22 21:50:09 647
原创 树莓派启用root账号
树莓派启用root账号树莓派启用root账号1、在PI账号下设置root账号登录2、修改ssh配置启用root账号登录3、重启树莓派树莓派启用root账号树莓派默认启用的主机名是 raspberrypi 默认用户是 pi 密码为 raspberry1、在PI账号下设置root账号登录sudo passwd rootEnter new UNIX password: #输入第一遍密码Retype new UNIX password: #输入第二遍密码2、修改ssh配置启用root账号登录
2021-08-28 13:28:32 1844
原创 树莓派系统安装及初始化
树莓派系统安装及初始化树莓派系统安装及初始化1、下载系统2、刻录系统3、设置网络4、开启ssh访问树莓派系统安装及初始化1、下载系统镜像下载地址:https://downloads.raspberrypi.org/raspios_lite_arm64/images/raspios_lite_arm64-2021-05-28/2、刻录系统使用刻录工具刻录,官方推荐刻录软件:https://www.balena.io/etcher/如果在写的时候,写到最后出现失败了,别紧张,重新拔插内存卡,
2021-08-28 13:25:56 356
原创 Java 汉字获取拼音或首字母工具类
Java 汉字获取拼音或首字母工具类期望结果input:时间output: shijian或sj1、Maven依赖<dependency> <groupId>com.belerweb</groupId> <artifactId>pinyin4j</artifactId> <version>2.5.1</version></depen
2021-08-28 12:50:20 620
原创 快速搭建frp的http和ssh的内网穿透
快速搭建frp的http内网穿透一、frp是个啥二、服务器端环境1、先将frp专用子域名解析好2、服务器端配置frp服务端3、配置服务器端的nginx三、客户端使用/配置1、这里以windows为例子四、dashboard五、通过ssh访问内网一、frp是个啥中文文档:https://gofrp.org/docs/overview/其实中文文档已经挺详细的了,但是依然还是有些坑的.frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网
2021-08-08 18:05:21 847
原创 Centos7-Linux安装zsh和oh-my-zsh(内含国内安装方法)
Centos7-Linux安装zsh和oh-my-zsh(内含国内安装方法)一、安装zsh二、安装git三、安装oh-my-zsh四、oh-my-zsh常用插件一、安装zshyum install -y zsh出现如下信息说明安装成功设置zsh为默认的shellchsh -s /bin/zsh确保在root权限下切换二、安装git一般情况下,如果是买的服务器,默认是会有git的,但是自己装虚拟机还是需要装一下git的yum install -y git三、安装oh-my
2021-08-08 17:00:53 7470 4
原创 java中静态方法调用spring管理的类的方法
java中静态方法调用spring管理的类的方法1、场景2、解决方法1、场景有时候为了美观(比如isXXX返回boolean),会想把方法写成静态的,但是方法中又需要调用service或者dao去关联数据,如果直接像下面这么写,会注入失败,获取到的是null@Autowiredprivate SysRoleService sysRole;public static boolean isSuperAdmin() { UserDetail user = getUser();
2021-07-29 10:04:50 718
原创 解决mq发消息比存数据库快的问题的另一种方法-亲测
解决mq发消息比存数据库快的问题的另一种方法-亲测1、背景描述在一个事务中,既做了插入数据库的操作,又做了向mq生产者发消息的操作,这个时候,mq生产者接收消息过快,导致mq消费者立刻消费,而在消费时,做了查询刚刚插入数据库的那条记录的操作,就会查不到导致空指针异常。2、解决方案使用spring的ApplicationEvent、ApplicationListener事件监听来达到延迟效果,就是在插入数据库的那个事务里,不再直接发消息给mq生产者,而是推送一个事件,在监听事件执行时,延迟几秒再发
2021-07-09 16:53:19 1037
原创 Idea插件之CamelCase驼峰转换
Idea插件之CamelCase驼峰转换1、插件介绍CamelCaseSwitch easily between kebab-case, SNAKE_CASE, PascalCase, camelCase, snake_case or space case. See Edit menu or use ⇧ + ⌥ + U / Shift + Alt + U. Allows to disable some conversions or change their order in the prefer
2021-07-09 09:56:27 931
转载 java中排序比较器 Comparator 考虑为null的情况
java中排序比较器 Comparator 考虑为null的情况public class Comptor { public static void main(String[] args) { List<Bean> objects = new ArrayList<>(); Random random = new Random(1); for (int i = 0; i < 10; i++) { ob
2021-07-08 12:07:29 2755
原创 《MySQL是怎样运行的》读书笔记
《MySQL是怎样运行的》读书笔记第一次看这本书封面的时候,觉得这本书应该不会讲的有多好,因为封面看起来有一些幼稚,但是当我开始读这本书的时候,我发现是我错了,这本书讲的太好了,由浅入深的平缓学习曲线深深的吸引了我。在读第一章的时候,知道了Mysql是个什么“东西”,是怎么安装的,安装了以后有哪些文件,有哪些启动方式,有哪些连接方式,有哪些存储引擎。安装每个人都会,从知道mysql开始到现在,在windows,linux,macos上,我安装了mysql大概能有二三十次,但我从来没有研究过,目录下到底
2021-07-08 10:42:44 344
原创 读《Head First 设计模式》后的一些奇思妙想
读《Head First 设计模式》后的一些奇思妙想第一次接触这本书,是在刚毕业的时候,由一个对我非常好的14年工作经验的java架构师推荐于我,记忆尤深。他曾这样告诉我:看完这本书且融会贯通,你不一定会变得非常厉害,但你的思维一定足够开阔,代码的复用价值一定更高,最重要的一点,会ZGZ~ 但因为种种原因,一直拖着没有看多少,刚好这次慧读书,又看到了这本书,所以,决定本季度选择它。好了,步入正题!UML是面向接口编程(即OO)的通用语言。但是因为系统越做越复杂,功能越来越多,业务逻辑也越来越多,导致代码
2021-07-08 10:39:20 83
原创 java动态设置List<实体类>属性值-多数据时高效率方法
java动态设置List<实体类>属性值-多数据时高效率方法1、思路2、完整代码问题描述:30万个实体类集合,List size=30w 开始是用转Map的形式,速度极低,直接导致程序卡死,后换了一个方法。有另个List动态存放实体类的属性名,如果这个集合中不存在List的属性,那么就需要将所有实体类的这个不存在的属性设置成其他值或者null。1、思路参考Java 根据字段名称获取字段值, 根据字段名称设置字段值java获取对象属性类型、属性名称、属性值首先获取实体类的所有属
2021-03-12 12:01:11 3640 1
原创 Liquibase介绍和安装
Liquibase介绍和安装一、前言1.Liquibase 是什么官方原话:Track, version, and deploy database changes跟踪、管理和应用数据库变化其实就是一个将你的数据库脚本转化为xml格式保存起来。其中包含了你对数据库的改变,以及数据库的版本信息,方便数据的升级和回滚等操作。目前支持:MySql、Mari...
2021-01-19 11:17:35 1796
原创 liquibase的changelog详解
liquibase的changelog详解转载自两位大佬的文章,原文链接:https://zhuanlan.zhihu.com/p/157714666https://blog.csdn.net/a112626290/article/details/104263790二、changelog 详解1.什么是changelog?changelog 是 Liquibase 进行...
2021-01-19 08:41:05 7168
原创 检索 COM 类工厂中 CLSID 为 {xxx} 的组件失败,原因是出现以下错误: 8000401a 因为配置标识不正确,系统无法开始服务器进程。请检查用户名和密码。...
检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 8000401a 因为配置标识不正确,系统无法开始服务器进程。请检查用户名和密码。 (异常来自 HRESULT:0x8000401A)。1、问题背景用远程桌面连接服务器时,没有异常,但当未远程桌面连接服务器时,仍然报类似的错...
2021-01-08 18:44:35 2745
原创 springboot将多个文件压缩成zip流并通过ResponseEntity下载-不用将zip保存硬盘
springboot将多个文件压缩成zip流并通过ResponseEntity下载-不用将zip保存硬盘场景:之前遇到需要请求多个文件同时返回的问题,想到用zip压缩后返回的办法,但是奈何网上全都是先保存硬盘,在返回文件流,或者nginx代理下载文件的方式,亦或者是用其他种方式,反正最终都没有满意的。以下是通过使用springboot的ResponseEntity来直接返...
2021-01-05 10:24:38 5274 9
原创 ASP.NET的web程序无法打开系统exe应用的问题-配置DCOM
ASP.NET的web程序无法打开系统exe应用的问题-配置DCOM场景问题描述:在开发c#的ASP.NET的webapi的时候,有用到调用系统安装的应用exe的场景(可以当做调用excel吧), 在本地VS2019开发调用时完全无问题,但是发包IIS调用却始终不出来软件。解决方案:将需要调用的exe应用的DCOM的标识配置成交互式用户1、打开组建服务管理窗口...
2021-01-04 19:43:31 494
原创 Windows中IIS Express配置允许局域网访问
Windows中IIS Express配置允许局域网访问开发环境:VS2019、Win10家庭版今天考虑跟前端连调代码时候发现,IIS Express默认配置竟然是不支持局域网访问的,甚至127.0.0.1都不支持,仅支持localhost访问,查找了下相关文档,踩了不少坑。1、点击调试,启动IIS Express2、只有一个localhost的地址,点击“显示所...
2020-12-31 18:33:37 427
原创 java中将多文件字节流压缩成zip
java中将多文件字节流压缩成zip核心就是使用java.util.zip包中的ZipOutputStream直接上核心代码/** * * @param zipFilePath zip保存路径 * @param zipFileName zip文件名 * @param byteList 文件字节码Map,k:fileNam...
2020-12-31 12:48:45 2601 8
原创 c井WebApi的创建和简单实现
c#WebApi的创建和简单实现一、创建WebApi开发环境Vs2019创建请注意不要选成了VB的了然后点击下一步然后点击创建目录结构如下其他文件也请不要删除,因为接口help页面(就像swagger一样)会用到,除非不想要接口help然后再点击创建就会进入新建项目,然后再MVC(Models,Views,Controllers...
2020-12-30 20:53:10 591
原创 Java8之新的日期和时间API-LocalDateTime等的使用
Java8之新的日期和时间API-LocalDateTime等的使用第十二章 新的日期和时间API1、LocalDate、LocalTime、Instant、Duration 以及 Period1) 使用LocalDate和LocalTime创建一个LocalDate对象并读取其值LocalDate date = LocalDate.of(2014, 3, 18)...
2020-12-25 10:17:06 215
原创 Java8之用流收集数据
Java8之用流收集数据第六章 用流收集数据1、 toList()用法List<Transaction> transactions = transactionStream.collect(Collectors.toList());2、归约和汇总1)count/countinglong howManyDishes = menu.stream...
2020-12-23 23:56:30 136
原创 Java8之使用Optional
Java8之使用Optional第十章 用Optional取代null2、Optional 类入门防止出现NullPointerException原始代码-有个人,人有车,车有保险public class Person { private Car car; public Car getCar() { return car; }}public c...
2020-12-23 23:33:08 266
原创 《Java 8实战》学习笔记 -持续更新
《Java 8实战》学习笔记** 第一部分 **第三章、Lambda表达式1、基础概念BeforeComparator<Apple> byWeight = new Comparator<Apple>() { public int compare(Apple a1, Apple a2){ return a1.getWei...
2020-12-23 23:15:50 376
原创 Java8之重构代码
Java8之重构代码第7章 并行数据处理与性能1、将顺序流转换为并行流1)parallel方法:public static long parallelSum(long n) { return Stream.iterate(1L, i -> i + 1) .limit(n) .pa...
2020-12-23 21:51:55 379 1
本科/硕士论文去重工具
2020-05-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人