feign client传递对象

本文详细介绍了如何使用FeignClient进行微服务之间的调用。通过具体的代码示例,展示了server端和client端的声明方式,以及如何在@RestController中实现REST服务。此外,还解释了@FeignClient和@RequestMapping在FeignClient中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

http://bbs.springcloud.cn/d/134-feign-client

server端申明

@RestController
public class HelloController {

private Logger log = LoggerFactory.getLogger(HelloController.class);
/**
 * rest 服务用来测试 
 * --@requestParam url?xxx=name 
 * --requestBody 认定为json传输解析  url?{xxx=name}
 * @param name
 * @return
 */
@RequestMapping(value = "/hello", method = RequestMethod.POST)
public String hello(@RequestBody User user) {
	log.info("call hello parameter:{}", user.getName());
	return "{hello: '" + user.getName() + "'}";
}

}

feginClient申明

@FeignClient(value="HelloServer") //对应到的server端的spring.application.name
public interface HelloFeginClient {

@RequestMapping(value = "/hello", method=RequestMethod.POST)
public String hello(User user);  
  
}

client 调用申明

@RestController
public class CallHelloController {

private Logger log = LoggerFactory.getLogger(CallHelloController.class);
@Autowired
private HelloFeginClient helloFeginClient;

@RequestMapping(value="/hello", method = RequestMethod.GET)
public String hello(String name) {
	log.info("call hello parameter:{}", name);
	User user = new User();
	user.setName("kite");
	return helloFeginClient.hello(user);  
}
}

转载于:https://www.cnblogs.com/davidwang456/p/6811968.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值