解决springbootbean中⼤写的字段返回变成⼩写的问题
例如我的bean中有以下4个字段
private String code;
private String _TOKENUUMS;private String TGC;private String U;
在返回的json⾥只会显⽰
{“code”:“xx”,“tgc”:“xx”,“u”:“xx”}
⼤⼩会变成⼩写,特殊符号开头的字段都不会显⽰,其原因是因为springboot在进⾏序列化和反序列时对字段进⾏了处理。
解决⽅案是:
import com.fasterxml.jackson.annotation.JsonProperty;
在get⽅法上加上该注解@JsonProperty
private String code;
private String _TOKENUUMS; private String TGC; private String U;
public String getCode() { return code; }
public void setCode(String code) { this.code = code; }
@JsonProperty(\"_TOKENUUMS\") public String get_TOKENUUMS() { return _TOKENUUMS; }
public void set_TOKENUUMS(String _TOKENUUMS) { this._TOKENUUMS = _TOKENUUMS; }
@JsonProperty(\"TGC\") public String getTGC() { return TGC; }
public void setTGC(String TGC) { this.TGC = TGC; }
@JsonProperty(\"U\") public String getU() { return U; }
public void setU(String u) { U = u; }
返回json会变成{“code”:“xx”,\"_TOKENUUMS\":“xx”,“TGC”:“xx”,“U”:“xx”},完美解决问题!补充:Spring getBean ⾸字母⼤⼩写问题今天学习SPRING 的@Qualifier 注解
遇到如下问题:
spring默认的组扫描的bean id 是类名的⾸字母⼩写,如:class Bee ,那么 bean id 默认为: bee,可是我的程序却找不到这种格式的bean id
上⽹查原因,得到解释:
原来我的类名 class CDPlayer ,我按照默认的规则理解, bean id 应该为 cDPlayer,可偏偏不是这样,原来:1、如果类第⼀个字母⼤写第⼆个⼩写,那么⾸字母⼩写获取bean
2、如果第⼀个和第⼆个字母都是⼤写的,那个获取bean⾸字母要⼤写这个原理不明⽩是为什么,但是的确是这样,问题解决了。
以上为个⼈经验,希望能给⼤家⼀个参考,也希望⼤家多多⽀持。如有错误或未考虑完全的地⽅,望不吝赐教。