2010-09-09 92 views
0

我呈現的形式呈現一個帶註解的域模型類,即:我可以通過freemarker訪問註釋嗎?

@Entity 
class User { 
    @NotNull 
    private String name; 
    // other code 
} 

我想讀註釋的元數據來決定如何呈現每個屬性。

我會用它來添加css類到我的輸入標籤,最後使用jQuery在這些字段上附加驗證方法。

的freemarker是否提供任何的方式來訪問註釋的元數據?

回答

1

有可能確實是一個辦法直接做到這一點,但我已經逐漸向它更簡單做額外的工作在我的操作代碼,以提供更容易的「東西」爲模板的消耗,而不是試圖得出這樣的結論co-erce Freemark跳過籃球。

例如,我將創建布爾值的列表,我顯示,表示,比方說每一個項目,無論是項目已被購買。 Freemarker非常擅長遍歷並行列表。

+0

我覺得應該有一個「註解感知」 TemplateModel暴露內置插件一樣_user.name?hasAnnotation('NotNull')_。這將保持控制器freemakrer不可知(它只是返回域對象),並將保持freemarker樣式來暴露模板中的數據,不是嗎?但我現在不知道如何實現這樣的功能。 – 2010-09-11 12:07:31

+0

這將是很好的,當然,但......你必須權衡搞清楚如何實現它與不是不可知的控制器的成本。海事組織的管制員*應該知道這個觀點,所以我沒有看到後者的很多價值。然後再次,你多久需要這個?如果很多,那麼實施您的註釋想法可能是值得的。 – 2010-09-13 16:03:38

相關問題