Spring Web MVC框架的特點
Spring Web MVC框架提供了大量獨特的功能,包括:
-
清晰的角色劃分:控制器(controller)、驗證器(validator)、命令物件(command object)、表單物件(form object)、模型物件(model object)、Servlet分發器(
DispatcherServlet
)、處理器對映(handler mapping)、檢視解析器(view resolver)等等。 每一個角色都可以由一個專門的物件來實現。 -
強大而直接的配置方式:將框架類和應用類都作為JavaBean配置,支援在一個context中引用其他context的中JavaBean,例如,在web控制器中對業務物件和驗證器(validator)的引用。
-
可適配、非侵入的controller:你可以根據不同的應用場景,選擇合適的控制器子類(simple型、command型、form型、wizard型、multi-action型或者自定義),而不是從單一控制器(比如Action/ActionForm)繼承。
-
可重用的業務程式碼:你可以使用現有的業務物件作為命令或表單物件,而不需要在類似ActionForm的子類中重複它們的定義。
-
可定製的繫結(binding) 和驗證(validation):比如將型別不匹配作為應用級的驗證錯誤,這可以儲存錯誤的值。再比如本地化的日期和數字繫結等等。在其他某些框架中,你只能使用字串表單物件,需要手動解析它並轉換到業務物件。
-
可定製的handler mapping和view resolution:Spring提供從最簡單的的URL對映,到複雜的、專用的定製策略。與某些MVC框架強制開發人員使用單一特定技術相比,Spring顯得更加靈活。靈活。
-
靈活的model轉換: 在Springweb框架中,使用基於
Map
的名/值對來達到輕易地與各種檢視技術的整合。 -
可定製的本地化和主題(theme)解析:支援在JSP中可選擇地使用Spring標籤庫、支援JSTL、支援Velocity(不需要額外的中間層)等等。