原创 Android Studio下的JNI使用全解析(一)

一:創建工程 1.1 創建新的工程時勾選上Include c++ support,然後一路next 勾選的目的是爲了寫C代碼時有代碼提示 1.2 創建完畢之後修改CMake你要生成的so庫的名稱 1.3 把Src/ma

原创 SpringBoot創建工程

一、SpringBoot簡介 1.1 原有Spring優缺點分析 1.1.1 Spring的優點分析 Spring是Java企業版(Java Enterprise Edition,JEE,也稱J2EE)的輕量級代替品。無需開發重

原创 SpringBoot整合SpringMVC

雖然默認配置已經可以使用SpringMVC了,不過我們有時候需要進行自定義配置。 1.1.1.修改端口 查看SpringBoot的全局屬性可知,端口通過以下方式配置: # 映射端口 server.port=80 重啓服務後測試:

原创 負載均衡組件Robbin

1.負載均衡Robbin Eureka中已經幫我們集成了負載均衡組件:Ribbon,簡單修改代碼即可使用。 什麼是Ribbon: 接下來,我們就來使用Ribbon實現負載均衡。 1.1.啓動兩個服務實例 首先我們啓動兩個user

原创 服務發現組件Eureka的使用與原理

1.初識SpringCloud 微服務是一種架構方式,最終肯定需要技術架構去實施。 微服務的實現方式很多,但是最火的莫過於Spring Cloud了。爲什麼? 後臺硬:作爲Spring家族的一員,有整個Spring全家桶靠山,背

原创 服務網關組件Zuul

1.Zuul網關 我們使用Spring Cloud Netflix中的Eureka實現了服務註冊中心以及服務註冊與發現;而服務間通過Ribbon或Feign實現服務的消費以及均衡負載;通過Spring Cloud Config實現

原创 服務調用組件Feign

1.Feign 使用了Ribbon的負載均衡功能,大大簡化了遠程調用時的代碼: String baseUrl = "http://user-service/user/"; User user = this.restTemplate

原创 熔斷器Hystix的使用與原理

1.1.簡介 Hystix,即熔斷器。 主頁:https://github.com/Netflix/Hystrix/ Hystix是Netflix開源的一個延遲和容錯庫,用於隔離訪問遠程服務、第三方庫,防止出現級聯失敗。 1.

原创 SpringBoot配置文件

1.1 SpringBoot配置文件類型 1.1.1 SpringBoot配置文件類型和作用 SpringBoot是基於約定的,所以很多配置都有默認值,但如果想使用自己的配置替換默認配置的話,就可以使用application.pr

原创 使用ButterKnife時的配置

ButterKnife使用方法很簡單,但是之前對配置不是很熟悉,沒使用成功過,看了劉望舒寫的Android進階之光,還是比較詳細的,把使用的配置記錄一下,以免後面再踩坑。 一:在project的gradle中配置 “`

原创 服務架構的演化

引言:隨着互聯網的發展,網站應用的規模不斷擴大。需求的激增,帶來的是技術上的壓力。系統架構也因此也不斷的演進、升級、迭代。從單一應用,到垂直拆分,到分佈式服務,到SOA,以及現在火熱的微服務架構,還有在Google帶領下來勢洶涌

原创 Gradle初探

一:Project和Module中的gradle腳本的基本格式 一:project的gradle腳本如下: buildscript { repositories { jcenter() }

原创 CarRecorder源碼解析二(循環錄像分析)

循環錄像的整體邏輯比較簡單,但代碼還是比較複雜的,邏輯是剛開機就開始循環錄像,每兩分鐘通過MediaRecorder錄製一段視頻,當視頻所佔內存卡的大小到達某一個預設的值時,開始自動刪除最老的視頻。 ## 一:如何實現開始結束

原创 Gradle簽名打包

一:生成簽名 步驟如下: 點擊build->Generate Signed APK 再選擇一個新的簽名,路徑最好是當前項目的根目錄 點擊OK,稍等片刻,就會在你指定的位置生成一個簽名文件,後綴名爲.jks 使用grad

原创 Android studio使用技巧(二:國際化以及代碼重構)

一:如何在Android中快速實現國際化 Android中的國際化實際是string.xml文件的國際化,我們來看看具體的實現過程: 1.1 . 打開 res->values->string.xml文件 1.2 . 點擊右