2011-03-25 54 views
6

我正在計劃一個Web應用程序,我目前正在評估框架。過去,我在Ruby on Rails上做了很多工作,但由於這個應用程序將依賴大量已經用Java編寫的代碼,並且將運行在Application Server基礎架構上,所以它也將使用Java。Rails像Spring MVC Web應用程序的視圖

到目前爲止,我看了幾個框架和Spring MVC(3.0)看起來最有希望用於我的計劃。我喜歡與Rails相比有許多概念相似:前端控制器,推送視圖和寧靜的URL。

但是,我仍然不確定觀看部分。我希望能夠擁有一個(或多個)具有我的網站基本結構的應用程序模板,包含徽標,頁腳等。此模板將包含一些動態區域,例如導航部分等(在Rails speek中,收益率:navigation) 一些視圖代碼,特別是表單將被重用;這就是爲什麼類似partials的東西也會很好。

我的頭版可能是這樣的:

+-------------------------------+ 
| Application.tmlp    | 
|        | 
| +-------------------------+ | 
| | index.tmpl    | | 
| |       | | 
| | +-------------------+ | | 
| | |     | | | 
| | | login_partial.tmpl| | | 
| | |     | | | 
| | +-------------------+ | | 
| |       | | 
| +-------------------------+ | 
|        | 
+-------------------------------+ 

到目前爲止,我發現的Velocity,FreeMarker和Tiles,但我仍然不能確定哪一個適合我的需要最好的。我喜歡模板概念,因爲我希望一些設計師創建模板。

東西也將是不錯,但不是作爲模板的概念一樣重要,是自動創建的鏈接像鐵軌的link_to助手:

link_to "Profile", :controller => "profiles", :action => "show", :id => @profile 

哪種說法實施Spring MVC中最接近這個?非常感謝!

+1

你也考慮過[玩!框架](http://www.playframework.org)在你的評價?與您目前列出的任何解決方案相比,它更接近您嘗試實現的目標。 – gizmo 2011-03-25 10:02:22

+0

我沒有意識到玩!框架。我會仔細看看它。謝謝! – phisch 2011-03-25 11:17:57

+0

現在我正在經歷同樣的......我還沒有發現任何遠離軌道的東西。我決定使用JSF2(用於視圖)和Spring MVC作爲控制器,因爲我也需要支持REST服務(jsf不支持)。如果您發現任何有趣的事情,請與我們分享!我只花了一整個早上試圖弄清楚如何在rails中編寫鏈接,但是我被擊敗了,所以我需要'硬編碼'鏈接(除了基本url) – Augusto 2011-04-04 15:36:28

回答

6

看看grails它有sitemesh在裏面,我想這就是你要找的。

+0

絕對看看Grails。來自Rails,你會感到賓至如歸。你也可以在Spring MVC中使用Sitemesh,但不幸的是Spring MVC沒有「反向URL映射」(參見http://stackoverflow.com/questions/1082759/can-i-find-the-url-for-a-spring- MVC-控制器內式視圖層) – sourcedelica 2011-03-25 12:38:17

2

構建JSP模板的好框架是Apache Tiles。它可以很容易地集成到Spring Web MVC應用程序中。


或者,如果你有Ruby on Rails的經驗,你可以看看Spring Roo,增加和代碼生成層「約定優於配置」在Spring之上,類似於Rails會的Ruby應用程序。