關於mybaitsPlus的多數據源切換注解@DS的注意事項


 1 Service A(){  
 2 
 3     function startFunction(){
 4        B.testOne();
 5     
 6        C.testTwo();
 7     }
 8     
 9 }
10 
11 
12 Service B(){
13     @DS("First")
14     testOne(){
15         //具體使用數據源First的查詢
16     }
17 
18 }
19 
20 
21 Service C(){
22 
23     @DS("Second")
24     testTwo(){
25         testThrid();
26     }
27     
28    testThird(){
29         //具體使用數據源Second的查詢
30     }
31     
32 }                    

最近項目中使用到了多數據源切換,經過測試發現該注解需要標注在程序的入口處,舉例如上面所示。

1.在同一個方法中不能同時使用兩種數據源,需要使用的化要將代碼抽成獨立方法。例如上面不能在testOne方法中調用testThird方法,因為testOne中已經使用了數據源First,不能在方法內部在切換成數據源Second。但是startFunction中就可以調用這兩個方法,因為這兩個方法相互獨立。

2.需要在方法的入口處切換數據源,即我們需要在testTwo方法上制定切換成數據源Second,才能成功的在startFunction中獲取到應有的數據,如果只在testThird方法切換數據源,但是testTwo方法上沒有切換則startFunction中調用的testTwo方法不能夠正確執行,將找不到數據源

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM