返回报文首字母小写(请求报文首字母大写问题解决方案)
返回报文首字母小写(请求报文首字母大写问题解决方案)
在和对方系统进行对接的时候,发现一个问题,对方给的请求报文和返回报文中的字段都是首字母大写的,那么再通过feign调用的时候,你传给对方的请求入参也应该和报文保持一致,示例如下:
{
"Name":"zhangsan"
"Age":"12"
"Address":"上海市天潼路wework"
}
package com.learn.java.eight;
import lombok.Data;
@Data
public class PersonInfoRequestDTO {
/**
* 姓名
*/
private String Name;
/**
* 年龄
*/
private String Age;
/**
* 居住地址
*/
private String Address;
}
package com.learn.java.eight;
import lombok.Data;
@Data
public class PersonInfoRequestDTO {
/**
* 姓名
*/
private String Name;
/**
* 年龄
*/
private String Age;
/**
* 居住地址
*/
private String Address;
}
package com.learn.java.eight;
import com.alibaba.fastjson.JSON;
public class Test {
public static void main(String[] args) throws Exception {
PersonInfoRequestDTO personInfo = new PersonInfoRequestDTO();
personInfo.setName("zhangsan");
personInfo.setAge("12");
personInfo.setAddress("上海市天潼路wework");
System.out.println(JSON.toJSONString(personInfo));
}
}
{"address":"上海市天潼路wework" "age":"12" "name":"zhangsan"}
package com.learn.java.eight;
import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
/**
* @author lee
* @email yongyong.li@zatech.com
* @date 2020/4/18
*
**/
@Data
public class PersonInfoRequestDTO {
/**
* 姓名
*/
@JSONField(name = "Name")
@JsonProperty(value = "Name")
private String name;
/**
* 年龄
*/
@JSONField(name = "Age")
@JsonProperty(value = "Age")
private String age;
/**
* 居住地址
*/
@JSONField(name = "Address")
@JsonProperty(value = "Address")
private String address;
}
{"Address":"上海市天潼路wework" "Age":"12" "Name":"zhangsan"}