@SpringQueryMap注解 feign的get传参方式(转)


spring cloud项目使用feign的时候都会发现一个问题,就是get方式无法解析对象参数。其实feign是支持对象传递的,但是得是Map形式,而且不能为空,与spring在机制上不兼容,因此无法使用。

spring cloud在2.1.x版本中提供了@SpringQueryMap注解,可以传递对象参数,框架自动解析,只可惜啊,得是2.1.0以后的版本。spring 在5.0中提供了webflux踢掉了对tomcat的依赖,又提供了gateway踢掉了对zuul的依赖,2.1.x版本恐怕是准备对netflix动刀了。

官方源码

// Params.java
public class Params {
    private String param1;
    private String param2;
 
    // [Getters and setters omitted for brevity]
}
 
@FeignClient("demo")
public class DemoTemplate {
 
    @GetMapping(path = "/demo")
    String demoEndpoint(@SpringQueryMap Params params);
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM