惊喜四月(2021)

这篇总结其实是差不多要五月底才写的……

四月最好的莫过于寻得了一位好伴侣。

她温柔善良,美丽大方,明辨是非,待我极好,也正是因为处于这般幸福的日子里,我才迟迟没有写出对四月的总结。

虽然我们俩认识时间并不长,但我就有一种感觉很温暖舒服,她为人很不错也不喜整那些个花里胡哨的。我也算是个直肠,有很多地方做得不好也会惹她生气,不过好在她气来得快消得也快,不然可真难到我了。

小妹小我几月,着实可爱。好姑娘可不多,我真幸运能够遇见她,必得好好珍惜!

五一果断带她回家见了父母,父母也是十分喜爱她,直夸她好姑娘俊俏懂礼貌。

生活的新篇章开启了,为了未来为了目标还是得努力努力努力啊。

身边相识的同事一个接一个离去,也不知在这家公司还能呆到何时。


匆赶三月(2021)

刚过完年,组内人员就少了两,即将三……

令人放松、悠闲的二月匆匆过去,转头来便是深夜地铁,沾床就睡的三月。

公司里呆着超过一年的就算老员工了,很快,我就是老员工了……

人员的减少不可避免伴随工作量的增多,再加上项目的紧张,结果就是没有双休的周末和每晚疲惫的身躯。

就这样吧,Q2开始了,Q1又延期了……


事务嵌套使用注意点

最近在项目中需要用到事务嵌套使用,即方法 A 中调用方法 B,A 和 B 都有事务控制,且方法 B 的事务独立于 A,为一个独立新事务。

刚开始用默认的事务类型 PROPAGATION_REQUIRED,结果当然是失败了。后来查找了事务的类型以及事务传播机制,简单列一下如下:

  • PROPAGATION_REQUIRED 表示如果当前事务存在,则支持当前事务。否则,会启动一个新的事务。默认的事务类型。
  • PROPAGATION_SUPPORTS 表示如果当前事务存在,则支持当前事务,如果当前没有事务,就以非事务方式执行。
  • PROPAGATION_MANDATORY 表示如果当前事务存在,则支持当前事务,如果当前没有事务,则返回事务嵌套错误。
  • PROPAGATION_REQUIRES_NEW 表示新建一个全新 Session 开启一个全新事务,如果当前存在事务,则把当前事务挂起。
  • PROPAGATION_NOT_SUPPORTED 表示以非事务方式执行操作,如果当前存在事务,则新建一个Session以非事务方式执行操作,把当前事务挂起。
  • PROPAGATION_NEVER 表示以非事务方式执行操作,如果当前存在事务,则返回事务嵌套错误。
  • PROPAGATION_NESTED 表示如果当前事务存在,则在嵌套事务内执行,如嵌套事务回滚,则只会在嵌套事务内回滚,不会影响当前事务。如果当前没有事务,则进行与 PROPAGATION_REQUIRED 类似的操作。
  • PROPAGATION_NOT_REQUIRED 表示如果当前没有事务,就新建一个事务,否则返回错误。

了解了事务类型以及其传播机制之后,结合业务我当然选择了 PROPAGATION_REQUIRES_NEW

当我以为一切就将迎刃而解之时,debug…,what!!为什么没有生效!!

然后我又在知识海洋中继续搜寻蛛丝马迹,渴求那些曾与我一同有此境遇的可怜人的良方。

最终在几年前的帖子中终于找到了我想要的解决方案:

方法 B 需要写在另一个类中,不能跟方法 A 写在一个类里面,不然就不会生效!

详情可看该文章:spring事务@Transactional在同一个类中的方法调用不生效

简单来说就是: Spring 采用动态代理(AOP)实现对 bean 的管理和切片,它为我们的每个 class 生成一个代理对象。只有在代理对象之间进行调用时,可以触发切面逻辑。而触发切面逻辑才会进入事务拦截器从而加入到事务管理器中让事务生效!

记录一下。


放松二月(2021)

讲真,不上班自由的时间是真的放松!

自打记事以来,今年是在外头过得第一个年。年夜饭就跟平时一个样,哦不对,那还是有点不一样,来上海自做还没有一次性上桌过这么些个菜,丰盛是挺丰盛的。

老妈果然给我寄了好些个年货,我最爱的山核桃还有开心果,感谢老妈!

大过年的在外头也没什么事做,天天凌晨才睡觉,然后睡到中午,起来随便一顿吃又开始坐在电脑前捣鼓。出去看了几场电影,感觉今年留沪的人应该不少,影院人还是挺多的。这几天刷了一遍《灌篮高手》动漫,经典永不超越,一群平凡人为着梦想努力拼搏,太热血了。看完特地又买了个篮球,不免想起了自己小学放学后的篮球时光。已经记不得是我哪一年的生日,那天放学后回家看到桌上有一个崭新的篮球,是爸妈给我的生日礼物。从那天开始,我只要有空就会去附近的篮球场,当时个子小又没什么力气,大多时间都是乱抛乱甩自娱自乐,到后来开始自己拍球抛球。有一说一,当时同龄人中我的个子也不算矮,球技也不错,年少无知一统球场!不过后来上初中后开始就不怎么接触篮球了,所以导致现在虽然能打打球但水平也就那样了……

有梦想谁都了不起!

这几天看完了村上春树的《挪威的森林》,看完很有感触,有时候觉得自己跟渡边是多么得相似。村上这部小说写得很直白露骨,看完可能会有些许的压抑也可能会让你瞬间成长一些。就引用译序中我认为非常能概括此书的一段话吧:其间无数读者来信朝我这个译者手里飞来,每三封就有两封谈《挪威的森林》,或为故事的情节所吸引,或为主人公的个性所打动,或为韵味的别具一格所感染,或为语言的洗炼优美所陶醉。有人说像小河虾纤细的触角刺破自己的泪腺,有人说像静夜如水的月光抚慰自己孤独的心灵,有人说引领自己走出四顾茫然的青春沼泽,有人说让人刻骨铭心地懂得了什么叫成长……

又把《SHOE DOG 鞋狗》看完了,耐克创始人菲尔·奈特亲笔自传,看完后我算是对耐克的历史有了更深刻的了解。整本书看的过程中不像一般的自传吹嘘种种,更像是一本小说,按照时间线将故事娓娓道来,讲述了成功路上的坎坷。总之看的很过瘾,一部体育巨头的成长史。

一眨眼这个年也就这样过去了,又要重复打工人的生活了。


又是一月(2021)

时光追不上白马……

时隔一年,疫情还是没有得到完全控制,去年年前湖北严重,今年河北好像稍微严重一些,难不成今年是要在外头过年了吗?元旦回去倒还是较为顺利,并没有什么额外繁琐的步骤也没有强制要求核酸检测,不知年前会怎样。

今天刚公司年会回来,相较之前参加的公司年会来说规模是更大一些的。不过这又有何用,阳光照样照我脸上……年会占用了周末时间,宾馆住了一晚,说实在的,除了抽奖那会会比较激动,其余也就那样了,在奉贤那边,周边也没有什么好的娱乐地方,也就只能打打牌了。

哪知道形势变得这么快,上海前几天出了几例,黄浦区变成了中风险地区,公司进出都得戴口罩验体验看健康码。上头文件下来进出沪都得做核酸检测还得隔离,这不明摆着过年回不去了嘛,真的得在外头过年了?从小到大记忆中还没有自己一个人在外头过过年,一想到这强烈的孤独感就涌上来。事态都不知道会往哪个方向发展,任何微小的事物都有改变世界的能力。在很多情况下,现状逆着常态走,一个一个意外外力无情助推。“无知”是福,悟懂这个可不容易啊。

差不离了,留沪过年。还好有个会做饭的室友也留沪,不然我得泡面面包吃到吐。本来长大后就觉得过年也就那样没啥劲了,这下倒好,真就成了一个长周末了,一点点年味儿都没得咯。现在想想自己还要在外面漂多久,这个过年就只有老爸老妈两人,为人子却不能陪伴其右,是一种不孝吧。

大家都在改变,社会在改变,国家也在改变。很多方式从未尝试我们也在积极适应。前十年二十年是科技互联网改变生活,现在今后怕很长一段时间就是环境改变生活。这么说确实有一点可怕,就好像是因果,前者发展破坏后者,后者又开始影响生活。

刚跟父母说了过年不回家的事,老妈就说要不要给我寄点吃的,真的很感动。再听她说今年就只有她跟爸两人过除夕了,又很难受。自知事以后还真是没有在外头过过除夕,感触。

时间真的,快得很。


你好,而已

你好,贰壹。 我也不过二五而已。

2020 年是非常特殊的一年,这一年,想必后人们想起都会觉得不可思议。

多灾的世界,多难的中国。


当人们在尽情畅想未来科技的时候,却对病毒无计奈何;

当人们在深信自我足够强大的时候,却被现实无情折磨;

当人们在赌场世界满心欢喜的时候,转身却变成了他人镰刀下的绿韭。


年初,人心惶惶,外面世界纷扰,国人祈祷,愿早日安康。

那时,每日早起睁眼第一件事就是查看疫情动态,由于无法自由出门,在家一待就是两个月。

这一年,也算是过了一个最长的寒假。

而就在 1 月 26 日,黑曼巴遇难的消息传开,随后各大媒体开始证实,朋友圈也迅速扩开这个噩耗。享年 41 岁,科比·比恩·布莱恩特,黑曼巴精神影响了许许多多的人,不说再见。

疫情还未控制,东非地区蝗灾肆虐,数量之多几十年未见,一度导致人们有了当年疯抢粮食的念头。也确实那时候的蔬菜价格涨得很快,再加上非洲猪瘟的发生,猪肉价格直接翻了好几倍,以前的十块左右一斤到了如今的三四十一斤。而到了现在,猪肉价格也没有怎么降下来,人们的消费确实是大头,也难怪这一年的白酒股都疯了。

衣食住行,亘古不变。

喝酒吃药,喝酒开车。

3 月,国际油价暴跌,美国股市熔断了 4 次,巴菲特……

120 天缓冲期过后,美国商务部针对华为及其子公司的芯片升级禁令正式生效。从 9 月 15 日起,台积电、高通、联发科等公司正式“断供”华为。这一天将作为标志性的一天,载入中国芯片及半导体研发历史。

11 月 25 日,国家主席习近平致电约瑟夫·拜登,祝贺他当选美国总统。


这一年发生的事情,会改变许许多多人的观念想法。

这一年走到了现在,人性也总归人性,你是不是也忘记了年初自己定下的目标。

人们都是感性生物,会随着伴随场景氛围不同产生不同的激素,而当激素消褪之后一切也慢慢随之变得平静。

年初我呆在家,网络上电视上都是关于疫情防控,看着生命一直是这么脆弱,于是今年只给自己定了一个目标:活下去!

现在,我实现了这个目标,并可以说完成得很好。


2020,我给自己新添置了几双鞋;

2020,我给自己新添置了几本书;

2020,我给自己新添置了几件衣服;

2020,我给自己新添置了几个手办;

2020,还新加入了两个麝香宝宝生命。

年初的漫长开篇,现在也要走到了结尾。

没有过不去的坎,没有迈不过的沟,年年都有烦心事,就让那些烦心事在此刻都滚蛋吧!

你好,21!


Shell 脚本定时重启项目

是时候解放双手了。

前言

自己很早之前就买了一台阿里云服务器,当时新用户买的时候很便宜后来每年续费简直贵得离谱。要不是我已经装了很多东西,还有我的懒(换服务器还需要重新配置和备案)。当然这跟我下面要说的关系不是很大。

我一直以来用这服务器只是为了挂自己的博客和几个很早之前练手的小项目,结果发现这破服务器总是会把我的项目进程给干掉,等我偶尔访问的时候发现早已经打不开小网站了,相当郁闷。

终于,今天我实在是忍不了了。

解决方案

想了想,最简单的解决方案就是我写个定时脚本去定时重启项目。这下我管你正不正常,直接给你重启了。通过网上资料的搜集和我自己的测试,不一会就搞定了,问题不大(以前也就懒,早应该弄了)。

实现脚本具体如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/bin/bash

echo "===start==="
tt=$(date "+%Y-%m-%d %H:%M:%S")
echo $tt

# kill
faceshow_pid=$(ps -ef | grep 'faceshow.jar' | grep -v grep | awk '{print $2}')
if [ -z $faceshow_pid ] ;then
echo "faceshow not exist"
else
echo "faceshow_pid: $faceshow_pid"
kill -9 ${faceshow_pid}
echo "faceshow killed"
fi
mishow_pid=$(ps -ef | grep 'mishow.jar' | grep -v grep | awk '{print $2}')
if [ -z $mishow_pid ] ;then
echo "mishow not exist"
else
echo "mishow_pid: $mishow_pid"
kill -9 ${mishow_pid}
echo "mishow killed"
fi

# start
nohup /usr/local/java/jdk1.8.0_171/bin/java -jar /usr/local/jar/faceshow.jar >/usr/local/jar/log/faceshow.log 2>&1 &
echo "faceshow restarted"

nohup /usr/local/java/jdk1.8.0_171/bin/java -jar /usr/local/jar/mishow.jar >/usr/local/jar/log/mishow.log 2>&1 &
echo "mishow restarted"

echo "===end==="

当然还有很多可以简洁的地方,可以慢慢搞。

说明点:

  • $(date "+%Y-%m-%d %H:%M:%S") 格式化当前时间 如:2020-11-29 16:45:01
  • grep -v grep 过滤 grep 自身进程
  • 空格该有的有,不该有的不要有
  • 执行脚本内指定需要写全路径,不然可能会报错找不到某某指令

脚本写好后 用 crontab 定时执行就可以了。

最后

脚本还是很重要的,平时绝大多数事情脚本都可以帮我们实现,科技不就是脚本实现化吗。


细聊十一月(2020)

这个月,让我们来好好聊一聊。

首先第一件事比较伤感,几个月前买的小剃刀在几天前发现丧命在了玻璃缸中。我已经把水位调得很低了而且都已经适应了一两个月,不知道为什么突然就好像是溺水了。而同缸中的两只小麝香一点事都没有,活蹦乱跳的,不知道是麝香比较好养还是这件事与麝香有关。真的很可惜,是只好苗子,我本准备好好培养的,现在就剩下两只小麝香长大不知会变成怎样。

今年双十一还没有开始,我已经花掉了万把块钱了。本来以为 Mate 40 Pro 会一时半会买不到,结果一号凌晨一下子就给抢着了,同时还买了件波司登的羽绒服。第一次买这么贵的衣服,心疼得不得了啊,不过东西到手质感确实有,冬天就指着这件了,明年再给老爸整一件,今年确实有点伤。钱钱赚不着,花钱有一套,要能像我室友一样把持得住不花钱估计还能多攒不少。

去年报名参加的横马跑着了,值啊。赛道差不多把那些个景点都给穿过去了,明清宫苑出发,穿过秦王宫再到清明上河图,再从圆明新园穿过又回到明清宫苑。爽,满足,成绩不重要。8 号开赛,我是先回了趟家顺便把家里老旧电脑换了一下,然后 7 号从义乌坐车去横店。横店离家也不远,但是我以前就是没去过,这次我姐开车来接我回去顺道全家一起过来逛了一下。我跑完往取物点走结果就在路上看到了我老爸老妈老姐还有我那可爱的小外甥女,因为我没有带手机一起跑就没收到信息。集合之后一家人去附近吃了顿潮汕火锅,吃完后我就先回宾馆洗澡换衣服,然后再一起去秦王宫逛了逛,累,但是非常满足。毕竟我们一家人一起出来玩的机会很少,特别是我一年在家也呆不上几天,上次全家出去玩还是那个玻璃栈道,以后真得多找点这种时间去一起逛逛玩玩。

老爸想要我回去可以在义乌找个工作,离家近房价也不至于太高。虽然在上海这几年没赚到什么钱但是回去什么时候都能回去,我给自己的期限是到 2022 年,要是到时候还是看不到希望就回去发展了,毕竟回去环境也不算太差,工作还是能找到的。这几年只想多攒点钱,看能不能赶上什么浪潮。

前段时间买的 911 乐高拼了几天了,下班回来拼一会,拼到七八十的时候发现找不到个零件了,然后就这么先放着,官网自助申补好几次终于成功了,居然一个零件要从丹麦寄过来,不可思议。我只知道至少要搁置个把星期。看着说明一步步零件拼搭,看着底盘座椅方向盘转动轴轮子慢慢完整,成就感还是有的。男人的快乐就是这么简单。

下了一星期雨,温度直线下降到十度以下,还真是不给反应。给自己添置添置衣物,办公室常年空调二十几度,里面短袖外头羽绒服,要那么多衣服何用,脱了穿穿了脱。这种天气还是适合窝在被窝里,看着书或是看着电视剧。说到电视剧,最近在看一部美剧《无耻之徒》,老美还真是什么都敢拍出来,很底层很现实。

今天是 2020-11-29,距离过年还有 74 天。


碌碌十月(2020)

看这一年写的博文就知道了,今年又没有什么技术上的深入。不知道都在忙些什么。

国庆节回家也没干啥事,参加了表姐的婚礼,然后就在家呆着,看完了两部电视剧。外甥女胖乎乎的,见着都说是个小胖子,不乖,我抱着时间长就闹腾。

国庆期间在网上把电脑配件都买了,加上显示器花了 6k+,10400F+B460 组合,大学室长推荐,性价比确实高平时玩玩足以,比之前那配置肯定好得多得多了。刚好下月横店半马开始,请个假回趟家把家里那台古董机给换了。

换了电脑体验飞起,从此走上大型单机端游不归路。就这几天 steam 上又花了几百了,看着都在打折做活动就没忍住,之前大表哥打折时候没买刚好先把 GTA5 和古墓 10 玩了先,现在的游戏体验度确实很不错,沉浸式剧情体验加上 VR 的话肯定更爽,就是太费时间了。总感觉游戏娱乐行业有一股力量一直在潜伏,不久的将来就会一下子爆发起来,我是坚定看好娱乐行业,物质满足之后总是要追求精神的,何况精神上某种程度可以暂时弥补物质上的缺失。随着科技突破,软硬件的提升所带来的娱乐门槛的降低,不需多久,可期。

前段时间报了个上海百威 10km 健康跑,绕着世纪公园跑两圈。我和一同事一起参加,结果跑着跑着我就不见他的车尾灯了,等我到终点时他已经在那休息了十五分钟……体验还行,赞助商安德玛的速干T恤款式和质量也不孬。下月的半马坚持到终点就成,重在参与,重在健身。

最近也是,下班也早不了,公司也慢慢开始多了些硬性要求。今天 1024 也逃不开在公司“聚会”的命运,打工人不易啊。

今年就等着 HUAWEI Mate40 发布准备换机呢,结果货少搞饥饿营销,想买还买不着。不会这次真成了华为手机绝唱麒麟芯片吧,手机价格三年翻一番,今年也受到各种被老美压制的影响,电子产品都多多少少涨了不少。等过段时间货都放出来了准备买一款绿色的,款式还挺中意,就不知道什么时候才能买得到了。


入秋九月(2020)

上海没有春秋,只有夏冬。上周五三十五,这周一二十五,抖擞。

运动篇

今年不是换了家公司么,一天来回出勤都得花两个小时在地铁上,时间肯定没那么充裕,好几天回来就想倒头睡了。

前几天去浙江余姚跑了今年第一场半马,今年第一跑果然不争气,路上走了小一半路段,成绩不忍直视。不知道是不是受疫情影响,主办方感觉也没怎么用心,不过本来也就是市区自个儿组织办的,规模也不大,报名费也便宜,权当体验。环了一圈四明湖,路段是没有上次嘉善那么舒服,不过当天天气也是还不错,跑到后面右大腿韧带感觉快要拉伤了,跑不动那就环湖走呗。

去年还报了场横店的半马,到现在都没有消息,今年肯定是黄了。

公司附近的无人健身房终于开始营业了,下次找个时间去瞧瞧,还没去过无人健身房体验呢。刚开业看价格也不贵,挺适合像我这种不定期偶尔练练的。

宠物篇

我不是有一只 17 年就养着的北美鳄么,最近看原先买的缸对他来说有点偏小了而且他的食量也越来越大,现在都有 27 公分了。于是我就想着看随缘给转了,也好比被室友天天折磨(居然拿五粮液往里倒,五粮液不要钱啊)。挂闲鱼上了,很便宜的价格,差不多就是半卖半送的,当然很快就有买家联系我了。本来我标的就是仅自提,我也没寄过活物也怕麻烦。后来跟湖南买家聊着感觉还不错,买回去也是真的自己要养的,我就答应了看看能不能寄。结果就是,跑了附近所有的快递站都不给寄,顺丰啊德邦啊邮政啊全都不给寄。这交易就黄了,关键我还在网上已经买了两只麝香苗准备替代这只“狠王”……这下好了,旧的没去新的还来了,只能这样了,入坑就难爬出来咯。

经过这次事件,我应该不会再卖了,“狠王”就此逃过一劫,也是与我缘分未尽。

不住在自己的房子里就是这种各样的麻烦事,东西也不敢置办,想买点大点的玩意儿就是令人头疼,也不能随心所欲倒腾。

游戏篇

今天重新下了 Steam,听同事说的古墓经典还不错,就花了六十几买了个古墓 9,玩了一下午。跟着剧情一点点走,沉浸式体验,很过瘾。虽然是 13 年出的,画面还是比较细腻的,我这破电脑烂显示器看着也都很舒服,值得体验。年底准备置换电脑,顺带把家里用了十来年的电脑给换了,还得换手机,这一下又得万把块咯。玩游戏虽然费时间,但是能偶尔空闲的时候体验下精美游戏也是种享受,就是有瘾玩了停不下来。等换电脑就把荒野 2 体验下,好评如潮,国内近十年怕是都出不了这种游戏。


明天就是中秋加国庆了,可以回家好好休息几天,这一年一下子又要过去咯。