好久没写博客了,今天趁着周末把工作中遇到的问题梳理一下(在这个问题排查过程中,发现自己排查问题的能力还是太弱了,需要加强). 最近在公司springCloud的项目里,通过feign远程调用其他服务,代码如下,可以看到,这里的RequestHeader里面我传了String类型的tenantId,测试的时候没有问题,但是项目上线后,发现部分用户在调用这个接口的时候返回的不是想要的结果,当然大部分用户使用的时候是正常的.然后我们就打印了日志,查看了调用链路,发现只要RequestHeader里面的…
参考文档:https://blog.csdn.net/lulidaitian/article/details/70941769 springMVC+mybatis查询数据,返回resultType=”map”时,如果数据为空的字段,则该字段省略不显示,可以通过添加配置文件,规定查询数据为空是则返回null. <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC &…
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <settings> <setti…
SpringCloud使用Feign调用其他客户端带参数的接口,传入参数为null或报错status 405 reading IndexService#del(Integer); 第一种方法: 如果你的API为Restful 方式的可以在Client接口参数中加注解@PathVariable @FeignClient(name = "PRODUCT") @Component public interface ProductClient { @PostMapping("/pro…
最近有一个springcloud的feign请求,用于获取坐标经纬度的信息,返回结果永远是固定不变的,所以考虑优化一下,不然每次转换几个坐标都要去请求feign,返回的所有坐标信息,数据量太大导致耗时大,重复性请求. 第一步:创建配置类,用于在springboot项目启动后就执行feign接口用于查询所有的经纬度信息[返回结果封装在了一个map集合]. @Component @Order(value = 1)//定义组件加载顺序 @Slf4j public class GetLatLonConf…
解决:请求编码格式默认为空,在"TestCase"的指定Step的Request Properties中, 改Encoding编码格式为UTF-8. 原文:soapUI发送post请求json格式,返回请求数据为空 使用soupUI发送post请求,活的结果告诉请求参数为空,意思就是没有请求到body的内容,但是用postman等工具都是正常的. 于是,查看系统接口日志.提示获取http请求的body失败. 网上查询第二句话,”java.nio.charset.MalformedInp…
原文:http://www.itmuch.com/spring-cloud-sum/feign-multiple-params/ 本节来探讨如何使用Feign构造多参数的请求.笔者以GET及POST请求为例讲解,其他方式(例如DELETE.PUT等)的请求原理相通,读者可自行研究. GET请求多参数的URL 假设需请求的URL包含多个参数,例如http://microservice-provider-user/get?id=1&username=张三 ,该如何使用Feign构造呢? 我们知道,S…
1 什么是Feign Feign是一种声明式.模板化的HTTP客户端(仅在Application Client中使用).声明式调用是指,就像调用本地方法一样调用远程方法,无需感知操作远程http请求. Spring Cloud的声明式调用, 可以做到使用 HTTP请求远程服务时能就像调用本地方法一样的体验,开发者完全感知不到这是远程方法,更感知不到这是个HTTP请求.Feign的应用,让Spring Cloud微服务调用像Dubbo一样,Application Client直接通过接口方法调用A…
Feign传参注意 最近在用SpringCloud尝试重构以前的项目,使用Feign客户端组件来调用微服务,经常出现参数传不过去变成null的问题,网上查了一下发现feign在参数上的使用还是有一定的限制的,主要是要注意: 1. 当参数比较复杂时,feign即使声明为get请求也会强行使用post请求 2. 不支持@GetMapping类似注解声明请求,需使用@RequestMapping(value = "url",method = RequestMethod.GET) 3. 使用@…
添加依赖 <!-- 参数校验 --> <dependency> <groupId>org.hibernate.validator</groupId> <artifactId>hibernate-validator</artifactId> <version>.Final</version> </dependency> 一.基本类型参数(String)校验 1.注解要写在接口中,实现类会自动继承,如果…