原创 【Java併發】Java併發之CountDownLatch

CountDownLatch是一個同步輔助類,可以使用它做一個類似於計數器的功能,在完成一組正在其他線程中執行的操作之前,它允許一個或多個線程一直等待。 典型的應用場景: 有一個任務想要往下執行,但必須要等到其他的任務執行完畢後

原创 sql三表級聯多條件模糊查詢

SELECT tb_article.id,tb_article.article_name,tb_article.content,tb_article.content_encode,tb_article.userid,tb_article.

原创 設計模式之裝飾模式Java實現

裝飾模式---對象結構型模式 寫在前面 簡明的說裝飾模式 是你還有你,一切拜託你 1.意圖 動態地給一個對象添加一些額外的職責。就增加功能來說,Decorator模式相比生成子類更爲靈活。 2.別名 包裝器Wrapper 3.動機 有時我

原创 設計模式之抽象工廠

意圖: 提供一個創建一系列相關或相互依賴對象的接口,而無需指定它們具體的類。 別名: Kit 動機: 在軟件系統中,經常面臨着“一系列相互依賴的對象”的創建工作;同時,由於需求的變化,往往存在更多系列對象的創建工作。 如何應對

原创 IDEA使用maven搭建java項目連接redis(圖文)

1.新建項目 2.添加依賴 對應的依賴配置項可以在https://mvnrepository.com/artifact/redis.clients/jedis 中找到,可以根據自己想要的版本進行配置。 3.mev

原创 橋接模式與裝飾模式的對比

使用裝飾模式進行系統設計時將產生很多小對象,這些對象的區別在於它們之間相互連接的方式有所不同,而不是它們的類或者屬性值有所不同,同時還將產生很多具體裝飾類。這些裝飾類和小對象的產生將增加系統的複雜度,加大學習與理解的難度。 這種比

原创 Spring Cloud Gateway集成Sentinel,限流

添加依賴 <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-core</artifactId> <version>1.6

原创 定時備份數據到另一臺服務器

1、配置免密登錄 ssh-copy-id [email protected] xxx用戶名,111.111.111.111示例IP 2、編寫備份拷貝到備份機腳本 #! /bin/sh tarName="$(date +%Y

原创 JVM運行時內存區域

程序計數器(Program Counter Register) 程序計數器是一塊較小的內存空間,它可以看做是當前線程所執行的字節碼的行號指示器。 Java虛擬機的多線程是通過線程輪流切換並分配處理器執行時間的方式實現,在任何一個

原创 【Linux】kill -9 停不掉進程

遇到的問題: HDFS 拷貝數據,起了FsShell進程,想停掉,kill了又重新起FsShell進程。 使用ps -ef | grep FSShell 顯示信息是 列名: UID PID PPID

原创 【Linux】nohup後臺運行腳本 終止腳本運行

command &和nohup command區別 command & 是後臺運行 Ctrl + C後程序不停止運行,關閉shell會話後或者其他原因導致shell會話退出 程序停止運行 nohup command shell會話退出

原创 【Python】科學計數法轉化爲浮點型數據

def as_num(x): y = '{:.10f}'.format(x) # .10f 保留10位小數 return y if __name__ == '__main__': str = '2.8865

原创 【Linux】Shell執行Java jar傳入參數並獲取退出碼

#!/bin/bash result=0 if [ $# -eq 2 ];then java -jar test.jar $1 $2 result=$? fi if [ $# -eq 1 ];then java -jar test.j

原创 執行shell腳本報syntax error: unexpected end of file錯誤

原因: 我的腳本是在windows上創建並編輯的。 windows下的換行是\r\n 而linux下的換行只是\n 解決辦法: 顯示換行符 將\r\n替換爲\n (這裏我使用的是Notapad++的替換,快捷鍵爲Ctrl +

原创 【Git】Git創建本地分支並關聯遠程分支

創建本地分支 git branch 分支名 切換到本地分支 git checkout 分支名 創建本地分支並切換到該分支 git checkout -b 分支名 提交本地分支到遠程倉庫 git push origin 本