原创 橋連模式

1. 概述       在軟件系統中,某些類型由於自身的邏輯,它具有兩個或多個維度的變化,那麼如何應對這種“多維度的變化”?如何利用面嚮對象的技術來使得該類型能夠輕鬆的沿着多個方向進行變化,而又不引入額外的複雜度? 例子1:設想如果要

原创 JSON與JAVA互轉

(二)JAVA轉JSON  1:bean—json String json = "{\"name\":\"reiz\"}"; JSONObject jb = JSONObject.fromObject(json); 放入值 jb

原创 linux 鏈接 ftp命令

1. 連接ftp服務器 格式:ftp [hostname| ip-address] a)在linux命令行下輸入: ftp 192.168.1.1 b)服務器詢問你用戶名和密碼,分別輸入用戶名和相應密碼,待認證通過即可。 2.

原创 合成模式(Composite)-山下的養牛場

合成模式:描述整體與部分的關係,將對象組織到樹結構中,最典型的是文件與文件夾系統,分爲安全式與透明式。 例子:我家有座山,山下有個養牛場,牛分奶牛與黃牛,每頭牛都有編號 安全式: 類圖: 抽象構建角色 Cattle類 package

原创 xss跨站攻擊 cookie設置

關於cookie的問題,很多時候遇到的是信息泄露,爲什麼會有信息泄露,首先要了解什麼是xss跨站腳本攻擊,xss跨站攻擊簡單來說就是插入惡意代碼,或

原创 設計模式概論

1. 設計模式        設計模式(Design pattern)是一套被反覆使用、多數人知曉的、經過分類編目的、代碼設計經驗的總結。使用設計模式是爲了可重用代碼、讓代碼更容易被他人理解、保證代碼可靠性。 毫無疑問,設計模式於

原创 門面模式(Facade)(外觀模式)—向養牛場送貨

門面模式 :爲子系統構建與外部系統交互的統一界面。 門面模式的優點,我認爲有兩點:    1:解耦各個子系統,減少子系統與外部系統調用時的頻繁調用,    2:屏蔽子系統內的方法,這樣就可以儘量少的向外部系統暴露方法。 例子: 向養牛場送

原创 Eclipse get/set方法自動加上字段註釋

編碼的時候通常要用到 JavaBean ,而在我們經常把註釋寫在字段上面,但生成的Get/Set方法不會生成,通過修改Eclipse源碼可解決,直接上例子: /**    * 員工ID    */   private String 

原创 享元模式(FlyWeight)—山上打井

享元模式:使用共享來避免許多相同對象的內存開銷。 類圖: 包括三個角色: 抽象享元角色(FlyWeight):給出抽象類或者抽象接口,規定具體享元類的實現方法。 具體享元角色(Concrete):實現抽象享元角色,如果有內蘊狀態,給出存

原创 適配器模式Adapter(結構型)

1. 概述:          接口的改變,是一個需要程序員們必須(雖然很不情願)接受和處理的普遍問題。程序提供者們修改他們的代碼;系統庫被修正;各種程序語言以及相關庫的發展和進化。         例子1:iphone4,你即可以使

原创 Dos命令查看端口占用及關閉進程

1. 查看端口占用2. 關閉進程3. 端口狀態 1. 查看端口占用 在windows命令行窗口下執行: netstat -aon|findstr "8080" TCP 127.0.0.1:80 0.0

原创 java 泛型

泛型(Generic type 或者 generics)是對 Java 語言的類型系統的一種擴展,以支持創建可以按類型進行參數化的類。可以把類型參數看作是使用參數化類型時指定的類型的一個佔位符,就像方法的形式參數是運行時傳遞的值的佔位符

原创 代理模式(Proxy)—山下的水泥廠

代理模式:提供一個代理對象,當原對象被調用時,通過代理對象調用,代理模式起在客戶端與原對象中間起到中介的角色。 分爲三部分角色: 抽象對象角色(AbstractObject):聲明目標對象與代理對象的抽象接口或類,方便委派 具體對象角色(

原创 裝飾模式(Decorator)-山下的石雕廠

裝飾模式:是對一個類進行各種功能的豐富,使用Decorator模式擴充類的功能會比用子類生成的方式更加的靈活。 裝飾者與被裝飾者擁有共同的超類。 類圖:            我家有座山,山下有座石雕廠,石雕廠有打磨石獅子的機器  抽象構

原创 微服務Eureka

大型系統一般拆分爲多個子系統,在微服務中,這些子系統就是微服務,每一個服務需要部署多個實例,這些實例就需要使用Eureka進行服務管理。服務ID/名稱是唯一標識,根據唯一標識在註冊中心找到實例信息,再調用服務。 EurekaServer服