原创 將創建的動態代理對象注入到 Spring 容器中(仿AOP)

系統服務類 系統接口 public interface ISystemService { int saveRecord(); } 系統實現類 @Slf4j @Service // 標識該類爲動態代理類 @Proxy(in

原创 Jackson 自定義序列化器

自定義序列化器 方式1-局部註冊 @Data public class AssetDTO { private String assetCode; private String city; private

原创 算法-查找鏈表中倒數第K個節點

鏈表數據結構 public static class Node { private Node next; private int data; public Node(int da

原创 算法-單向鏈表反轉實現

鏈表數據結構 public static class Node { private Node next; private int data; public Node(int da

原创 Java 語言中一個字符佔幾個字節?

Java基本數據類型 類型 大小 範圍/精度 byte 1字節 8位,最小值是 -128(-2^7); 最大值是 127(2^7-1) short 2字節 16位,最小值是 -32768(-2^15); 最大值是

原创 使用Google BloomFilter 對爬蟲url集進行去重

生成 url 文件 #!/usr/bin/env bash file='./bigFile.txt' urlPre='https://blog.csdn.net/u010979642/' [ $1 ] && count=$1 |

原创 SpringBoot系列-AOP 面向切面

基本概念 Advice(通知、切面): 某個連接點所採用的處理邏輯,也就是向連接點注入的代碼, AOP在特定的切入點上執行的增強處理。 @Before: 標識一個前置增強方法,相當於BeforeAdvice的功能。 @Afte

原创 Mybatis resultMap用法之系統數據字典實現

實體對象 字典實體 @Data @Alias("Dict") public class SysDict { // 字典代碼 private String dictCode; // 字典名稱 priv

原创 分佈式之消息隊列複習精講!

爲什麼要使用消息隊列 分析: 一個用消息隊列的人,不知道爲啥用,這就有點尷尬。沒有複習這點,很容易被問蒙,然後就開始胡扯了。 回答: 這個問題,咱只答三個最主要的應用場景(不可否認還有其他的,但是隻答三個主要的),即以下六個字:解

原创 Java List元素爲對象拷貝問題

java數據類型: 基本數據類型和引用數據類型 基本數據類型: byte、short、int、long、float、double、char、boolean 引用數據類型: 類、接口、數組 list本質上是數組,如果數組的元素類

原创 SpringBoot引入Knife4j(增強版Swagger)爲Java MVC框架生成api文檔

knife4j是爲Java MVC框架集成Swagger生成Api文檔的增強解決方案,前身是swagger-bootstrap-ui,取名knife4j是希望她能像一把匕首一樣小巧,輕量,並且功能強悍!   快速開始 添加mave

原创 commons-collections4集合類庫使用

添加maven依賴 <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId>

原创 SpringBoot 2.0 + Actuator 應用健康監控管理

springboot的Actuator提供了運行狀態監控的功能,可以通過REST、遠程Shell和JMX方式來查看。   引入Actuator 添加jar包依賴 <dependency> <groupId>org.spri

原创 JVM 常用參數以及命令

簡介 java啓動參數共分爲三類 其一是標準參數(-),所有的JVM實現都必須實現這些參數的功能,而且向後兼容 其二是非標準參數(-X),默認jvm實現這些參數的功能,但是並不保證所有jvm實現都滿足,且不保證向後兼容 其三是非

原创 Jackson 反序列化時 json 字符串 和 Java Bean 對象類型不一致

待反序列化 json 字符串 { "valuationMethods": { "valuationMethod": [ { "methodId": 1