這是我一直在努力的一段時間。事情是:我有很多(20左右)靜態值的數組。我說靜態,因爲這就是我實際存儲它們的方式,因爲它們是某些域內的靜態數組。例如,如果我知道網站的列表,我做的:Grails - 在哪裏存儲與域名相關的房產
class Website {
...
static websites = ["web1", "web2" ...]
}
但我這樣做只是在發展,因爲如果需要,我可以很容易地改變陣列,但我現在要做的時候應用程序已準備好部署?在我的項目中,很可能在某些時候,這些數值的陣列發生變化。我一直在研究這個問題,可以將應用程序屬性存儲在外部.properties文件中,但是不可能存儲數組,甚至是徒勞的,因爲如果某個數組獲得附加值,應用程序無法識別它直到在需要時添加新財產的名稱。
另一種方法是將這些信息存儲在數據庫中,但出於某種原因,添加20個或更多表將只有兩行,即一個id和一個名稱是很浪費的。
據我所知,最後一個選項是XML,但我對這些並不是很有經驗。看起來groovy有一種創建和讀取XML文件的方法相對容易,但我不知道修改應用程序中預定義佈局的XML有多困難。
不用說,將它們存儲在config.groovy中不是一個選項,因爲任何更改都需要重新編譯。
我還沒有遇到一些「標準」(也許是最佳做法?)處理這些問題的方法。
所以問題是:在哪裏存儲這些數組?
當然#1和#3 – David 2012-04-13 01:23:29
所以會有很多一對一的關係。我需要根據這些屬性進行篩選和排序。例如,Book.nameOfCategory(在單獨的表中的屬性)比Book.nameOfCategory(屬性直接存儲在表中)排序真的更快。 – GalmWing 2012-04-15 17:09:48
如果多個實例具有相同的類別,這不是一對一的。如果是表現令你感到恐慌,請查看http://grails.org/doc/latest/guide/GORM.html#gormComposition。 – Chris 2012-04-15 17:29:14