原创 redis 實現分佈式鎖(二)

1、依賴包 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot

原创 分佈式全局唯一ID(二)

redis 實現分佈式唯一ID,其實這個也很簡單,主要使用redis String數據結構的 increment 方法。 原理: 使用increment方法,每次自加1,主要使用redis的高性能和單線程。 實現方式: 核心代碼如下,若是

原创 springboot 全局異常處理 @ControllerAdvice和@ExceptionHandler

 GlobalException: import lombok.extern.slf4j.Slf4j; import org.springframework.util.StringUtils; import org.springfram

原创 mybatis 攔截器(Interceptor)實現公共屬性賦值(代碼優化)

 https://blog.csdn.net/qq_38428623/article/details/103981432 package com.jh.erp.web.interceptor; import com.jh.erp.se

原创 分佈式全局唯一ID(四)

使用數據作爲分佈式事務的唯一ID。 1、比如sqlserver、mysql等數據庫的自增主鍵 2、oracle數據庫的序列實現 這個代碼就忽略了,沒有什麼可寫的。只需要創建一張表自增表(SqlServer、mysql),或者創建序列(Or

原创 linux telnet連接請求dubbo接口

查看服務器的進程(jps -l) [baseuser@S061 ~]$ jps -l 8966 xxxx-1.0-SNAPSHOT.jar 17756 sun.tools.jps.Jps 查看進程對應的端口(netstat -anp

原创 獲取當前機器的CPU的核數

獲取當前機器的CPU的核數,Runtime.getRuntime().availableProcessors(),並行線程池也是通過當前的方式獲取CPU的核數。

原创 分佈式全局唯一ID(一)

雪花算法,這網上一大票,就不詳細寫了,後面有時間再補充,後面還有(2)(3)

原创 異步操作之 CompletableFuture

CompletableFuture 也可以異步執行方法 1、無返回結果的示例 final CompletableFuture<Void> future = CompletableFuture.runAsync(() -> {

原创 java 獲取泛型對象實體類的表名

 說明:         獲取實體對象表名,主要是爲了獲取表名做特殊的業務,但是獲取表名不一定要這樣獲取,但是這是爲了統一而實現的功能,其實是在這裏面實現的,https://blog.csdn.net/qq_38428623/articl

原创 redis 實現分佈式鎖(一)

1、依賴包 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-da

原创 RedisTempalte 同時連接redis的集羣模式和哨兵模式

1、maven 依賴包 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>sprin

原创 java 利用tk.mybatis的通用mapper實現異步導出(一)

        由於某些系統導出頻率很高,而且數據量很大,要是同步導出不僅佔用當前系統的cpu、內存等硬件的資源,同時也會佔用網絡等資源,所以我們可以把導出的功能做爲異步的方式,異步操作並起把文件放到文件服務器中,下載的文件直接從文件系統

原创 tk.mybatis 獲取當前類泛型對象實體類的表名

 隨筆,簡單記錄而已, final ParameterizedType paraType = (ParameterizedType) this.getClass().getGenericSuperclass(); fi

原创 通用的統一返回結果

import lombok.Data; import org.apache.commons.lang3.StringUtils; @Data public class Result<T> { /** * 狀態值 */ p