[英]issue while using spring data gemfire repository functionality while querying data from region
[英]@Region annotation when using Spring Data Gemfire
我正在使用Spring Data和Gemfire開發數據服務。 有一個注釋
@Region("<region name>")
指定POJO將存儲在哪個Gemfire區域。
它需要配置的Gemfire區域的名稱。 我覺得硬編碼區域的名稱是一種不好的做法,因為Gemfire集群將由一個單獨的團隊管理,我相信區域名稱應該是完全可配置的。
有沒有更好的做法來避免對區域名稱進行硬編碼?
區域名稱必須由訪問該區域的所有進程共享。 這類似於關系數據庫中的表名。 從這個意義上說,它與JPA或Hibernate注釋沒有區別,它們聲明了將存儲POJO的表名。 IIRC,使用Spring Data Repositories,如果@Region不存在,它將從類名中獲取它。 但不管怎樣,相應的區域必須存在。 如果您的應用程序是GemFire網格的客戶端,則還必須配置與服務器上相應區域同名的客戶端區域。 如果它是對等體,則必須創建區域(分區或副本)。 這些事情可以通過Spring配置或本機GemFire配置來完成,但無論如何,共享區域名稱必須事先知道,如果它發生變化,它必須在任何地方都改變。
你能用Spring Expression Language來注入Region的名字嗎?
我們從配置bean(它本身基於XML文件)注入一個值到@Value注釋中,例如:
@Value("#{config.dataSourceConfig.dbMainUsername}")
其中“config”是配置bean的名稱。
不確定這適用於所有注釋......
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.