[英]A RESTful Web Service with Spring Boot
我一直在开发我的第一个Web Service应用程序,并且需要学习/替换ModelAndView
。
我想将网页与应用程序文件分开保存,并且有何建议?
ModelAndView类
Web MVC框架中的Model和View的持有人。 请注意,这些完全不同。 此类仅持有两者,以使控制器可以在单个返回值中返回模型和视图。
表示要由DispatcherPortlet解析的处理程序返回的模型和视图。 该视图可以采用String视图名称的形式,该名称需要由ViewResolver对象解析; 或者,可以直接指定视图对象。 该模型是一个Map,允许使用按名称键控的多个对象。
1)首先从控制器层删除以下代码:
@Bean
public MultipartResolver multipartResolver() {
CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver();
multipartResolver.setMaxUploadSize(10240000);
return multipartResolver;
}
使一个Java文件说出ProductConfig,并用@Config对其进行注释,并在其中包含所有配置方法,例如multipartResolver()。
2)谈到您的问题,您可以将结果作为JSON响应发送,而无需使用ModelAndView示例:
@RequestMapping("getProductById/{productId}")
public @ResponseBody getProductById(@PathVariable(value = "productId") String productId) {
Product product = productService.getProductById(productId);
return product;
}
现在,此API返回一个json响应。
在前端,您可以使用诸如angular js之类的框架。 Angular提供了诸如路由之类的功能,可以帮助您导航。 理想情况下,不应在Java层处理所有前端导航
如果您打算为前端运行单独的服务器,请确保启用CORS 。
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurerAdapter() {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/greeting-javaconfig").allowedOrigins("http://localhost:9000");
}
};
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.