原创 Spring隨筆之使用Idea創建SpringMvc項目Hello World

首先我們先使用配置文件的方式創建一個Spring項目。 大家在學習的時候不要圖一時方便直接使用idea依賴maven一鍵式創建,那樣其中的很多配置細節可能會注意不到,特別是對spring配置不熟悉的朋友,很不利於學習。而且希望在一次次創建

原创 Joda_Time日期操作-DateTime

官方網站:https://www.joda.org/joda-time/ 如果在JDK1.8之前使用DateTime實則萬金油的日期操作,但是在之後的版本官方意識到這個問題,重新設計了time包。作爲jdk1.8的開發者爲之前的版本提供了

原创 JAVA是如何運行的二JVM模型

綜上篇介紹,下面來詳細講解java代碼的執行結果 首先看源代碼 ,通常當我們運行下面代碼時,我們會認爲虛擬器會創建一個線程,從main方法開始執行。然後計算abc的值後開始調用getN()方法。 package com.company;

原创 JAVA基礎-註解

想必在項目中大家一定接觸過不少註解,特別是在Spring項目中,那註解的作用是什麼,有何意義? 什麼是註解? 註解可以理解爲一個標籤,這個標籤可以貼在類上,方法上,成員變量上。 註解用來標識某些特徵,類似的可理解爲Interface接口。

原创 quartz 項目整合Springboot

quartz 項目整合Springboot 首先在項目中定時器是用的比較多的需求,如果不希望整合太多的第三方組件或者是項目中任務比較少完全可以使用spring自帶的任務Scheduled。 1,首先需要整合quartz 在POM文件中添加

原创 JAVA是如何運行的一JVM模型

關於JAVA是如何運行的一直很模糊 今天來總結下 一,首先先理解幾個基本概念: JDK(Java Development Kit),Java開發工具包,主要用於開發 JRE(Java Runtime Environment),Java程序

原创 Spring5.1源碼閱讀記錄一

首先閱讀源碼是件很痛苦的事情。第一步整合源碼更痛苦, 參考:https://blog.csdn.net/qq_40088250/article/details/104219666 人家確實寫的不錯,可以拿來避避坑!!! 整合完成之後,新建

原创 JAVA數據結構-HashMap

在工程中HashMap使用的非常頻繁,甚至有人說如果只能選擇一個的話我選HashMap。那今天來回顧一下HashMap. HashMap什麼 首先HashMap繼承自Map<>接口,Map接口的定義了一些方法,比較簡單,不說了   先來

原创 JAVA是如何運行的五-synchronized

書接上回 當我們對一個代碼塊或者對象加synchronize關鍵字時,在早期的jdk版本中時直接申請系統鎖,然後將內存鎖住,這樣的結果就是大大降低執行效率。在JDK1.6版本後對synchronized的實現進行了各種優化,自旋鎖、偏向鎖

原创 JAVA是如何運行的四-對象佈局

首先說明爲什麼要學習java的對象佈局? 當對一個代碼塊加鎖的時候,剛學習java的時候認爲是鎖的代碼,其實這樣理解是不對的。看下面代碼其實鎖的是一個LayoutClass對象!那底層是怎麼實現的呢? public static

原创 JAVA是如何運行的四-voliate

綜合上篇文章的代碼一的說明 如果我們使用voliate關鍵字修飾flag會出現什麼效果 public static volatile boolean flag = false; public static void main(S

原创 JAVA是如何運行的三線程模型

JVM線程內存模型 根據上述兩篇文章的說明,大概知道jvm是如何分配內存並且運行起來的。 現在我們來看既然對於JVM的內存模型來說,方法區和堆是線程共享的 但是對於jvm棧,棧幀,計數器等是線程獨享的,很顯然,當兩個線程如果同時操作方法區

原创 JAVA是如何運行的二

綜上篇介紹,下面來詳細講解java代碼的執行結果 首先看源代碼 ,通常當我們運行下面代碼時,我們會認爲虛擬器會創建一個線程,從main方法開始執行。然後計算abc的值後開始調用getN()方法。 package com.company;

原创 JAVA是如何運行的

關於JAVA是如何運行的一直很模糊 今天來總結下 一,首先先理解幾個基本概念: JDK(Java Development Kit),Java開發工具包,主要用於開發 JRE(Java Runtime Environment),Java程序

原创 Spring隨筆之bean的注入方式

Spring最大的功能就是一個bean的管理,通過我們配置bean的方式將bean的創建和銷燬權交給Spring容器處理。 什麼是IOC?IOC就是原本需要我們主動創建(new出來)的對象交給容器去創建。 一,set方式注入 首先準備個b