原创 通知與等待原理分析(wait、notify、notifyAll)

生產者消費者模型是我們學習多線程知識的一個經典案例,一個典型的生產者消費者模型如下: public void produce() { synchronized (this) { while (mB

原创 super和this關鍵字的理解

super和this都是引用,指向同一個內存地址,不一樣的是對這兩個東西的解釋,這要從類的內存佈局說起。 一個class,如果繼承於其他類,那麼前面的內存部分是父類的東西,後面部分纔是自己的,當你訪問父類,只要能把this轉成父類引用,編

原创 tomcat配置文件context.xml和server.xml分析

在tomcat 5.5之前        Context體現在/conf/server.xml中的Host裏的<Context>元素,它由Context接口定義。每個<Context元素代表了運行在虛擬主機上的單個Web應用在tomcat

原创 HttpClient發送get/post請求

1.需要的maven依賴: <!--httpClient需要的依賴--> <dependency> <groupId>org.apache.httpcomponents</groupId>

原创 Jdk1.8日期和時間

Java 8 在java.time包下推出了一組全新的時間日期API,涵蓋了日期、時間、日期時間、時區、時刻、間隔、時鐘等      新的java.time包下的所有類都是不可變類型而且線程安全的,解決了在此之前日期時間中存在的線程安全、

原创 JDK(Java Development Kit)內置常用自帶工具

  工具名稱 描述 appletviewer.exe 用於運行並瀏覽applet小程序。 apt.exe 註解處理工具(Annotation Processing Tool),主要用於註解處理。 extcheck.exe 擴展檢測工具,

原创 Excel的導入和導出功能(POI)

Maven <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.14</version><

原创 SpringBoot 配置文件 application.yml(application.properties) 配置大全

參考網址:https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html 可以在application.p

原创 Tomcat+Spring中的幾個ApplicationContext以及它們的關係

我們以只有1個Servlet的簡單情況爲例,一般涉及到3個配置文件:web.xml,applicationContext.xml,xxx-servlet.xml。 web.xml: <context-param> <p

原创 Assert(斷言) 替換 throw exception

class BaseException extends RuntimeException{ public BaseException(IResponseEnum responseEnum, Object[] args, Stri

原创 JVM 虛擬機圖文詳解

1. 內存模型 & 分區 Java虛擬機在運行Java程序時,會管理着一塊內存區域: 運行時數據區 在運行時數據區裏,會根據用途進行劃分: Java虛擬機棧(棧區) 本地方法棧 Java堆(堆區) 方法區 程序計數器 下面,我將詳細介紹

原创 Spring的IOC有什麼好處

設計模式7大原則 開放-封閉原則 單一職責原則 依賴倒轉原則 最小知識原則 接口隔離原則 合成/聚合複用原則 里氏代換原則,任何基類可以出現的地方,子類一定可以出現   依賴倒置 假設我們設計一輛汽車:先設計輪子,然後根據輪子大小設計底盤

原创 Java—內部類實現閉包與回調

概念:   我覺得在理解一個事物之前,需要對這個事物在我們的大腦裏有一個初步的概念,然後再對這個概念補充上細節,這是我在理解一些陌生事物的時候的一個方法,也可以說是類比理解法吧。先說閉包~ 一.閉包  閉包,故名思意就是,把一個包關起來,

原创 IDEA使用ideaVim

vim常用命令總結(ideavim)   1. 插入命令 “i” 命令可以在當前光標之前插入文本。 “I” 命令可以在當前行首插入文本。 “a” 命令可以在當前光標之後插入文本。 “A” 命令可以在當前行尾插入文本。 “o” 命令可以

原创 Java中的鎖分類

1. Java鎖的種類 樂觀鎖/悲觀鎖 獨享鎖/共享鎖 互斥鎖/讀寫鎖 可重入鎖 公平鎖/非公平鎖 分段鎖 偏向鎖/輕量級鎖/重量級鎖 自旋鎖   以上是一些鎖的名詞,這些分類並不是全是指鎖的狀態,有的指鎖的特性,有的指鎖的設計,下面總