原创 mybatis之generator代碼生成器

在使用了mybatis後,每次需要手寫pojo、xml,及配置他們的依賴關係,比較麻煩且做了大量的重複工作,mybatis 官方提供的 generator可以實現自動創建這些的功能。 1、首先建好一個基礎項目,目錄如下 2、ym

原创 ActiveMQ、RocketMQ、RabbitMQ、Kafka區別

一、三大應用場景(優點) 解耦、異步、削峯 1、解耦:只需要將消息寫入消息隊列,需要消息的去消息隊列中訂閱就好 2、異步:一些非必要的邏輯可以採用異步來完成,從而提升響應速度 3、削峯:某個時間段併發量特別大的時候可以將消息發送到

原创 代碼優化小技巧

1、迭代entrySet() 獲取Map 的key 和value 當循環中只需要獲取Map 的主鍵key時,迭代keySet() 是正確的;但是,當需要主鍵key 和取值value 時,迭代entrySet() 纔是更高效的做法

原创 Redis常見面試題

1、Redis分佈鎖是怎麼實現的? 先拿setnx來爭搶鎖,搶到之後再用expire給鎖加一個過期時間防止鎖忘記釋放。 如果在setnx之後執行expire之前的進程意外crash或重啓維護了,那會咋樣?Set指令 有非常複雜的參

原创 sql查詢一個班級中男女各有多少人及總人數

表結構及數據: 其中 1 代表是男生 ,2 代表是女生 ,然後我們要得到下面這種結果: 可以結合 sum 函數、case 函數以及 count 函數來實現 SELECT class AS 班級, SUM(CASE WHEN s

原创 SpringBoot+SpringCloud面試題整理:

什麼是SpringBoot? 1、用來簡化spring初始搭建和開發過程使用特定的方式進行配置(properties或者yml文件) 2、創建獨立的spring引用程序main方法運行 3、嵌入Tomcat無需部署war包,直接打成j