原创 設計模式之工廠模式(l流水線模式)

1.簡介   工廠模式(Factory Pattern)是 Java 中最常用的設計模式之一。這種類型的設計模式屬於創建型模式,它提供了一種創建對象的最佳方式。 在工廠模式中,我們在創建對象時不會對客戶端暴露創建邏輯,並且是通過使用一個共

原创 設計模式之裝飾器模式(動態附加額外的功能)

裝飾器模式 裝飾器模式(Decorator Pattern)允許向一個現有的對象添加新的功能,同時又不改變其結構。這種類型的設計模式屬於結構型模式,它是作爲現有的類的一個包裝。 這種模式創建了一個裝飾類,用來包裝原有的類,並在保持類方法簽

原创 設計模式之抽象工廠模式(工廠模式Plus)

抽象工廠模式 抽象工廠模式(Abstract Factory Pattern)是圍繞一個超級工廠創建其他工廠。該超級工廠又稱爲其他工廠的工廠。這種類型的設計模式屬於創建型模式,它提供了一種創建對象的最佳方式。 在抽象工廠模式中,接口是負責

原创 ☆關於JAVA虛擬機必須瞭解的理論知識(入門理論篇)

1.基礎介紹 java優勢 衆所周知,java目前依然是是市場最流行的開發語言之一,是IT語言行業佔比非常之大,java能獲得如此廣泛認可的原因必然是相比其他編程語言有着不可忽視的優勢: 擺脫了硬件平臺的限制,主要表現就是"一次編譯,多出

原创 設計模式之過濾器莫模式(挑三揀四模式)

過濾器模式 過濾器模式(Filter Pattern)或標準模式(Criteria Pattern)是一種設計模式,這種模式允許開發人員使用不同的標準來過濾一組對象,通過邏輯運算以解耦的方式把它們連接起來。這種類型的設計模式屬於結構型模式

原创 設計模式之組合模式(對象嵌套模式)

組合模式 組合模式(Composite Pattern),又叫部分整體模式,是用於把一組相似的對象當作一個單一的對象。組合模式依據樹形結構來組合對象,用來表示部分以及整體層次。這種類型的設計模式屬於結構型模式,它創建了對象組的樹形結構。

原创 設計模式之單例模式(大鍋飯模式)

單例模式 單例模式(Singleton Pattern)是 Java 中最簡單的設計模式之一。這種類型的設計模式屬於創建型模式,它提供了一種創建對象的最佳方式。 這種模式涉及到一個單一的類,該類負責創建自己的對象,同時確保只有單個對象被創

原创 見面禮,設計模式簡介

1.設計模式的類型 根據設計模式的參考書 Design Patterns - Elements of Reusable Object-Oriented Software(中文譯名:設計模式 - 可複用的面向對象軟件元素) 中所提到的,總共

原创 ☆關於JAVA虛擬機必須瞭解的理論知識(基礎理論篇)

1.概論 java虛擬機在執行java程序的過程中會把他管理的內存劃分爲若干個不同的數據區域。這些區域都有各自的用途,以及創建和銷燬時間,有些區域伴隨着虛擬機進程的啓動而存在,有的區域則是依賴用戶線程的啓動和結束而建立和銷燬,根據相關規定

原创 ☆3.java虛擬機垃圾收集器與內存分配策略(上)(中階理論篇)

1.概述 java中的垃圾回收技術被當做是java語言的伴生產物,經過半個世紀的發展,這項技術已經相當成熟,基本進入“自動化”時代,當需要排查各種內存泄漏,內存溢出問題時,當垃圾收集稱爲系統達到更高併發量的瓶頸時,我們就需要對這些“自動化

原创 SpringBoot+MyBatis+Shiro框架配置

1.引言 基於SpringBoot與MyBatis框架在Java開發中越來越流行,最近公司剛好需要技術變革,筆者也是頗費了寫心血做了框架的搭建和幾次框架的一直工作,本框架除了SpringBoot和MyBatista另外也揉入了當下比較

原创 SpringMVC 之@RequestBody 接收Json數組對象

1.操作流程:前臺使用ajax技術,傳遞json字符串到後臺;後臺使用Spring MVC註解@RequestBody 接受前臺傳遞的json字符串,並返回新的json字符串到前臺;前臺接受後臺傳遞過來的j

原创 44條Java代碼優化建議

作者:五月的倉頡 來自:http://www.cnblogs.com/xrq730/p/4865416.html   前言   2016年3月修改,結合自己的工作和平時學習的體驗重新談一下爲什麼要進行代碼優化。在修改之前,我的說法是這樣的

原创 IntelliJ IDEA常用快捷鍵整理彙總以及Intellij idea6破解辦法

IntelliJ IDEA常用快捷鍵整理彙總 列表內容:常用 快捷鍵 功能 Ctrl+] 諸如{}圍起來的代碼塊,使用該快捷鍵可以快速跳轉至代碼塊的結尾處 Ctrl+[ 同上,快速跳至代碼塊的開始出 Ctrl+