Java正则——正则表达式打印异常栈信息
需要用到hutool工具包
测试用例代码,输出异常栈前3行代码:
123456789101112String str = "java.lang.StringIndexOutOfBoundsException: String index out of range: 299\n" + "\tat java.lang.String.substring(String.java:1963)\n" + "\tat com.zenxton.exception.BusinessException.test1(BusinessException.java:32)\n" + "\tat com.zenxton.exception.BusinessException.test2(BusinessException.java:45)\n" + "\tat com.zenxton.exception.BusinessException.test2(BusinessEx ...
Centos8——解决无法播放Bilibili视频
安装VLC,参考VLC官网:https://www.videolan.org/vlc/download-redhat.html
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
yum install https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm
yum install vlc
岁月无声——黄家驹
千杯酒已喝下去都不醉
何况秋风秋雨
几多不对说在你口里
但也不感触一句
泪眼已吹干
无力再回望
山不再崎岖
但背影伴你疲累相对
沙不怕风吹
在某天定会凝聚
若我可再留下来
迫不得已唱下去的歌里
还有多少心碎
可否不要往后再倒退
让我不唏嘘一句
白发已沧桑
无梦再期望
山不再崎岖
但背影伴你疲累相对
沙不怕风吹
在某天定会凝聚
若我可再留下来
白发已沧桑
无梦再期望
山不再崎岖
但背影伴你疲累相对
沙不怕风吹
在某天定会凝聚
若我可再留下来
山不再崎岖
但背影伴你疲累相对
沙不怕风吹
在某天定会凝聚
若我可再留下来
Linux 常用命令
日志命令
cat
根据关键字查找前后10行 1cat stdout.log |grep -n -B10 -A10 'keyContent'
网络命令
netstat
MySQL——InnoDB索引高度求解过程
提示: InnoDB每页大小为16K,可通过 show GLOBAL VARIABLES like '%innodb_page%' 查看
假设: 每行记录大小1K,InnoDB指针占用6B,主键为bigint占用8B
求解过程:每页大小: 16K*1024 = 16384 B
每页存储非叶子节点数:每页大小/指针+主键占用 16384/(6+8) = 1170个
每页可存储叶子节点数:每页大小/每行记录大小 16K/1K = 16个
高度为2的可存储行数:非叶子节点个数(也就是高度1可存储数量)*每页可存储叶子节点数 1170*16 = 18736个
高度为3的可存储行数: 非叶子节点个数(也就是高度1,2可存储数量)*每页可存储叶子节点数,这也是为什么建议当数据超过2千万条建议分表的原因 1170*1170*16 = 21902400个
总结:以上可以得出如果想知道一个数有多高,那么必须要知道每行记录的大小,假设还是每行记录大小为1K,那么一页就是16行,总行数C,那么反推公式就是
H=log1170(C/16)
H==整 ...
MySQL——视图查询报错ERROR 1045 (28000): Access denied for user 'test1'@'%' (using password: YES)
1.用户geek996创建视图test_view
1create view test_view as select * from account;
2.用户test1查询视图正常
3.删除用户 geek996
1drop user geek996
4.用户test查询视图报错
总结因为创建该视图的账号被删除,导致无法获取该视图的定义者出错
另一个错误View 'xxx' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them是因为创建该视图的账户降权导致
Shell——定时执行脚本备份文件
1.创建可执行sh文件 backup.sh
1vi backup.sh
2.授权可执行
1chmod +x backup.sh
3.编辑脚本
12345678910111213141516171819#!/bin/sh#备份路径 定义变量用单引号backup_path='/tmp/backup'#备份数据路径backup_file='/xxx/xxx'#如果备份路径不存在则创建if [ ! -d "$backup_path" ]; then mkdir $backup_pathfi#删除之前的备份文件rm ${backup_path}/blog-backup-*.tar.gz#拼接打包命令执行"`tar -zcvf ${backup_path}/blog-backup-$(date +%F).tar.gz ${backup_file}`"
4.添加定时任务
1crontab -e
5.设置每天凌晨1点1分执行
101 01 * * * /x ...
时间复杂度与空间复杂度
作者:双子孤狼链接:https://www.cnblogs.com/lonely-wolf/p/15674526.html来源:博客园
前言作为一名“程序猿”,大家应该都听过这么一句话:程序=数据结构+算法。
这句话是由瑞士计算机科学家尼古拉斯·沃斯(Niklaus Wirth)在 1984 年获得图灵奖时说的一句话,这位大佬还以这句话为名出了一本书《Algorithms + Data Structures=Programs》,从此这句话就成为了大家耳熟能详的一句名言。
随着时间的推移,不管这句话是不是非常准确,但至少能说明数据结构与算法对程序来说是非常核心的基础,如果我们想要写出更多优秀优雅的代码,那么数据结构与算法是必须要掌握好的。
为什么要学习算法很多人可能觉得,我不会算法,代码一样写得很”溜”,算法这东西似乎用处不大。现在互联网的发达,我们想要什么几乎都可以在网上找到现成的,各种框架功能十分强大,似乎看起来确实不用算法也可以写出“好代码”。然而假如我们不懂算法,比如项目中用到了排序,我们如何评估代码的执行效率?再比如最常用的 ArrayList 和 LinkedList,我 ...