原创 mybatis-plus IdWorker生成的Id和返回給前臺的不一致

爲什麼要取這個標題呢?因爲如果情況和我遇到的一樣,也不知道原因就會這麼搜,比如我。? 文章目錄問題描述問題原因解決辦法方案一(適合BaseEntity方式)方案二(全局處理-兩種方式) 問題描述 今天在公司項目中修改id的生成策略

原创 自定義註解實現列維度的數據權限控制(springboot + shrio)

需求描述: 傳統項目中,經常會遇到系統根據用戶權限的不同,前臺部分數據需要打碼或者直接隱藏。而且後臺返回的數據也需要模糊處理。 文章目錄一、思路和要求二、SpringBoot + Jackson序列化1. 自定義序列化配置2. 自

原创 個人知識生態

個人知識結構,亦是學習路線,潦草記錄。

原创 SpringBoot + Activiti實踐

需求描述: 傳統項目中如OA系統中,很多需要這審批那審批的地方,此時就需要一個標準工作流來實現了。 文章目錄Activiti介紹開始之前我的實踐自定義邏輯織入 Activiti介紹 Geting Started Activiti

原创 交換兩個字符串中的x,y使得兩個字符串相等

文章目錄題目思路代碼 題目 字符串s1,s2長度相等,內容只包含字符x,y,不包含其他字符,每次互相交換一個字符,求使得兩個字符串相等的最小交換次數,如果無法使兩個字符串相等,則返回 -1 例: 輸入:s1="xy" s2="yx

原创 springboot+shiro自定義註解實現數據權限控制

需求描述: 傳統項目中,經常會遇到系統根據用戶權限的不同,前臺部分數據需要打碼或者直接隱藏。而且後臺返回的數據也需要模糊處理,不然相當於掩耳盜鈴。 文章目錄一、思路和要求二、SpringBoot + Jackson序列化1. 自定

原创 SpringBoot項目中Jackson反序列化時的多態配置

需求描述: 項目中可能有這麼一種情況,我們對外提供一個http接口服務,但是這個接口需要接收某一類具有共同特徵的參數(父類 – 子類)。比如一個消息服務接口去提供發送郵件,短信,根據傳入的消息類型不同而調用不同的發送邏輯,即接口接

原创 Java中Http請求Get和Post對LocalDateTime的格式化

需求描述: WEB項目中經常遇到前臺以Get或者Post方式傳時間值到後臺,後臺採用日期類進行參數接收。 文章目錄Java8日期類Get方式傳參格式化1. @DateTimeFormat 方式2. WebDataBinder方式(

原创 mybatis獲取實際執行的sql語句

最近項目中的一個需求:涉及到數據同步,由於環境原因導致只能通過webservice同步執行的sql語句,故需要獲取數據庫實際執行的增刪改sql語句到sql_log表中以同步。 編寫mybatis插件攔截sql語句 package

原创 springboot 自定義返回值處理器HandlerMethodReturnValueHandler

WEB開發中有這樣的需求: 返回給前臺的數據需要有統一格式。但是在controller的每個mapping中手寫包裝很是麻煩,所以可以自定義返回值處理器進行結果包裝。 文章目錄返回給前臺的消息格式自定義的返回值處理器Request

原创 MybatisPlus自動填充基礎字段

日常開發中數據庫建表必需三字段: id,create_time,update_time,這三個字段共用,可以使用統一自動填充避免插入或更新的時候手動賦值(麻煩還容易覆蓋不全) 文章目錄數據庫對應的實體類mybatis-plus自動

原创 Spring IOC 容器源碼分析

原文鏈接:https://javadoop.com/post/spring-ioc 文章轉自 https://javadoop.com/post/spring-ioc 文章目錄引言Bea

原创 SpringBoot Druid數據庫密碼加密

廢話不多說,直接貼代碼,畢竟搜這個的就是想知道怎麼搞。 1. 依賴 <dependency> <groupId>com.alibaba</groupId> <artifac

原创 自定義hibernate validator註解對字段進行校驗

1.  hibernate validator註解在web項目中經常用到,是一個很好用的字段校驗器,可以對前端傳入的參數進行判斷,如是否爲空,是否滿足正則規定的格式等等。 2. 假設有一個業務場景,需要判斷前端傳入的用戶是否存在,而項目中

原创 SnowFlakeGenerator生成業務鍵

          最近公司項目中新做一個項目,需要一個SnowFlakeGenerator用於生成業務表的唯一業務鍵,實際java實現如下(摘抄於網上,如有冒犯,請聯繫刪除): public class IdWorker{