原创 微服務(API網關)

API Gateway 是一個服務器,也可以說是進入系統的唯一節點。這跟面向對象設計模式中的Facade 模式很像。API Gateway 封裝內部系統的架構,並且提供 API 給各個客戶端。它還可能有其他功能,如授權、監控、負載均衡、緩

原创 微服務(服務註冊發現)

服務註冊就是維護一個登記簿,它管理系統內所有的服務地址。當新的服務啓動後,它會向登記簿交待自己的地址信息。服務的依賴方直接向登記簿要 Service Provider 地址就行了。當下用於服務註冊的工具非常多 ZooKeeper,Cons

原创 JAVA基礎(java序列化,創建可複用的java對象)

保存(持久化)對象及其狀態到內存或者磁盤 Java 平臺允許我們在內存中創建可複用的 Java 對象,但一般情況下,只有當 JVM 處於運行時,這些對象纔可能存在,即,這些對象的生命週期不會比 JVM 的生命週期更長。但在現實應用中,就

原创 JAVA基礎(java複製)

將一個對象的引用複製給另外一個對象,一共有三種方式。第一種方式是直接賦值,第二種方式是淺拷貝,第三種是深拷貝。所以大家知道了哈,這三種概念實際上都是爲了拷貝對象。   1、直接賦值複製 直接賦值。在 Java 中,A a1 = a2,

原创 JAVA基礎(java內部類)

Java 類中不僅可以定義變量和方法,還可以定義類,這樣定義在類內部的類就被稱爲內部類。根據定義的方式不同,內部類分爲靜態內部類,成員內部類,局部內部類,匿名內部類四種。   1、靜態內部類 定義在類內部的靜態類,就是靜態內部類。

原创 JAVA基礎(java泛型)

泛型提供了編譯時類型安全檢測機制,該機制允許程序員在編譯時檢測到非法的類型。泛型的本質是參數化類型,也就是說所操作的數據類型被指定爲一個參數。比如我們要寫一個排序方法,能夠對整型數組、字符串數組甚至其他任何類型的數組進行排序,我們就可以使

原创 JAVA基礎(java註解)

Annotation(註解)是 Java 提供的一種對元程序中元素關聯信息和元數據(metadata)的途徑和方法。Annatation(註解)是一個接口,程序可以通過反射來獲取指定程序中元素的 Annotation對象,然後通過該 An

原创 JAVA基礎(java反射)

動態語言 動態語言,是指程序在運行時可以改變其結構:新的函數可以引進,已有的函數可以被刪除等結構上的變化。比如常見的 JavaScript 就是動態語言,除此之外 Ruby,Python 等也屬於動態語言,而 C、C++則不屬於動態語言。

原创 JAVA集合(Map)

Map 1、HashMap(數組+鏈表+紅黑樹) HashMap 根據鍵的 hashCode 值存儲數據,大多數情況下可以直接定位到它的值,因而具有很快的訪問速度,但遍歷順序卻是不確定的。 HashMap 最多隻允許一條記錄的鍵爲

原创 JAVA基礎(java異常分類及處理)

1、概念 如果某個方法不能按照正常的途徑完成任務,就可以通過另一種路徑退出方法。在這種情況下會拋出一個封裝了錯誤信息的對象。此時,這個方法會立刻退出同時不返回任何值。另外,調用這個方法的其他代碼也無法繼續執行,異常處理機制會將代碼執行交給

原创 JAVA集合(List)

1、ArrayList(數組) ArrayList 是最常用的 List 實現類,內部是通過數組實現的,它允許對元素進行快速隨機訪問。數組的缺點是每個元素之間不能有間隔,當數組大小不滿足時需要增加存儲能力,就要將已經有數組的數據複製到新

原创 JAVA集合(Set)

Set Set 注重獨一無二的性質,該體系集合用於存儲無序(存入和取出的順序不一定相同)元素,值不能重複。對象的相等性本質是對象 hashCode 值(java 是依據對象的內存地址計算出的此序號)判斷的,如果想要讓兩個不同的對象視爲相等

原创 JAVA集合(接口繼承和實現關係)

集合類存放於 Java.util 包中,主要有 3 種:set(集)、list(列表包含 Queue)和 map(映射)。 1. Collection:Collection 是集合 List、Set、Queue 的最基本的接口。 2

原创 解析身份證照片信息

項目開發中,我們往往會遇到一些特殊的需求,下面我就分享下我最近遇到的一個需求: 1、用戶進行實名認證時將身份證的正反面照拍照上傳(此功能無特別之處,合理也沒難度) 2、對上傳的圖片進行解析,提取出頁面需要展示的字段(問題應該不大) 自我感

原创 銀行卡四要素驗證

本次調試採用阿里提供的技術 準備工作: 首先到阿里雲網站:https://market.aliyun.com/products/57000002/cmapi021096.html?spm=5176.730005-56928004.0.0.