项目中原本用的是JSP页面,后来前端给了很多HTML页面,不想改为JSP,所以配置多视图访问。
spring-mvc.xml配置代码如下:
<!-- springmvc 视图配置配置 -->
<bean id="htmlviewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="com.dgioc.ind.common.HtmlResourceView"/>
<property name="order" value="0" />
<property name="prefix" value="/view/fullscreen/"/>
<property name="suffix" value=".html" />
<property name="contentType" value="text/html;charset=UTF-8"></property>
</bean>
<bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="order" value="2" />
<property name="prefix" value="/view/pages/"/>
<property name="suffix" value=".jsp"/>
</bean>
<bean id="fullscreenJspViewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="com.dgioc.ind.common.HtmlResourceView"/>
<property name="order" value="1" />
<property name="prefix" value="/view/fullscreen/"/>
<property name="suffix" value=".jsp" />
</bean>
自定义类:
public class HtmlResourceView extends InternalResourceView {
@Override
public boolean checkResource(Locale locale) {
File file = new File(this.getServletContext().getRealPath("/") + getUrl());
return file.exists();// 判断该页面是否存在
}
}
完成如上配置,即可完成多视图访问。可任意return至JSP或者HTML。