2014-03-28 49 views
0

我有幾個關於Spring MVC的問題查看解析器。參考:http://docs.spring.io/spring/docs/4.0.3.RELEASE/spring-framework-reference/htmlsingle/#mvc-viewresolver-chaining有關解決multiplier問題的一些問題Spring View Resolvers

  1. 當沒有特定視圖解析器order屬性集,會發生什麼?
  2. 該文件是什麼意思an InternalResourceViewResolver, which is always automatically positioned as the last resolver in the chain?這是否意味着應該總是作爲約定被給予最高order,或者也許春暗示強制該解析器必須總是最後加載,因此order屬性不是必需的?

在此先感謝您。

回答

2

當沒有爲特定視圖解析器設置的順序屬性時會發生什麼?

收集的ViewResolvers將使用OrderComparator排序。如果沒有訂單(不執行Ordered),它將收到Ordered.LOWEST_PRECEDENCE

InternalResourceViewResolver文檔是什麼意思,它始終自動定位爲鏈中的最後一個解析器?這是否意味着InternalResourceViewResolver應該總是按照慣例被賦予最高順序,或者Spring可能會隱含地強制該解析器必須始終最後加載,因此不需要訂購屬性?

InternalResourceViewResolver被強制定位爲最後一個鏈條,因爲它總是會返回一個視圖無論它存在或鏈可達沒有渲染ViewResolver未來。


http://docs.spring.io/spring/docs/2.5.x/api/org/springframework/web/servlet/view/InternalResourceViewResolver.html

注意:當鏈接ViewResolvers,如果InternalResourceViewResolver總是需要在最後,因爲它會嘗試解決任何視圖名稱,不管底層的資源是否實際存在。

+0

感謝您的回答。你知道它在文檔中提到這些嗎? – ecbrodie

+1

@ecbrodie看我的編輯。 – Bart