作者:liuxiaopeng
出自:博客园
原文:https://www.cnblogs.com/paddix/p/8301331.html
做web开发的时候,我们往往会有很多静态资源,如html、图片、css等。那如何向前端返回静态资源呢?
以前做过web开发的同学应该知道,我们以前创建的web工程下面会有一个webapp的目录,我们只要把静态资源放在该目录下就可以直接访问。
但是,基于Spring boot的工程并没有这个目录,那我们应该怎么处理?
一、最笨的方式
我们首先来分享一种最笨的办法,就是将静态资源通过流直接返回给前端,我们在maven工程的resources的根目录下建立一个html的目录,然后我们把html文件放在该目录下,并且规定任何访问路径以/static/开头的即访问该目录下的静态资源,其实现如下:
@Controller
public class StaticResourceController {
@RequestMapping("/static/**")
public void getHtml(HttpServletRequest request, HttpServletResponse response) {
String uri = request.getRequestURI();
String[] arr = uri.split("static/");
String resourceName = "index.html";
if (arr.length > 1) {
resourceName = arr[1];
}
String url = StaticResourceController.class.getResource("/").g