com.fasterxml.jackson.databind.exc.InvalidFormatException: Cannot deserialize value of type `java.la
全部的错误信息为:
com.fasterxml.jackson.databind.exc.InvalidFormatException: Cannot deserialize value of type `java.lang.Integer` from String "女": not a valid Integer value
at [Source: (PushbackInputStream); line: 1, column: 100] (through reference chain: com.shiyaxin.bean.User["sex"])
应用场景:
是再使用springCloud远程调用的时候
//对用户操作的客户端接口
@FeignClient(value = "sp")//标准该类是feign的客户端接口//需要指定微服务名字
public interface UserClient {//注意接口类上不能写全局路径的映射-拼到方法里路径的前面
/**
* 调用需要进行操作的(指定)接口:为服务提供者的完整接口规则
* (规则:把controller需要操作的的接口拿过来):
*/
@GetMapping("/user/{id}")
public **String** queryUserById(@PathVariable("id") Long id);
}
消费者的调用服务提供者的controller类
import com.shiyaxin.bean.User;
import com.shiyaxin.client.UserClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@RequestMapping("feignConsumers/user")
@RestController
public class FeignUserController {
//注入调用的模板类
// @Autowired
// RestTemplate restTemplate;
//feign的动态代理
@Autowired
UserClient userClient;
@GetMapping
//RequestParam后的参数访问需要?参数
public **String** queryUserById(@RequestParam("id")Long id) {
/**
* 需要toString,queryById的返回值是String
*/
return this.userClient.queryUserById(id);
}
客户端UserClient 接口类的方法的 public String queryUserById
public class FeignUserControlle类中的方法 public String queryUserById
本身的返回值是一个User对象,但是再返回页面的时候貌似要序列化(麻烦,暂时不需要),User对象客户端解析不了,就报了这个错,然后我就全部统一为String类型,
还没有评论,来说两句吧...