原创 RestTemplate學習

http請求方法 (1)GET:通過請求URI得到資源 (2)POST:用於添加新的內容 (3)PUT:用於修改某個內容,若不存在則添加 (4)DELETE:刪除某個內容 (5)OPTIONS :詢問可以執行哪些方法 (6)HEAD :類

原创 Spring 註解@Transactional

時刻感覺自己要寫出bug的節奏,瑟瑟發抖。 最近開發中發現一個問題,在使用@Transactional註解時,發現註解未生效,註解的方法在出現異常時,並沒有回滾。因此搜了一些該註解失效的原因。 @Transactional註解無效的原因

原创 工具類學習-CollectionUtils

CollectionUtils是日常經常會用到的一個工具類,在包org.apache.commons.collections中。 目前最常用到的兩個方法是CollectionUtils.isEmpty()以及CollectionUtils

原创 springboot gradle 使用過程中遇到的問題小結(6)

1. 報錯:Cannot deserialize instance of java.lang.String out of START_OBJECT token,我這裏報這個錯的原因是傳遞的json數據類型不對,修正後即可 2. 使用Jso

原创 分佈式事務

https://juejin.im/post/5b5a0bf9f265da0f6523913b 事務有ACID,是通過InnoDB日誌和鎖來保證。事務的隔離型是通過數據庫鎖機制實現的、持久性通過redo log重做日誌來實現。原子性和一致

原创 本地緩存和分佈式緩存的比較 堆污染

本地緩存和分佈式緩存的比較: 分佈式緩存一致性更好一點,本地緩存 每個實例都有自己的緩存,可能會存在不一致的情況。 本地緩存會佔用堆內存,影響垃圾回收、影響系統性能。分佈式緩存兩大開銷會導致其慢於本地緩存,網絡延遲和對象序列化 進程內緩存

原创 分區 分庫 分表 分片

https://blog.csdn.net/qq_28289405/article/details/80576614 https://www.cnblogs.com/junwangzhe/p/6420049.html 分區是物理數據庫的設

原创 Optional

目前的理解: 1. Optional中包含一個可以爲空的對象,應該在所有可能爲空的地方都加上Optional作爲返回值。強迫調用方自行判斷是否爲空。自己因爲老是忘記判斷是否爲null而導致空指針。 2. Optional之前自己最習慣的用

原创 Objects類

1. Objects,用於操作Object的靜態類。 equals(Object a, Object b),這裏感覺和Object中的equals作用相同。 deepEquals(Object a, Object b),這裏調用了Arra

原创 springboot gradle 使用過程中遇到的問題小結(5)

1. @RequestMapping  @PostMapping  @GetMapping @GetMapping和@PostMapping是組合註解 @GetMapping=@RequestMapping(method = Reques

原创 MoreObjects

MoreObjects是一個輔助類,提供了那些在Objects中沒有提供的方法。 T firstNonNull(@Nullable T first, @Nullable T second)。找出first和second中第一個不爲空的對象

原创 springboot gradle 使用過程中遇到的問題小結(4)

1. TypeReference 使用fastJson反序列化的時候用到 爲什麼使用TypeReference 淺談FastJson的TypeReference用法 2. MoreObjects.firstNonNull 返回第一個不爲空

原创 springboot gradle 使用過程中遇到的問題小結(3)

1. 生成jar包,本來想生成的是供其他項目引用的jar包。 但是利用右側gradle窗口中的tasks-》build-》bootJar生成的是可執行jar包,並不是想要的,這樣的jar包被引用之後,發現找不到對應的包以及所需要的類。 應

原创 springboot dubbo 踩坑(1)

1. 消費者consumer,使用了xml配置,@Reference註解發現注入null,後續改爲@Resource即可 2. 調用失敗,報錯: Failed to send response: Response [id=2, versi

原创 springboot gradle 使用過程中遇到的問題小結(2)

想要打包api層,然後出現錯誤: Plugin request for plugin already on the classpath must not include a version 新建的項目中默認的build.gradle中是: