【发布时间】:2019-11-21 15:20:08
【问题描述】:
我正在尝试设置两个单独的 Spring Boot 应用程序。有一些 jsp 可以很好地在两者之间共享而不是重复。这些项目已经共享一个公共 jar。有没有办法可以将 jsp 包含在公共 jar 中?
我尝试将它们放在共享 jar 中的 /WEB-INF/jsp 中,但没有成功。
这就是我的视图解析器现在的设置方式:
@Bean
public ViewResolver getViewResolver() {
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
resolver.setPrefix("/WEB-INF/jsp");
resolver.setSuffix(".jsp");
return resolver;
}
【问题讨论】:
-
如果这是一个新项目,我强烈建议使用 Thymeleaf 而不是 JSP(两者都是通用的,因为它使这个特定任务更容易一些)。你也没有提到这是一个现代的 jar 项目还是一个遗留的战争项目;答案会大不相同。
-
感谢您的建议——在这个项目上,我致力于使用 JSP。这是一个现代的 jar 项目。
-
哎哟。我知道,使用 Thymeleaf 模板(因为它们只是常规数据文件),您只需将它们放在
src/main/resources/templates中,使用从依赖项中提取它们不需要什么特别的(参见“webjars”)。你也可以试试;使用 Boot,我建议将您的文件移动到默认位置,而不是编写这样的配置来覆盖默认值。
标签: java spring-boot jsp web-inf