原创 使用httpClient 訪問https請求

package com.hyzs.szcg.doc.utils; import lombok.extern.slf4j.Slf4j; import org.apache.http.HttpEntity; import org.apac

原创 使用RestTemplate訪問https請求 並獲取返回的輸入流

代碼 package com.hyzs.szcg.doc.utils; import com.hyzs.intelligentgateway.core.service.IntelligentGatewayService; import

原创 Springboot 2.X啓動源碼分析

@SpringBootApplication @EnableFeignClients(defaultConfiguration = FeignClientsConfiguration.class) public class DocApp

原创 狀態模式(State)

狀態模式的定義與特點 狀態(State)模式的定義:對有狀態的對象,把複雜的“判斷邏輯”提取到不同的狀態對象中,允許狀態對象在其內部狀態發生改變時改變其行爲。 狀態模式是一種對象行爲型模式,其主要優點如下。 狀態模式將與特定狀態相關的行爲

原创 外觀模式(Facade)

在現實生活中,常常存在辦事較複雜的例子,如辦房產證或註冊一家公司,有時要同多個部門聯繫,這時要是有一個綜合部門能解決一切手續問題就好了。 軟件設計也是這樣,當一個系統的功能越來越強,子系統會越來越多,客戶對系統的訪問也變得越來越複雜。這時

原创 代理模式(Proxy)

在有些情況下,一個客戶不能或者不想直接訪問另一個對象,這時需要找一箇中介幫忙完成某項任務,這個中介就是代理對象。例如,購買火車票不一定要去火車站買,可以通過 12306 網站或者去火車票代售點買。又如找女朋友(有點難找)、找工作等都可以通

原创 享元模式(Flyweight)

在面向對象程序設計過程中,有時會面臨要創建大量相同或相似對象實例的問題。創建那麼多的對象將會耗費很多的系統資源,它是系統性能提高的一個瓶頸。例如,圍棋和五子棋中的黑白棋子,圖像中的座標點或顏色,局域網中的路由器、交換機和集線器,教室裏的桌

原创 itext 合併 pdf 並插入頁碼

第一步  引用jar <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId>

原创 適配器模式(Adapter)

在現實生活中,經常出現兩個對象因接口不兼容而不能在一起工作的實例,這時需要第三者進行適配。例如,講中文的人同講英文的人對話時需要一個翻譯,用直流電的筆記本電腦接交流電源時需要一個電源適配器,用計算機訪問照相機的 SD 內存卡時需要一個讀卡

原创 springcloud 添加 gateway 啓動報錯 java.lang.IllegalStateException:

springcloud 添加 gateway 啓動報錯 具體報錯信息如下 2019年12月26日 09:25:39.483 [restartedMain] ERROR o.s.boot.SpringApplication - Appli

原创 Springboot @Transactional捕獲異常事務回滾

問題  一般情況下 try{}catch{}的使用回使得@Transactional註解失效 可使用如下方式 實現事務回滾 @Transactional(rollbackFor = Throwable.class) @Overr

原创 組合模式(Composite)

組合模式的定義與特點 組合(Composite)模式的定義:有時又叫作部分-整體模式,它是一種將對象組合成樹狀的層次結構的模式,用來表示“部分-整體”的關係,使用戶對單個對象和組合對象具有一致的訪問性。 組合模式的主要優點有: 組合模式使

原创 橋接模式(Bridge)

橋接模式的定義與特點 橋接(Bridge)模式的定義如下:將抽象與實現分離,使它們可以獨立變化。它是用組合關係代替繼承關係來實現,從而降低了抽象和實現這兩個可變維度的耦合度。 橋接(Bridge)模式的優點是: 由於抽象與實現分離,所以擴

原创 RabbitMq 創建用戶

一 、RabbitMq 的權限角色 (1) 超級管理員(administrator)      可登陸管理控制檯(啓用management plugin的情況下),可查看所有的信息,並且可以對用戶,策略(policy)進行操作 。(2)

原创 java pdf 使用itextpdf插入頁碼

代碼如下 package com.hyzs.szcg.doc.utils; import com.itextpdf.text.*; import com.itextpdf.text.pdf.*; import lombok.exter