Spring Boot RabbitMQ除了自行配置MessageListenerContainer
及註冊MessageListener
來收訊息外,也可使用@RabbitListener
標註在方法上使其接收RabbitMQ的訊息。
2020/8/30
Spring Boot RabbitMQ @RabbitListener 簡單範例
Spring Boot Messaging with RabbitMQ 範例
本範例參考Spring官網Messaging with RabbitMQ,示範Spring Boot RabbitMQ的基本配置與傳送/接收訊息。
2020/8/29
2020/8/28
IntelliJ IDEA Maven 下載依賴函式庫原始碼 download dependency library source code
IntelliJ IDEA Maven預設只會下載依賴函式庫已編譯的jar,如果要查看原始碼的話就必須連同原始碼(source code)一起下載。
Spring Data JPA JpaRepository save() 與 saveAndFlush() 差別
使用Spring Data JPA的資料存取層會繼承JpaRepository
,其儲存enity的方法有save()
與saveAndFlush()
,兩者差別如下。
2020/8/27
Spring Boot TransactionTemplate programmatically rollback
本篇介紹Spring TransactionTemplate
如何在程式中手動回滾交易。
2020/8/26
2020/8/25
2020/8/23
2020/8/22
Java ThreadPoolExecutor maxPoolSize 考題
最近面試的筆試題中關於ThreadPoolExecutor
的考題,測試對於ThreadPoolExecutor
中Thread Pool生成thread的了解。
2020/8/21
資料庫 交易的悲觀鎖與樂觀鎖 Transaction pessimistic and optimistic locking
資料庫交易特性ACID中的交易隔離(Isolation)通常利用「鎖(locking)」來實現,目的為避免同一筆資料在併行交易(concurrent transaction)中被不同的交易同時修改以確保資料的完整性。
交易鎖又分為「悲觀鎖(pessimistic locking)」與「樂觀鎖(optimistic locking)」。
2020/8/20
2020/8/19
為何在微服務中使用訊息佇列 Why use Messaging Queue in Microservices
在微服務架構(Microservice Architecture)中總是可以看到訊息佇列(Messageing Queue, MQ)技術的存在,為什麼微服務系統要使用MQ呢?
2020/8/14
2020/8/13
2020/8/11
2020/8/10
2020/8/9
Oracle PL/SQL Nested Table FOR LOOP start index
Oracle集合(collection)型態中的Nested Table(表格類型)的index是從1開始起算。
2020/8/7
Oracle PL/SQL Stored Procedure PLS-00428
在撰寫Oracle Stored Procedure時,出現
PLS-00428:在此SELECT敘述句中預期會出現一個INTO子句
PLS-00428: an INTO clause is expected in this SELECT statement.
錯誤的原因如下。
2020/8/6
Oracle PL/SQL call function PLS-00221 error
在Oracle PL/SQL呼叫function時出現
PLS-00221: 'function_name' is not a procedure or is undefined
PLS-00221: 'function_name' 不是程序或未定義
錯誤的原因如下。
Oracle PL/SQL define Function in Package
在Pacakge(套裝程式)中建立一個Function(函式)的方法如下。