原创 7.虛擬機字節碼執行引擎

運行時棧幀結構 棧幀是用於支持虛擬機進行方法調用和方法執行的數據結構。棧幀存儲了方法的局部變量表,操作數棧,動態連接和方法返回地址等信息 前面說到class文件的方法表集合,每一個方法表後面都可以有一個code屬性,存放方法體裏面

原创 Java與設計模式(十二)創建型--單例模式

1. 一、單例模式的動機 對於一個軟件系統的某些類而言,我們無須創建多個實例。舉個大家都熟知的例子——Windows任務管理器,我們可以做一個這樣的嘗試,在Windows的“任務欄”的右鍵彈出菜單上多次點擊“啓動任務管理器”,看能

原创 (六)JVM字節碼文件

u1、u2、u4分別代表1字節、2字節、4字節 一. 初識字節碼文件 整體結構 1. Class 字節碼中有兩種數據類型 Class文件是一組以8字節爲基礎單位的二進制流,各個數據項目嚴格按照順序緊湊地排列在Class文件之

原创 Java與設計模式(十一)創建型--抽象工廠模式

工廠方法模式通過引入工廠等級結構,解決了簡單工廠模式中工廠類職責太重的問題,但由於工廠方法模式中的每個工廠只生產一類產品,可能會導致系統中存在大量的工廠類,勢必會增加系統的開銷。此時,我們可以考慮將一些相關的產品組成一個“產品族”

原创 0、Linux 安裝命令行管理工具

On My Zsh 1.安裝zsh yum install -y zsh 裝完之後驗證一下最後一行有/bin/zsh cat /etc/shells 切換shell爲zsh 再重進登錄一下終端就可以用了 chsh -s /bi

原创 3、Linux 安裝 git

1. 準備工作 更新 yum 源 yum -y update 查看 git 版本 git --version 卸載 git yum remove git 安裝wget,下載軟件 yum -y install wget 2.

原创 (七)Java Class文件格式、常量池項目的類型、表的結構

* u1、u2、u4分別代表1字節、2字節、4字節 1.Class文件格式 magic:魔數,值爲0xcafe baby,表示這是一個可以被虛擬機接收的class文件。很多文件存儲標準都使用魔數進行身份識別,比如gif,jpeg

原创 5、Linux ElasticSearch 集羣配置

寫在前面:爲什麼要用ElasticSearch?我們的應用經常需要添加檢索功能,開源的Elastic Search是目前全文檢索引擎的首選。它可以快速的存儲、搜索和分析海量數據。ElasticSearch是一個分佈式搜索框架,提供

原创 Java 8 Optional 類用法

1、Optional 用法 /** * Optional 用法 * * @author xuweizhi * @since 2019-08-20 */ public class OptionTest { /**

原创 1、 Linux 基礎命令

1. 文件相關 ls -al # 查看當前目錄所有文件夾包含隱藏文件並格式化 ls # 查看當前目錄文件 rm # 刪除文件 pwd # 查看當前目錄路徑 2. Linux 創建文件,並進行輸入

原创 4、Linux Mysql 主從數據庫配置

Mysql主從配置 大型網站爲了軟解大量的併發訪問,除了在網站實現分佈式負載均衡,遠遠不夠。到了數據業務層、數據訪問層,如果還是傳統的數據結構,或者只是單單靠一臺服務器扛,如此多的數據庫連接操作,數據庫必然會崩潰,數據丟失的話,後果更

原创 2、 Linux 安裝 Docker、JDK、Mysql 8.0.12

1. Linux 安裝Docker 安裝命令行自動補全,Tab鍵 yum -y install bash-completion Docker 鏡像搜索網站,索性不用翻牆也可以用… https://hub.docker.com/sea

原创 Java與設計模式(十四)創建型--原型模式

一、原型模式概述 在使用原型模式時,我們需要首先創建一個原型對象,再通過複製這個原型對象來創建更多同類型的對象。試想,如果連孫悟空的模樣都不知道,怎麼拔毛變小猴子呢?原型模式的定義如下: 原型模式(Prototype Pattern)

原创 Java與設計模式(十三)創建型--建造者模式

沒有人買車會只買一個輪胎或者方向盤,大家買的都是一輛包含輪胎、方向盤和發動機等多個部件的完整汽車。如何將這些部件組裝成一輛完整的汽車並返回給用戶,這是建造者模式需要解決的問題。建造者模式又稱爲生成器模式,它是一種較爲複雜、使用頻率也相

原创 Java與設計模式(五)設計原則--依賴倒置原則

一定義 一、定義 如果說開閉原則是面向對象設計的目標的話,那麼依賴倒轉原則就是面向對象設計的主要實現機制之一,它是系統抽象化的具體實現。依賴倒轉原則是Robert C. Martin在1996年爲“C++Reporte