文章目录
学习心得
原文:为学日益,为道日损。
译文:求学之人的学问一天胜过一天,求道之人的欲念一天比一天少。
这句话告诉我们,要想学问精进,就要不停的学习。如果你掌握了某一个方法或者思维就觉得天下无敌了,那就是为道而不是为学的范畴了,是欲念减少了。另一方面想:警惕自己不再追求进步了!
环境配置
Python 虚拟环境配置
在当前目录下创建虚拟环境,直接上代码:
python3 -m venv ./
配置了虚拟环境主要是解决Python版本以及包依赖的问题,各个项目各自独立,省心不少。
Mac brew全自动安装
发现一个超级好用,速度又快的brew安装方法,记录一下。
直接使用命令:
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
后面就跟着提示一步一步往下走就好了。
java基础
【LocalDate】获取两个日期间相差的年数、月数、天数
- 常见的错误做法!!!
比如获取相差月:使用Period.between(date1,date2).getMonth()
LocalDate date1 = LocalDate.of(2022,2,10);
LocalDate date2 = LocalDate.of(2022,3,8);
LocalDate date3 = LocalDate.of(2022,1,20);
LocalDate date4 = LocalDate.of(2020,1,20);
System.out.println(Period.between(date1, date2).getMonths());
System.out.println(Period.between(date3, date1).getMonths());
System.out.println(Period.between(date4, date1).getMonths());
输出值:0 0 0
,显然不是我们想要的。
- 正确做法
LocalDate date1 = LocalDate.of(2022, 2, 10);
LocalDate date2 = LocalDate.of(2020, 1, 20);
//年差
int years = date1.getYear() - date2.getYear();
//月差
int months = years * 12 + (date1.getMonthValue() - date2.getMonthValue());
//天差
long days = date1.toEpochDay() - date2.toEpochDay();
System.out.println(years);
System.out.println(months);
System.out.println(days);
mysql基础
【mysql】mysql随机函数RAND()的使用&案例
- 使用方式
函数的返回值是一个介于0和1之间的浮点数。
- rand()
纯随机,即每次调用都不同 - rand(x)
x是种子,随机指定,相同种子每次调用产生的数据相同,比如:
select RAND(1) from dual
调用多次,输出结果都是:0.40540353712197724
select RAND(1) from table_name limit 3;
结果:(多次调用结果都如下)
0.40540353712197724 -- 第一行与上面相同,后面的不同
0.8716141803857071
0.1418603212962489
- 使用案例
- 场景1:随机查询出一条记录
比如:对新注册的用户随机获取一个昵称,可以这么写:
SELECT t1.* FROM t_nickname AS t1
JOIN ( SELECT ROUND( RAND()*( SELECT MAX( id ) FROM t_nickname )) AS id ) AS t2
WHERE
t1.id >= t2.id
ORDER BY t1.id
LIMIT 1;
- 场景2:给数据库字段随机赋值
比如:表中数据本身是有序的,为了查出时加入随机性,可以在表中添加一个sort_num字段,然后给sort_num字段随机赋值,然后查询时按照sort_num排序查出。
update table_name
set sort_num = FLOOR( 1 + RAND() * (100000000 - 1)) ;
应用
实现一个springboot-starter将错误日志发送到钉钉群
平时需要监控应用运行过程中的错误,写了个springboot-starter实时将应用错误日志发送到钉钉群,有兴趣的朋友可以参考或者直接拿来用。
地址: dingtalk-log-springboot-starter
python wordcloud&jieba生成中文词云
import wordcloud
import jieba
f = open('/Users/xx/Desktop/平凡的世界.txt','r')
words = []
text = f.read()
seg_list = jieba.cut(text, cut_all=True)
for word in seg_list:
if len(word) == 1:
continue
else:
words.append(word)
result_txt = ' '.join(words)
# 中文需要指定字体,不然显示乱码
w = wordcloud.WordCloud(width=1000,height=1000,font_path='/System/Library/Fonts/PingFang.ttc')
w.generate(result_txt)
w.to_file('/Users/xx/Desktop/平凡的世界.png')