Java 将JSP代码迁移到Spring控制器和服务

Java 将JSP代码迁移到Spring控制器和服务,java,spring,spring-mvc,jsp,Java,Spring,Spring Mvc,Jsp,我们正在将jsp映射迁移到Spring controller,我们希望将jsp代码移动到Spring服务,因为jsp文件中只有scriptlet代码,但主要的是我们不希望更改使用ajax调用从UI调用的url Ajax调用示例 /ProjectContext/jsp/project/module/downloadFile.jsp jsp扩展名将保持不变,所以我应该在viewResolver中提到什么 请务必告诉我是否有更好的方法将jsp scriptlet代码迁移到spring控制器和服务 我试

我们正在将jsp映射迁移到Spring controller,我们希望将jsp代码移动到Spring服务,因为jsp文件中只有scriptlet代码,但主要的是我们不希望更改使用ajax调用从UI调用的url

Ajax调用示例 /ProjectContext/jsp/project/module/downloadFile.jsp

jsp扩展名将保持不变,所以我应该在viewResolver中提到什么

请务必告诉我是否有更好的方法将jsp scriptlet代码迁移到spring控制器和服务

我试过下面的代码,但不适合我

@Controller
public class DownloadController {
@Autowired
private DownloadService downloadService;

@RequestMapping(value = "/jsp/project/module/downloadFile.jsp", consumes = APPLICATION_FORM_URLENCODED_VALUE)
public void downloadFileToLocal(HttpServletRequest request, HttpServletResponse response) {
    downloadService.downloadFileToLocal(request, response);
}
}

我找到了一个编写jsp:forward的解决方案,它将重定向到新的spring控制器,但在这种情况下,我们无法消除jsp文件。e、 g.还有一个解决方案,我创建了自定义注释,它接受url作为参数,在tomcat启动时扫描所有包中方法上的自定义注释,并在HashMap中注册url和方法,最后使用servlet过滤器调用方法,使用reflection.with required参数(隐式jsp对象)我找到了一个编写jsp:forward的解决方案,它将重定向到新的spring控制器,但在这种情况下,我们无法消除jsp文件。e、 g.还有一个解决方案,我创建了自定义注释,它接受url作为参数,在tomcat启动时扫描所有包中方法的自定义注释,并在HashMap中注册url和方法,最后使用servlet过滤器调用方法,使用reflection.with required参数(隐式jsp对象)。