我想知道如果我們可以在Grails應用程序中配置2個數據源,我想要一個只讀訪問(選擇),另一個有讀寫訪問(創建,插入,更新..)我可以在不同的權限groovy有2個不同的數據源
回答
對於2.0之前的應用程序使用http://grails.org/plugin/datasources/和2.0它內置的Grails - 請參閱該文檔在http://grails.org/doc/2.0.0.RC1/guide/conf.html#multipleDatasources
是的,你可以,但 - 從我的經驗 - 有一些條件/侷限性你應該知道。
知道這一點: Grails 2 can't login with spring security when using multiple databases
文檔http://grails.org/doc/2.0.0.RC1/guide/conf.html#multipleDatasources說,你既可以通過域映射或使用服務和靜態的「數據源」屬性數據源之間切換。
我發現域映射確實有效,但服務本身並不起作用,從我解釋文檔的方式我們也應該可以做到。
2.1在Datasources.groovy中定義數據源: 您可以聲明您希望您的域模型使用哪種數據源,這可以正常工作。同時,聲明你的域使用多個數據源,然後指定你的控制器使用的數據源: bookInstance.db1.save() 或 bookInstance.db2.save()
,或者當數據源是未知手之前,你可以這樣做:
高清DS = 「DB1」 //或將其設置爲你想要的任何東西,DB1,DB2,DB3 ... bookstance 「$ DS」 .save()
。但是,如果你想使用服務來聲明數據源,那對我來說根本不起作用。
靜態數據源=「DB1」
無論怎樣,在Grails服務這並沒有爲我工作。
2.2在默認數據庫中聲明數據源,然後在運行時注入其他數據源。 該文檔說你可以在運行時注入一個新的數據源bean。你可以,但它不會被Grails拾起。我一直無法讓Grails知道新注入的數據源bean。因此,數據源必須保持在Datasource.grooy
預申報-
- 1. Rails權限:對不同模型的不同類型的權限
- 2. 根據Android版本可以指定不同的權限嗎?
- 3. 我可以擁有2個不同的DN區域嗎?
- 4. 不同的SSAS權限
- 5. 相同的UIViewController從2個不同的來源,但有不同的結果
- 6. 比較來自2個不同數據庫的2個不同數據表列
- 7. Facebook FQL爲相同權限返回不同的數據
- 8. 運行具有不同權限的Python
- 9. Kubernetes吊艙具有不同的權限
- 10. htaccess的用戶具有不同權限
- 11. 不同的權限爲同一個亞馬遜s3fs桶安裝在2個不同的實例?
- 12. 針對具有不同權限的不同用戶顯示不同的視圖
- 13. 搜索2分不同的列在2個不同的數據集中的R
- 14. Android:兩個活動的不同權限
- 15. 不同的權限,不同的表在MySQL
- 16. 2個不同的可變參數宏
- 17. 在2個不同的數據庫中的2個表,具有不同的結構,並且具有相同類型的數據進行同步
- 18. 在Plotly中爲同一實體繪製2個不同的數據源
- 19. 我可以有不同的類型
- 20. REST:更新與不同領域的資源需要不同的用戶權限
- 21. 2個不同的數組,具有不同的值
- 22. 從2個不同的數據庫,2個不同的表Linq到SQL bulkupdate
- 23. 我們可以在NuGet中添加2個不同版本的相同包
- 24. MySQL查詢2個不同的數據
- 25. 調用2個不同的數據庫
- 26. JTable與2個不同的數據
- 27. 我不能有兩個不同的數據源綁定到我的不同全景項目
- 28. 在關係數據庫中處理不同的用戶權限
- 29. com.facebook.sdk錯誤2當嘗試以不同的發佈權限重新授權
- 30. IPagedList - 2個不同的來源
我看到指向官方文檔幾個地方,但沒有足夠的反饋,我描述了兩個主要問題。 @burtbeckwith,你是否知道爲什麼在服務中聲明數據源不起作用的任何原因?此外,我正在閱讀文檔的方式,我應該能夠在調用服務之前在服務權限上設置數據源靜態屬性,對嗎? – Kyle