原创 從Spring框架看設計模式如何靈活使用

Singleton 單例模式 單例模式是確保每個應用程序只存在一個實例的機制。默認情況下,Spring將所有bean創建爲單例。 你用@Autowired獲取的bean,全局唯一。 @RestController public class

原创 提升NginxTLS/SSL HTTPS 性能的7條優化建議

自2018年7月起,谷歌瀏覽器開始將“ HTTP”網站標記爲“不安全”。在過去的幾年中,互聯網已經迅速過渡到HTTPS,Chrome瀏覽器的流量超過70%,並且Web排名前100位的網站中有80多個現在默認使用HTTPS 當前Nginx作爲

原创 高效團隊的gitlab flow最佳實踐

當前git是大部分開發團隊的首選版本管理工具,一個好的流程規範可以讓大家有效地合作,像流水線一樣有條不紊地進行團隊協作。 業界包含三種flow: Git flow Github flow Gitlab flow 下面我們先來分析,然後再

原创 ES 2021 來了,詳細解讀5個新特性,附案例

ES 2021是世界上最受歡迎的編程語言的最新版本〜 本次迭代中包含了五個新特性,讓我們來一睹爲快。 1.全部替換replaceAll: js默認的replace 方法僅替換字符串中一個模式的第一個實例,要全局替換,你需要自己寫正則,因此2

原创 2020年Javascript 前端框架google搜索排名

三大前端框架,Vue,React,Angular 哪款更受喜歡呢? 今天我們從google搜索來分析。 全球搜索量   從全球範圍來看,React > Angular > Vue 總體搜索量 按區域對比 我們按照Vue的關注度排序:

原创 Spring中的@Valid 和 @Validated註解你用對了嗎

1.概述 本文我們將重點介紹Spring中 @Valid和@Validated註解的區別 。 驗證用戶輸入是否正確是我們應用程序中的常見功能。Spring提供了@Valid和@Validated兩個註解來實現驗證功能,下面我們來詳細介紹它們

原创 上班從換一張桌面壁紙開始——開源小工具Bing每日壁紙

發佈一個自用的開源小軟件,Bing每日壁紙,使用c# winform開發。該小軟件可以自動獲取Bing的精美圖片設置爲壁紙,並且支持隨機切換歷史壁紙,查看壁紙故事。 功能特性 自動獲取Bing最新圖片並設置爲壁紙 壁紙故事, 你還可以查看

原创 hugegraph 存取數據解析

hugegraph 是百度開源的圖數據庫,支持hbase,mysql,rocksdb等作爲存儲後端。本文以EDGE 存儲,hbase爲存儲後端,來探索hugegraph是如何存取數據的。 存數據 序列化 首先需要序列化,hbase 使用B

原创 圖數據庫查詢語言

本文介紹圖數據庫支持的gremlin和Cypher查詢語言。 初始化數據 可使用gremlin api執行 gremlin api POST http://localhost:8080/gremlin {"gremlin":"這裏是語句",

原创 spring boot實現超輕量級網關(反向代理、轉發)

在我們的rest服務中,需要暴露一箇中間件的接口給用戶,但是需要經過rest服務的認證,這是典型的網關使用場景。可以引入網關組件來搞定,但是引入zuul等中間件會增加系統複雜性,這裏實現一個超輕量級的網關,只實現請求轉發,認證等由rest服

原创 hugegraph 支持sparql 與cypher

hugegraph 是百度開源的基於tinkerpop的圖數據庫,支持通過gremlin進行查詢。 這裏,我們來擴展支持sparql 與cypher。 sparql支持 github上有SparqlToGremlinCompiler,可以支

原创 深入探索Spring Data JPA, 從Repository 到 Specifications 和 Querydsl

數據訪問層,所謂的CRUD是後端程序員的必修課程,Spring Data JPA 可以讓我們來簡化CRUD過程,本文由簡入深,從JPA的基本用法,到各種高級用法。 Repository Spring Data JPA 可以用來簡化data

原创 axios 瀏覽器內存泄露問題解決

現象 業務頁面,頻繁切換下一條,內存飆漲,導致卡頓,之前懷疑是音頻播放器的鍋,修改後問題依舊,於是排查網絡請求。 到axios issues搜索,發現memory leaks帖子不少,典型的在這裏Axios doesn't address

原创 給Swagger換一套皮膚 Knife4j集成記錄

Swagger有一套經典的UI,但是並不是很好用,之前有看到Knife4j,界面美觀、功能完善,因此嘗試集成。 demo參考示例地址:knife4j-spring-boot-demo Knife4j前身是swagger-bootstrap-

原创 推薦算法之: DeepFM及使用DeepCTR測試

算法介紹 左邊deep network,右邊FM,所以叫deepFM 包含兩個部分: Part1: FM(Factorization machines),因子分解機部分 在傳統的一階線性迴歸之上,加了一個二次項,可以表達兩兩特徵的相