原创 nacos安裝與使用

1.先在服務器上安裝jdk1.8和maven3.2.x+ 2.https://github.com/alibaba/nacos/releases下載安裝包 tar -zxvf nacos-server-1.2.0.tar.gz cd

原创 rabbitmq動態注入隊列bean到spring容器

如果有幾百個隊列,正常做法是用@Bean方法將隊列注入到Queue對象中,但這樣太麻煩了, 我們可以把隊列放到list中,然後再循環動態注入到spring容器中, @Configuration public class AutoBean

原创 java8接口新特性

變量必須public static final(final則必須有初始值) 方法必須public abstract(抽象就不是靜態) java8新增 public interface IUser { static void s

原创 rabbitmq 消息過期成爲死信的2種方法

1.設置隊列消息過期時間 @Bean //注入正常交換器 public FanoutExchange normalExchange() { return new FanoutExchange("NORMAL_EXCHANGE",

原创 Feign整合Sentinel實現降級處理

場景:服務user,有一個接口/getUserOrder.do,調用服務order的/getOrder.do接口,獲取用戶訂單信息。 若調用失敗,需要進行降級處理,返回"已進行降級相關處理"字符串。 一,Feign整合Sen

原创 CurrentHashMap - jdk1.7

//採用數組 + 鏈表結構,再對數組元素採用分段鎖 //數組 final Segment<K,V>[] segments; //數組元素 static final class Segment<K,V> extends Reentran

原创 數據庫樂觀鎖和悲觀鎖例子和分析

1.樂觀鎖:樂觀地認爲每次讀數據別人都不會修改,所以不需要用數據庫鎖 //查出商店中id=1的商品的版本號 select version currentVersion from shop where id=1; //把id=1的商品庫存

原创 HashMap - jdk1.7

1.底層存儲是Entry<K,V>[] table,Entry對象裏面還有個Entry<K,V> next指着下一個對象 static class Entry<K,V> implements Map.Entry<K,V> {

原创 對分數進行排名,排名必須連續

需求:對分數進行排名,排名必須連續 CREATE TABLE `stu` (   `ID` int(11) NOT NULL AUTO_INCREMENT,   `name` varchar(50) DEFAULT '' COMMENT

原创 LeetCode_db:查出每個班級分數前3高的學生

需求: 查出每個班級分數前3高的學生 CREATE TABLE `stu` ( `ID` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) DEFAULT '' COMME

原创 dubbo整合springboot例子

新建一個父項目,裏面包含Api,Provide和Consume三個子項目。 Api:存放接口 Provide:實現接口 Consume:調用接口,返回的是Provide具體實現的內容 1.父項目maven配置: <modules>

原创 LeetCode_算法:有效的括號

/** * 給定一個只包括 '(',')','{','}','[',']' 的字符串,判斷字符串是否有效。 * * 有效字符串需滿足: * * 左括號必須用相同類型的右括號閉合。 * 左括號必須以正確的順序閉合。 * 注意

原创 LockSupport使用例子

LockSupport普通例子: public class LockSupportPark { public static void main(String[] args) throws InterruptedExceptio

原创 Thread.join使用場景

Thread.join使用場景: 如下例子,有一個任務需要花10秒才完成,現可分2個線程各做一半任務, 2個線程同時跑,5秒後即可完成任務並得到結果。 所以join可應用於,需要多線程執行任務以減少主線程花費時間的場景。 public

原创 synchronized鎖的5種狀態

synchronized用的鎖是存在java對象頭中,上鎖,改變的就是對象頭。 synchronized鎖有5種狀態:無鎖,偏向鎖,輕量級鎖,重量級鎖,GC標誌信息。 0.java應用啓動的時候會有多個系統自帶的線程執行synchroni