原创 JAVA設計模式1——代理模式

按照原計劃是準備一直寫《深入理解JAVA虛擬機》的讀書筆記的,但是上一篇文章中,在製造方法區溢出的時候,原書的大致思路是:方法區中存儲的是運行時的類信息,通過CGLIB代理生成大量的類,超過方法區的最大容量,就會產生溢出。這裏書中提到了一

原创 深入理解JAVA虛擬機學習筆記5——垃圾收集算法

話不多說,直接上內容,書中介紹了四種算法。1. 標記-清除算法:這是最基礎的算法,後續的算法都是在此算法基礎上做出的改進。該算法包括兩個過程:標記——將對象回收狀態進行標記,這個在以前的筆記中已經做了介紹,這裏不再贅述。清除——回收的時候

原创 (四)gradle構建spring-boot項目

書接上文,接下來使用gradle構建spring-boot項目。其實很簡單,可參考spring官網,http://projects.spring.io/spring-boot/。 在build.gradle文件中,引入sprin

原创 JAVA動態代理和CGLIB簡單介紹和使用

上一篇我們介紹了代理的一些基本概念和一個靜態代理的例子。這一章我們先討論一下動態代理。讓我們還延續上一章理財的例子。上回書說到我把我的積蓄交給了理財經理之後,我就安心在家數錢就好了。時間來到2015年,不知道朋友們有沒有見過千股跌停,很榮

原创 深入理解JAVA虛擬機學習筆記9——JDK命令行工具

1. jps:虛擬機進程控制工具,可以列出正在運行的虛擬機進程,並顯示虛擬機執行主類名稱以及這些線程的本地虛擬機唯一ID。主要參數及功能見下表;本地運行後結果如下。2. jstat:虛擬機統計信息監視工具,監視虛擬機各種運行狀態信息,如

原创 如何成爲一個好的軟件開發工程師

        當前,全球軟件行業正處於成長期向成熟期轉變,而在國內,受益於經濟轉型和產業升級,中央提出的”互聯網+“戰略,也被積極應用到產業升級當中,大數據、人工智能、雲計算和區塊鏈等技術更是展現出強大的發展潛力,給軟件行業的未來帶

原创 深入理解JAVA虛擬機2——對象的創建與訪問

有了上一篇的基礎深入理解JAVA虛擬機學習筆記1——內存,這一篇我們就來分析一下,代碼到底時如何運行的。以下面兩段代碼爲例,包含兩個類,一個是用來和大家打招呼的具體業務類Main.java。import java.util.Date;

原创 (二)項目構建工具

1 前言 注意到現在gradle被應用的越來越多,爲了與時俱進,學習一下,這裏嘗試使用gradle作爲項目管理工具,由於本人以前一直在用maven,故這裏的資源庫仍然使用maven的本地資源庫。Jdk自然是少不了,這裏就不詳細

原创 spring data jpa使用Pageable,ExampleMatcher進行分頁多條件查詢

一般簡單的查詢,可以使用,findByName,findById等方法,但是當這種方法越來越多的時候,就會顯得特別冗雜,這個時候就需要把方法進行合併,spring data jpa提供了一種Query by Example的方法。

原创 深入理解JAVA虛擬機學習筆記10——JDK可視化工具JConsole

JConsole:Java 監視與管理控制檯,基於JMX的可視化監視,管理工具。在jdk的bin目錄下(如D:\Java\jdk1.8.0_131\bin),就可以找到jconsole.exe。在運行之前,我們先寫用debug執行一段程序

原创 gradle多項目構建

由於最近在研究多項目構建,查閱了一些博客,感覺不如索性自己看看文檔,原文在https://guides.gradle.org/creating-multi-project-builds/,另附兩個鏈接, github上有些gra

原创 (五)spring-boot中使用spring-data-jpa(hibernate實現)

好久沒寫了,今天更一篇。在spring-boot中使用spring-data-jpa作爲持久層框架,hibernate作爲實現。在多項目構建的基礎上,在dafangzi-core,dafangzi-system中引入對spring

原创 深入理解JAVA虛擬機學習筆記6——七種垃圾收集器介紹和對比

本來這一篇應該是和大家分享以下HotSpot的算法實現的,但是有部分內容存在一些疑問,還需進一步研究一下,今天就簡單介紹一下幾種不同的垃圾收集器。開始之前有幾點需要提前介紹一下。第一點,書中提到了一個詞,“Stop The World”—

原创 Java軟件開發工程師所需要掌握的技術概述

相信很多沒有畢業的學生都比較迷惑將來畢業後該幹些什麼,作爲一個Java軟件開發工程師,都需要掌握哪些技能,下面就由我這個早畢業幾年的IT民工來簡單介紹一下我們所使用的技術,給大家作爲一個參考。         1. Java 基礎是

原创 深入理解JAVA虛擬機學習筆記4——垃圾收集器概述

時隔這麼久,這個系列又和大家見面了,感謝支持我的朋友,只要能給大家帶來一點點收穫,我真的時發自內心的開心!今天先簡單瞭解一下虛擬機的垃圾收集器。前面已經介紹過了,程序計數器,虛擬機棧和本地方法棧是屬於線程私有區域,這三個區域分配和回收都是