Springmvc中一个比较重要的组件ViewResolver。
功能:
ViewResolver帮助dispatcher servlet识别哪个视图将被渲染。Springmvc可以支持多种类型的ViewResolver实现。InternalResourceViewResolver
就是其中的一个实现类。在DefaultServlet-servlet.xml文件中它是这样定义的。
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
当请求http://localhost:8080/webstore2/处理结束时,HomeController类的welcome函数返回一个字符串"welcome"
将prefix,返回字符串welcome和suffix连接起来,结果为/WEB-INF/jsp/welcome.jsp。这就是InternalResourceViewResolver的功能,根据controller的字符串构建URL路径。
最后,这个URL路径被dispatcher servlet使用。dispatcher servlet根据这个URL找到对应的文件,并把页面内容渲染显示出来。如果dispatcher servlet根据这个URL定位具体文件失败的话,就是出现错误。