本篇内容主要讲解“Feign中如何实现传实体Bean”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Feign中如何实现传实体Bean”吧!
Feign如何传实体Bean
需要加一个@RequestBody序列化对象
/** * 新增 */ @PostMapping("saveOrder") @ResponseBody public void saveOrder(@RequestBody OrderBean orderBean) { userService.saveOrder(orderBean); }
接口接收请求也要加一个@RequestBody注解
/** * 新增 * @param orderBean */ @PostMapping("saveOrder") public void saveOrder(@RequestBody OrderBean orderBean);
Feign注入Bean为null,启动报错
主要是feign版本和swagger版本冲突,本项目spring cloud 版本为 Finchley.M8
swagger冲突版本
<!-- swagger2 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.2.2</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.2.2</version> </dependency>
解决方案
<!-- swagger2 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.5.0</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.5.0</version> </dependency>
feign Service案例
@FeignClient(name = "service-weixin",fallback = OAuthServiceFallBack.class, configuration = FeignConfig.class) public interface OAuthService { @RequestMapping(value = "/oauth/getOauth3AuthorizationUrl", method = RequestMethod.GET) ResultBean<String> getOauth3AuthorizationUrl(@RequestParam("url")String url); }
controller注入
@RestController @RequestMapping("/ticket") public class TicketController { @Autowired private TicketService ticketService; @Autowired private OAuthService oAuthService; ...
到此,相信大家对“Feign中如何实现传实体Bean”有了更深的了解,不妨来实际操作一番吧!这里是云搜网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!