原创 最好的個人博客評論區實現方案推薦:waline

我的博客一直沒有一個好看的評論區,自己做又不會。。沒錯,我是個前端渣渣。調研了一下,一開始想套用一些網上的靜態模板,但是改造成本還是挺大的,後來接觸到了Waline,簡單瞭解了以下,我就知道了,它就是我理想中的評論區功能實現,和我的博客匹配

原创 java中的try-with-resource語法

java的世界千奇百怪。。。當我甩出如下代碼段,不知閣下如何應對? try(A a=new A()){ 和a變量無關的業務代碼塊 } 沒錯,這就是“臭名昭著”的try-with-resource語法,乍一看讓人不知所云,其實它和t

原创 【轉載】使用Feign接口實現文件上傳的解決方案

原文鏈接:使用Feign接口實現文件上傳的解決方案 一般的情況下,後端有個微服務,暴露出一個文件上傳的restful接口給前端,前端調用該接口獲取上傳後的鏈接以及oss key值完成上傳。假設提供restful接口的這個服務叫做A,現在有個

原创 使用javassist運行時動態修改字節碼對象

java程序什麼時候需要在運行的時候動態修改字節碼對象? 如何在運行的時候動態修改字節碼對象? 修改字節碼對象的時候會發生哪些錯誤,又該如何解決這些問題? 圍繞以上三個問題,本篇文章會依次講解。 一、java程序什麼時候需要在運行的時候

原创 mybatis plus框架的@TableField註解不生效問題總結

一、問題描述 最近遇到一個mybatis plus的問題,@TableField註解不生效,導致查出來的字段反序列化後爲空 數據庫表結構: CREATE TABLE `client_role` ( `id` int(11) NOT NU

原创 文章相似度算法調研

文章相似度算法大體上分爲兩類,現實中文本相似性算法分爲兩類,一類是hash算法,一類是字符串直接匹配算法 字符串匹配算法在現實情況中由於效率太低一般沒人使用,經過調研發現,在實際使用中,幾乎所有人都會在simhash和minhash算法中

原创 在springboot程序中自定義註解和反序列化實現

根據上一篇文章在springboot程序中jackson自定義註解和字段解析器的經驗,一開始的操作步驟如下 一、初始解決方案 1、定義反序列化組件 序列化的時候繼承了StdSerializer,本來想繼承StdDeserializer,但是

原创 ES相關度排序異常問題

明明標題全字段匹配,但是按照默認的相關度排序卻排到了第三四位,第一位怎麼看都不應該排在最上面。。今天ES文章檢索我遇到了這個問題。 我對文章的title和content字段使用了多字段查詢,一開始我認爲是content字段干擾了整體的相關度

原创 在springboot程序中jackson自定義註解和字段解析器

一、需求提出和兩種解決方案 最近有個需求,需要在springboot程序中在返回給前端json串的時候將部分字段加密。在之前的一篇文章中,曾經說過對整個請求體進行加密的方法,可以使用spring擴展的參數解析器做處理:spring mvc請

原创 魔改swagger:knife4j的另外一種打開方式

之前公司使用了swagger作爲文檔管理工具,原生的swagger-ui非常醜,之後就用了開源項目 蕭明 / knife4j 的swagger組件進行了swagger渲染,改造之後界面漂亮多了,操作也方便了很多。當然這不是重點,重點是我們項

原创 解決swagger和自定義參數解析器的功能衝突問題

在上一篇文章spring mvc請求體偷樑換柱:HandlerMethodArgumentResolver 中,講解了如何使用spring mvc中的參數解析器解密傳入的字符串並反序列化的方法,大大提高了代碼的可讀性和可複用性,但是卻遺留了

原创 spring mvc請求體偷樑換柱:HandlerMethodArgumentResolver

最近有個需求要和外部對接,接口開放並且使用AES對稱加密對請求體進行加密。流程上,我們系統會和對方系統進行數次交互,每次交互都要進行數據的加解密以及序列化和反序列化,如果不做統一處理的話,會很麻煩: 繁瑣且冗餘的操作很令人厭煩 數據交互都

原创 confluence7.4.0 docker 安裝手冊

首先,confluence是收費軟件,如果對版權風險極其敏感的的可以選擇showdoc等開源產品替代~ 一、準備工作 confluence安裝需要confluence docker 鏡像、破解文件、mysql。 1.準備mysql conf

原创 ES常用API示例

以下示例基於elasticsearch 5.3.0 <dependency> <groupId>org.elasticsearch</groupId> <artifactId>elasticsearch</artifactI

原创 巧用SpringBoot擴展點EnvironmentPostProcessor

我們的項目是單體項目,使用的是springboot的框架,隨着對接的外部服務越來越多,配置文件越來越臃腫。。我們將對接的外部服務的代碼單獨抽離出來形成service依賴,之後以jar包的形式引入,這時候外部服務配置放到哪裏算是個難題了,我主