今天弄畢設時因爲前後端分離,前端React生成的是html文件,而後端是Jsp頁面,需要SpringMvc配置jsp、html兩個視圖解析器,核心思想是繼承SpringMvc給的父類,自己寫一個解析類,方法如下:
第一步:繼承InternalResourceView,寫解析類
package com.ssm.hui.util;//這是你的包名 跟
import java.io.File;
import java.util.Locale;
import org.springframework.web.servlet.view.InternalResourceView;
/**
* @author hui
* @date 創建時間:2018年5月9日 下午5:26:55 吳清輝新建
* @version 1.0
**/
public class HtmlResourceView extends InternalResourceView {
@Override
public boolean checkResource(Locale locale) {
File file = new File(this.getServletContext().getRealPath("/") + getUrl());
return file.exists();// 判斷該頁面是否存在
}
}
第二步:配置xml
<!-- 定義HTML文件的位置 -->
<bean id="htmlviewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="com.ssm.hui.util.HtmlResourceView"/><!-- 改成你自己的第一步新建的解析類路徑 -->
<property name="order" value="0" />
<!-- 前綴 -->
<property name="prefix" value="/WEB-INF/content/" />
<property name="suffix" value=".html" />
</bean>
<!-- 定義JSP文件的位置 -->
<bean id="jspViewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
<property name="order" value="1" />
<!-- 前綴 -->
<property name="prefix" value="/WEB-INF/content/" />
<!-- 後綴 -->
<property name="suffix" value=".jsp" />
</bean>