開始使用 wicket

Wicket 是一個基於元件的框架,它與早期的一些有時單調的 Web 程式設計任務的解決方案形成鮮明對比。與其他框架一樣,Wicket 構建在 Sun 的 servlet API 之上。

但是,與 Struts 或 Spring MVC 等框架不同,使用 Wicket 的開發人員大部分都是從 Web 和 Servlet 固有的請求/響應性質中刪除的。Wicket 開發人員不僅要構建必須同時為許多使用者和執行緒提供服務的控制器,接收請求,返回響應,而且不儲存任何狀態,而是根據有狀態元件進行思考。他或她建立一個頁面,在其上放置元件,並定義每個元件對使用者輸入的反應,而不是建立控制器或操作類。

Wicket 使用普通的 XHTML 進行模板化。每個元件都繫結到 XHTML 中的命名元素,並負責在最終輸出中呈現該元素。該頁面只是頂級包含元件,並且只與一個 XHTML 模板配對。

每個元件都有自己的模型支援,該模型表示元件的狀態。該框架不瞭解元件如何與其模型互動,這些模型被視為在請求之間自動序列化和持久化的不透明物件。然而,更復雜的模型可以是可拆卸的,並提供鉤子以在每個請求週期的開始和結束時安排它們自己的儲存和恢復。

在 Wicket 中,所有伺服器端狀態都是自動管理的。你永遠不應該直接使用 HttpSession 物件或類似的包裝器來儲存狀態。相反,state 與元件相關聯。每個伺服器端頁面元件都包含一個有狀態元件的巢狀層次結構,其中每個元件的模型最終都是一個 POJO(Plain Old Java Object)。