2011-12-19 93 views
12

我正在寫一個Spring MVC應用程序,並尋找一種在視圖中進行佈局的方法。我看到的唯一選擇是Apache Tiles,我之前使用它並知道維護其配置有多痛苦。Apache Tiles的替代品

有沒有什麼好的選擇?我看着SiteMeshSpring Surf都似乎休眠。

回答

10

我在一個月前面臨同樣的困境。我一直是使用apache tile的經驗豐富的開發人員,我想嘗試一些不同的東西。

我做了一些研究,發現Spring MVC與freemarker和sitemesh有一些整合。我決定給兩個鏡頭。

瓷磚似乎有最活躍的社區。

你也可以嘗試一個純粹的速度實現。總結起來,我的項目最終恢復爲瓷磚。瓷磚是一個強大的模板框架,一旦你瞭解它的力量,我會發現很難找到一個好的替代品。另外,如果你已經熟練阿帕奇磚,我發現開關框架(如果有的話),並不能證明需要拿起SiteMesh的學習曲線的典型應用該類超支/ freemarker的

http://www.sitemesh.org/overview.html

http://freemarker.sourceforge.net/

+0

我試過Scalate,但沒有用。你是對的,當Tiles可以滿足我所有的需求時,不值得花時間學習另一個框架。 – 2011-12-20 02:00:07

1

IMO SiteMesh和Tiles都是相當不錯的方法,雖然較新的Tiles版本增加了很多未開發的功能 - 它不僅僅是一個簡單的模板機制。

如果您發現維護問題,我會考慮使用DSL或輕型圖形用戶界面將其包裝在一個薄層抽象層中,這兩者都可以產生很大的差異。

2

瓷磚和Sitemesh在設計上有很大不同。

  • 瓷磚被用作您的應用程序的一部分,旨在使用瓷磚。
  • Sitemash設計爲一個或多個現有應用程序前面的過濾器。您想要更改應用程序輸出的位置(例如(非常簡單的任務)替換徽標或添加額外的菜單選項)。

另一方面,我不明白爲什麼有這麼多的XML。你必須爲每個頁面編寫一個xml塊來定義它需要的佈局。 (如果你仍然配置一個包含瓷磚配置的文件列表,請看`org.springframework.web.servlet.view.tiles2.TilesConfigurer「。)

如果你想擺脫這些文件,那麼,也許,你應該考慮多使用其他框架延伸磚。

0

你可以使用phpj

它易於使用,自帶的例子,你可以用它來查看模板或生成HTML內容,任何你想要的方式。