2017-08-05 118 views
1

在spring-boot中,我想使用jsp,但它不起作用。在spring-boot中,我想使用jsp,但它不起作用

application.yml,我的配置是这样的:

spring: 
    mvc: 
    view: 
     prefix: /WEB-INF/jsp/ 
     suffix: .jsp 

关于Appliction

@SpringBootApplication 
public class JspApplication extends SpringBootServletInitializer { 
    @Override 
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { 
     return builder.sources(JspApplication.class); 
    } 

    public static void main(String[] args) { 
     SpringApplication.run(JspApplication.class, args); 
    } 
} 

Controller

@Controller 
public class WelcomeController { 

    private String message = "Hello World"; 

    @GetMapping("/") 
    public String welcome(Map<String, Object> model) { 
     User user = new User(1, "张三", "男", 33); 
     model.put("createTime", new Date()); 
     model.put("user", user); 
     return "welcome"; 
    } 
} 

我还创造了直销tory webapp/WEB-INF/jsp/welcome.jsp

运行main()后我访问http://localhost:8080,但我什么也没得到。它可以进入controller,但它不能转发jsp view。我不知道如何解决它。

这是我在project Github上

回答

0

WEB-INF/jsp/文件夹必须src/main/resources文件夹中,否则你的模板不能暴露于模板引擎下的举动。

0

您可以从Web配置界面implemente EmbeddedServletContainerCustomizer并覆盖定制方法来更改文档根目录。

例如:如果web应用程序的文件夹是在src /主/

@Configuration 
    public class WebConfigurer implements EmbeddedServletContainerCustomizer 

    @Override 
     public void customize(ConfigurableEmbeddedServletContainer container) { 
      container.setDocumentRoot(new File("src/main/webapp/")); 

     } 
} 
相关问题