SpringBoot
不使用模板引擎返回視圖頁面
頁面資源都是放在
resources/static
文件夾下面
一: 繼承WebMvcConfigurationSupport
並配置視圖解析器
/**
* @Author: ZhiHao
* @Date: 2020/4/22 15:12
* @Description: MVC配置
* @Versions 1.0
**/
@Configuration
public class WebMvcConfig extends WebMvcConfigurationSupport {
/**
* 解決繼承WebMvcConfigurationSupport,靜態資源訪問不到
*
* @param registry
* @author: ZhiHao
* @date: 2020/4/23
*/
@Override
protected void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");
super.addResourceHandlers(registry);
}
/**
* 配置內部資源視圖解析器
*
* @param registry
* @author: ZhiHao
* @date: 2020/6/12
*/
@Override
protected void configureViewResolvers(ViewResolverRegistry registry) {
InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
//配置前綴, 不用加static文件夾路徑, 後面有文件夾路徑在加上 : /page/
viewResolver.setPrefix("/");
viewResolver.setSuffix(".html");
registry.viewResolver(viewResolver);
super.configureViewResolvers(registry);
}
}
二: 控制器返回ModelAndView
或者 返回頁面字符串(注意返回頁面字符串,類標記的註解是@Controller
)
@GetMapping("/test")
public ModelAndView getPage(){
ModelAndView view = new ModelAndView("/myerror");
return view;
}
//--------------------------
@GetMapping("/tests")
public String getPages(){
return "/myerror";
}
PS: 這種不用模板方式,好像在頁面中取不了後端數據, 或者可以使用另外的方式返回頁面, 頁面加載完成請求後端來進行加載數據!
1