摘要:多线程开发的一些概念和线程生命周期 synchronized修饰的方法,在执行的时候,线程会被排序依次执行。这时,线程会被阻塞在对象的“锁池”中,只有一个线程会被执行。至于哪个线程被执行,需根据不同的虚拟机实现机制不同。 进入synchronized方法块的线程,会立即持有该对象的锁,并从“锁池”中 阅读全文
posted @ 2020-09-04 09:38 干IT的老人 阅读(93) 评论(0) 推荐(0) 编辑
摘要:private final void treeifyBin(Node<K,V>[] tab, int index) { Node<K,V> b; int n, sc; if (tab != null) { if ((n = tab.length) < MIN_TREEIFY_CAPACITY) tr 阅读全文
posted @ 2020-02-11 00:46 干IT的老人 阅读(203) 评论(0) 推荐(0) 编辑
摘要:重点看这部分代码 for (int j = 0; j < oldCap; ++j) { Node<K,V> e; if ((e = oldTab[j]) != null) { oldTab[j] = null; if (e.next == null) newTab[e.hash & (newCap 阅读全文
posted @ 2020-02-10 10:15 干IT的老人 阅读(82) 评论(0) 推荐(0) 编辑
摘要:pom.xml文件中packaging为jar 安装插件 用idea开发工具,点击右侧【maven project】先clean,然后再package,就会把jar包打进target目录中 maven会把项目打包成3个jar包,一块拷贝下来,放到服务器上。使用jar命令运行 阅读全文
posted @ 2018-11-23 22:45 干IT的老人 阅读(98) 评论(0) 推荐(0) 编辑
摘要:pom.xml application.properties domain: repository: controller: 启动程序 阅读全文
posted @ 2018-10-15 11:43 干IT的老人 阅读(6698) 评论(0) 推荐(0) 编辑
摘要:为了安装subclipse插件,费了很多周折,本来我以为直接用eclipse marketplace搜索安装就行,可是由于网络原因,安装不了。 然后下载安装包吧。目前从国内网站上下载不了支持subversion1.9的subclipse,所以只能从官网上下载。subversion和subclipse 阅读全文
posted @ 2018-10-02 10:11 干IT的老人 阅读(365) 评论(0) 推荐(0) 编辑
摘要:刚刚接触spring boot,其快速开发的特性吸引我去研究一下。于是我写了个demo,用spring boot内置的tomcat运行的很好,但是我需要把它部署到外部的tomcat中,于是从网上查找资料如何使用外部的tomcat,总是出问题。报错信息:Caused by: java.lang.NoS 阅读全文
posted @ 2017-12-21 15:32 干IT的老人 阅读(546) 评论(0) 推荐(0) 编辑
摘要:当我们在使用if else 的时候,你是否闻到代码的坏味道呢? 除非非常简单的逻辑,当我们在写一大坨if else的时候,就应该审视一下是否这样写合适呢?是否这一坨代码体现某一个业务语义呢?是否体现领域通用语言呢? 每一个if else 分支,往往是某一个业务实现,我们完全可以定义一个统一接口,然后 阅读全文
posted @ 2017-12-11 11:31 干IT的老人 阅读(58) 评论(0) 推荐(0) 编辑
摘要:在我们实现某个功能的时候,其实是可以先写完功能,再实现接口的。比如我们可以先梳理一下这个功能需要哪些方法,这些方法可以独立写到一个接口里,我们在写功能的时候直接调用接口,完成功能的代码编写,最后再把接口的实现代码补充上。岂不方便? 而这种方法,往往很多人会忽略,甚至不用接口,直接在代码中把功能实现。 阅读全文
posted @ 2017-12-11 11:14 干IT的老人 阅读(88) 评论(3) 推荐(0) 编辑