名字,袋鼠。WeChat:lihao33499
Senior backend engineer based in Tokyo.
喜欢一些话,分享给大家:
坚持做正确的事情。
追求卓越,成功会来找你。
努力到感动上天,上天会来帮你的。
前言:
下面是自己在家动手做的一些小demo。按照时间先后,记录下来。
1.SSM框架 从零开始搭建
Git path:https://github.com/lihao5257/lihao01.git
工作中用的比较多,但是还是独自从零开始做一遍的机会较少。思路比较简单,jar包,spring和mybatis 的整合,之后写个单元测试验证一下,之后与SpringMVC整合,web.xml文件的配置。过程中遇到些小问题,很快就解决了。但是有一个问题花的时间比较久。
问题描述:
使用了注解,在启动工程时,报错,没找到绑定的bean。这个东西,乍一看,认为原因很简单,肯定是注解哪里遗漏,可是查了两遍,发现注解部分没有问题啊!!!后来查明了原因。
解决方法:
在web.xml文件中,下面的监听器,我没有加上。
1 <listener> 2 <description>spring监听器</description> 3 <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 4 </listener>
这个监听器有什么作用?在创建servlet容器的时候,创建Spring容器,并加载我们在context-param中配置的contextConfigLocation。
在这里再说一下,Spring容器和SpringMVC容器的关系。
Spring容器的启动是先于SpringMVC容器的,可以把Spring的容器看作父容器,SpringMVC的看作子容器。因为启动的先后顺序,所以,父容器不能使用子容器的bean,但是子容器可以使用父容器的bean。
2.短链接服务系统开发
Git path:https://github.com/lihao5257/lihao01.git
我看了一位前辈写的博文,觉得挺好的,就照着他的博客里的记述,自己动手实践。
博文:https://javadoop.com/post/url-shortener
(项目里面用到Guava cache ,找到了一片博文 http://bylijinnan.iteye.com/blog/2225074
里面讲Guava cache的主要知识点都涵盖了,推荐!有小伙伴不懂的,可以给我留言)
3.群发百万封邮件
想弄个带有自己名字域名的邮件,并且想群发百万邮件爽一爽。写着玩。目前,已经实现客户端正常接收、发送多封邮件。至于群发百万邮件,失败。
(失败原因,网络方面太多的限制,白名单设置等。最终运维,网络安全方面的限制,停下了。)
4.DSL语言控制流程
看到美团海盗中间件的一篇文章,很有感悟。
原文:https://tech.meituan.com/sep_service_arrange.html
因为美团的海盗中间件还未开源,自己想立个项目,创建一个类似的海盗开源中间件。
2019/02/19 追记
工作加班,现在正在coding。。。
2019/10/21 追记
放弃,思路凌乱!!!
5.蚂蚁金服开源项目 SOFARPC
负责H2的TLS部分,东西不难,挺有趣,学到很多知识,交到朋友。已提交代码,并且被采纳。
这是参与的第一个开源项目,有些紧张,但是,负责人很nice,也给了许多帮助。途中,解决一个个问题,到最后成功搞定,很有成就感。以后继续多多参与开源项目。
6.Elastic Search
想用Elastic Search 做点小东西,思考中。。。
2020/04/23 追记
筛选情侣号的一个小场景。
数据源有20,000,000个号码,需要后八位一样的号码为情侣号。将这些号码,插入到ElasticSearch中,进行索引。所有号码都放到索引A中,情侣号码放在索引B中。
上面是整个场景的构思。目前coding中。完成后,会写成一个博客,记录相关内容。
---------------------------------------------------------------------------------------------------------------------------------------------------------
读过的书籍:
《淘宝技术这十年》 子柳
书的内容写的一个长期的淘宝网站变化过程,具体的技术细节无法描述,但是对于掌握网站整体的脉络,还是有好处的。一天就可以读完,建议下载PDF版本阅读。
《Spring源码深度解析》 郝佳
我是工作一年后,阅读的这本书籍,当时啃了3个月,把第一部分核心实现(容器、bean)弄懂。啃得蛮辛苦的,经历了这么多年的框架肯定十分复杂,一遍遍读,一点点跟着作者跟踪源码分析,自己也学着画UML图,收获还是蛮大的。自此,再看其它源码,心中没有畏惧了。适合在校生和刚毕业人员多多阅读。
《GRE词汇精选》
过了英语6级,有些懈怠,不爱背单词了,发现还是词汇匮乏,因此买了这本书,闲暇时背几个单词消遣时间。在国外工作,一个人的外语水平决定了发展的上限。语言这个东西一定要多使用,有机会的话就把自己放在外语的环境里磨炼,或是工作中查询google英文的搜索,少用百度进行工作相关的东西。
《Thinking in java》Bruce Eckel
Java经典书籍,不多说了。读了能有6、7遍了吧,帮助个人对Java语言的了解。
《Java并发编程实战》 Brian Goetz 与他人共同编写
并发经典书籍,补强了并发方面的基本功。随着能力的增长,不同时间读这本书,收获各有不同,强烈推荐。书中翻译的内容,确实略有瑕疵,但是能翻译到这样,已经非常不容易。请将精力放到书中的讲解的精华上面,一些错别字或是语义简单的不通,请忽略。
。。。
好的链接、资源:
1.http://www.ruanyifeng.com/blog/
阮一峰老师博客,每周【更新科学爱好者周刊】,值得一看。
2.https://www.javadoop.com/
一位前辈,博客里不浮躁,不做作,认真求实的态度值得学习。干货很多。文章更新较慢(一是因为工作忙,二是确实需要大量时间来完成一篇优质文章)。
3.https://nomadlist.com/
fantastic app helping people explore the world !
4.https://docker-curriculum.com/
docker toturial 从0开始学习docker,里面讲解的非常好。而且,还告诉你在亚马逊云上玩。很有趣。
5.https://nickcraver.com/
StackOverflow engineer写的博客,非常棒。整个网站的架构情况,里面写的很清楚。
陆续更新中。。。