代码之家  ›  专栏  ›  技术社区  ›  Half_Duplex

使用springmvc提供静态内容和呈现JSP

  •  0
  • Half_Duplex  · 技术社区  · 7 年前

    我想提供静态内容,这样 host:8080/ index.html 以及/static文件夹中的其他html文件,同时允许 POST 从静电 signup.html

    开箱即用,SpringBoot使用默认的ResourceResolver为我的静态资源提供服务,但是重定向和转发到my.jsp资源会导致一个未呈现的jsp。

    @Configuration
    @EnableWebMvc
    public class MvcConfig implements WebMvcConfigurer{
    
        @Override
        public void addResourceHandlers(ResourceHandlerRegistry registry) {
            registry
              .addResourceHandler("/**")
              .addResourceLocations("/resources/public");
    
    
        }
    
        @Override
        public void configureViewResolvers(ViewResolverRegistry registry) {
            InternalResourceViewResolver resolver = new InternalResourceViewResolver();
            resolver.setPrefix("/template/");
            resolver.setSuffix(".jsp");
            resolver.setViewClass(JstlView.class);
            registry.viewResolver(resolver);
        }
    
    }
    

    这些文件按照上述代码定位:

    src/main/resources/static
    src/main/resources/templates
    

    这与 Forward to JSP within Spring Controller after form submission

    How to handle static content in Spring MVC?

    0 回复  |  直到 7 年前
        1
  •  1
  •   Alien    7 年前

    你这里有个打字错误。

    通过将模板更改为模板,尝试将其更改为下面的行。

    resolver.setPrefix("/templates/")