Jackson在解析返回的json字符串时始终报错,纠结很久之后才找到原因,原来是是由于json字符串中的字母都是首字母大写,导致jackson找不到相应的KEY。

在项目中经常使用从服务器获取的数据,有时从服务器获取的json字符串中的首字母是大写的,使用Jackson解析是就会报一下错误:

Exception in thread "main" org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "XXX" (Class xxxx), not marked as ignorable .

异常信息告诉说XXX属性字段在类型xxx中没有找到,也没有标记为忽略。

但是在你的bean中确实存在这个字段,而只不过是这个字段的首字母是大写而已。

解决这个问题只需要在属性字段上面加上@JsonProperty();即可。

 public class CommissionItemVo implements Serializable{

     /**
*
*/
private static final long serialVersionUID = 1L; private int docId;
@JsonProperty("CName")
private String CName;
@JsonProperty("CPhone")
private String CPhone;
@JsonProperty("BlockName")
private String BlockName;
@JsonProperty("SeeTime")
private String SeeTime;
@JsonProperty("Cost")
private String Cost;
@JsonProperty("EndSettleTime")
private String EndSettleTime; public int getDocId() {
return docId;
} public void setDocId(int docId) {
this.docId = docId;
} public String getCName() {
return CName;
} public void setCName(String cName) {
CName = cName;
} public String getCPhone() {
return CPhone;
} public void setCPhone(String cPhone) {
CPhone = cPhone;
} public String getBlockName() {
return BlockName;
} public void setBlockName(String blockName) {
BlockName = blockName;
} public String getSeeTime() {
return SeeTime;
} public void setSeeTime(String seeTime) {
SeeTime = seeTime;
} public String getCost() {
return Cost;
} public void setCost(String cost) {
Cost = cost;
} public String getEndSettleTime() {
return EndSettleTime;
} public void setEndSettleTime(String endSettleTime) {
EndSettleTime = endSettleTime;
} public static long getSerialversionuid() {
return serialVersionUID;
} @Override
public String toString() {
return "CommissionItemVo [docId=" + docId + ", CName=" + CName + ", CPhone=" + CPhone + ", BlockName=" + BlockName + ", SeeTime=" + SeeTime + ", Cost=" + Cost + ", EndSettleTime=" + EndSettleTime + "]";
} }

使用Jackson解析首字母大写的json字符串的更多相关文章

  1. fastjson JSON.toJavaObject() 实体类首字母大写属性无法解析问题

    fastjson JSON.toJavaObject() 实体类首字母大写属性无法解析问题

  2. jackson json序列化 首字母大写 第二个字母需小写

    有这样一个类: @Setter @Getter @JsonNaming(value = PropertyNamingStrategy.UpperCamelCaseStrategy.class) pub ...

  3. javabean转成json字符首字母大写

    今天写接口的时候有个需求将接口返回的json字符串首字母大写:{"SN":"","Result":""}格式, 只需要在 ...

  4. 如果json中的key需要首字母大写怎么解决?

    一般我们命名都是驼峰式的,可是有时候和第三方接口打交道,也会遇到一些奇葩,比如首字母大写........额 这是个什么鬼,对方这么要求,那我们也得这么写呀. 于是乎,第一种方式:把类中的字段首字母大写 ...

  5. springmvc-@RequestBody无法映射首字母大写的属性

    @RequestBody可以将前台传入的json格式数据自动映射成对象,当如果属性的首字母大写,则会出现不能映射的情况,如: private String ICCID;会出现映射失败的情况 解决办法: ...

  6. CSS中使用text-transform实现首字母大写

    CSS中首字母大写怎么实现?日常生活中需求方对英文的要求比较多,有的时候需要让英文单词或拼音首个字母大写;有的时候需要让全文中英文单词全大写或小写.这时候我们就需要text-transform属性了. ...

  7. javascript面试题:如何把一句英文每个单词首字母大写?

    上周看到大家在JS群讨论如何把一句英文句子单词收割字母大写,大家都说用正则简单,对于正则还是有点模糊,于是乎自己敲了下 //面试题:如何把一句英文每个单词首字母大写? var str="wh ...

  8. text-transform设置单词首字母大写

    text-transform 一.语法   text-transform 主要用于设置文本的大小写. text-transform有5个值,分别如下: none. 默认值. capitalize. 文 ...

  9. string.capwords() 将每个单词首字母大写

    string.capwords() 将每个单词首字母大写 代码: import string s = ' The quick brown fox jumped over the lazy dog. ' ...

随机推荐

  1. php window系统 xdebug+phpstorm 本地断点调试使用教程

    运行环境: phpStorm 2017.2 PHP 7.1.5 Xdebug 2.6.1 php.ini添加xdebug模块 你需要仔细分析和选择要下载的对应版本,否则无法调试.由于非常容易出错,建议 ...

  2. Windows下应用级别的IIS负载均衡方案 Application Request Route

    转载于:https://blog.csdn.net/2000killer/article/details/51228625 序言 随着公司业务的发展,后台业务就变的越来越多,然而服务器的故障又像月经一 ...

  3. ubuntu 16.04 tip

    参考 1. 安装 python3.6 sudo add-apt-repository ppa:jonathonf/python-3.6  sudo apt-get update sudo apt-ge ...

  4. 一.rest-framework之版本控制 二、Django缓存 三、跨域问题 四、drf分页器 五、响应器 六、url控制器

    一.rest-framework之版本控制 1.作用 用于版本的控制 2.内置的版本控制 from rest_framework.versioning import QueryParameterVer ...

  5. Bootstrap3基础 thumbnail 圆角类型的div块

      内容 参数   OS   Windows 10 x64   browser   Firefox 65.0.2   framework     Bootstrap 3.3.7   editor    ...

  6. spring boot2+jpa+thymeleaf增删改查例子

    参考这遍文章做了一个例子,稍微不同之处,原文是spring boot.mysql,这里改成了spring boot 2.Oracle. 一.pom.xml引入相关模块web.jpa.thymeleaf ...

  7. ABAP search help (搜索帮助) 几种种方法

    ABAP search help (搜索帮助) 几种种方法    域范围  ABAP 的搜索帮助有很多种方法,掌握下面的几种基本差不多了 *&------------------------- ...

  8. HDFS数据节点DataNode未启动解决方法

    在解决这个问题的过程中,我又是积累了不少经验... 首先让我搞了很久的问题是,书上说进程全部启动的命令是/bin/start-all.sh,但是当我执行的时候显示command not found.后 ...

  9. js 字符串,new String() 与 String()

    function showCase(value) { switch(value) { case 'A': console.log('Case A'); break; case 'B': console ...

  10. JQUERY的属性进行操作

    Jquery方式操作属性(attribute) $().attr(属性名称);   //获得属性信息值 $().attr(属性名称,值);    //设置属性的信息 $().removeAttr(属性 ...