現在,我的web.xml被配置爲Spring MVC將接管任何具有* .html後綴的內容。我有幾個控制器根據當前用戶狀態生成Web鏈接。Spring MVC是否提供用於構建Web鏈接的任何Java API?
舉例來說,我有以下的代碼,以確定哪些「下一步」按鈕應指向:
if (nextSlide != null) {
nextLink = String.format("/%s/module/%d/slide/%d.html", studyName, moduleId, nextSlide.getKey());
}
else {
nextLink = String.format("/%s/module/all.html", studyName);
}
但是,因爲我硬編碼名「.html」我不喜歡這種方法到這裏的鏈接。我當然可以創建一個工廠,生成帶有「.html」後綴的鏈接,以隱藏所有控制器代碼,但這仍然要求我在Java代碼中對「.html」進行一次硬編碼...不要太乾。
我基本上希望Spring MVC有一些允許我構建鏈接的API。如果這些API不存在,是否像我在這裏那樣對Java代碼中的後綴進行硬編碼?
我同意你的看法,但我之所以這樣做是在Java端我的當前項目,因爲它需要大量的計算才能確定下一個鏈接。如果我在視圖中這樣做,最終會有很多變量被傳遞到模型中,並且視圖中有很多邏輯來構建鏈接,這並不是很漂亮。 – limc 2011-01-19 20:45:21