我正在經歷Craig Walls Manning Spring4 in Action。爲什麼我需要一個視圖類來解析Spring MVC中的JSTL視圖?
在創建JSP的觀點,他認爲,
的的InternalResourceViewResolver最終解決邏輯視圖 名稱爲實例的InternalResourceView引用JSP文件 。 但是,如果這些JSP文件引用JSTL標籤爲formatiing或 消息,那麼你可能需要配置的InternalResourceViewResolver來解決JSTLView代替。
所有這一切需要有InternalResourceView解析器解析器JstlView,而不是InternalResourceView就是設置其viewClass類財產。
這樣,
@Bean
public ViewResolver viewResolver() {
InternalResourceViewResolver resolver =
new InternalResourceViewResolver();
resolver.setPrefix("/WEB-INF/views/");
resolver.setSuffix(".jsp");
resolver.setViewClass(org.springframework.web.servlet.view.JstlView.class);
return resolver;
}
爲什麼我要加入這一行
resolver.setViewClass(org.springframework.web.servlet.view.JstlView.class);
和究竟是什麼這個類意味着?
有什麼建議?`
你不...... Spring會自動檢測到JSTL的存在,並在可用時自動返回一個'JstlView'。所以你在這裏什麼都不加。見[這裏](https://github.com/spring-projects/spring-framework/blob/master/spring-webmvc/src/main/java/org/springframework/web/servlet/view/InternalResourceViewResolver.java#L62 ) –
@Deinum:同意,但爲什麼這樣一本好書的作者提到了這一點。 –
在早期版本中,它並沒有這樣做,我想這是由於舊材料的重用...... –