我有一个旧项目,其中包含一些简单的JSP页面。
我们正在用Spring MVC慢慢替换那些JSP页面,但是我需要继续将那些尚未使用MVC模式实现的JSP作为一个单独的Web应用程序来提供服务。
因此,我应该以如下形式结束:
情况A:
/legacy-url1/index.jsp->应该仍然可以访问,例如JSP页面,没有控制器。
情况B:
/legacy-url2/index.jsp-> / new-url2 /->应该从spring mvc控制器提供,并使用thymeleaf html文件填充视图。
情况B正在按预期方式工作,我尝试摆弄SimpleUrlHandlerMapping和UrlFilenameViewController,如下所示:
@Bean
public SimpleUrlHandlerMapping simpleUrlHandlerMapping() {
SimpleUrlHandlerMapping mapping = new SimpleUrlHandlerMapping();
Properties urlProperties = new Properties();
urlProperties.put("*.jsp", "urlFilenameViewController");
mapping.setMappings(urlProperties);
return mapping;
}
@Bean
public UrlFilenameViewController urlFilenameViewController() {
UrlFilenameViewController urlFilenameViewController = new UrlFilenameViewController();
urlFilenameViewController.setPrefix("/jsp/");
return urlFilenameViewController;
}
关于如何做到这一点的任何想法?我可能遗漏了一些东西,但是我一直在搜寻答案都失败了。
我正在使用带有Java配置的Spring Boot。
感谢任何帮助!
最佳答案
对于每个旧的JSP页面,可以通过define view controllers进行排序,也可以通过configure 2 view resolvers进行适当的排序。