使用fastjson时,对象转json遇到的首字母大小写问题

在使用fastjson进行数据类型转换时发现,pojo类里面的属性首字母大写,在转成json之后,变成了小写。导致数据存储一直有问题。

pom.xml

    <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.28</version>
        </dependency>

 

解决方法:

 

        在pojo类的属性get方法上加上你需要的key。

package com.kafka.jiadu;

import java.io.Serializable;

import com.alibaba.fastjson.annotation.JSONField;


/***
 * 人脸数据
 * @author admin
 *
 */

public class FaceObject implements Serializable{
    /**
     * 
     */
    private static final long serialVersionUID = -8818119657729122894L;
    @JSONField(name="SERVICE_CODE")
    private String SERVICE_CODE;//场所编码
    
    @JSONField(name="DEVICE_NUM")
    private String DEVICE_NUM;//设备编码
    
    @JSONField(name="DEVICE_ID")
    private String DEVICE_ID;//设备ID(第三方设备内部ID)
    
    @JSONField(name="FACEID")
    private String FACEID;//人脸ID
    
    @JSONField(name= "IMG_PATH")
    private String IMG_PATH;//相对路径\照片文件名,相对路径格式:RLSJ/yyyyMMdd/HH/mm,其中RLSJ为数据类型 
    
    @JSONField(name= "IMG_FORMAT")
    private int IMG_FORMAT;//图片格式(1:jpg,2:png,3:gif,4:bmp,9:其它)
    @JSONField(name= "PHOTO_TYPE")
    private int PHOTO_TYPE;//照片类型,1:人脸照,2:背景照99:其它
    @JSONField( name="FACE_IMGSIZE")
    private int FACE_IMGSIZE;//照片文件大小,单位K
    @JSONField(name= "FACE_FILEMD5")
    private String FACE_FILEMD5;//照片文件的MD5 
    @JSONField(name= "CERTIFICATE_TYPE")
    private String CERTIFICATE_TYPE;//证件类型
    @JSONField(name= "CERTIFICATE_CODE")
    private String CERTIFICATE_CODE;//证件号码
    @JSONField(name= "XPOINT")
    private String XPOINT;//设备经度
    @JSONField(name= "YPOINT")
    private String YPOINT;//设备纬度
    @JSONField(name= "IMG_TIME")
    private long IMG_TIME;//图片采集时间,北京时间1970年1月1日08:0:0开始到结束时间的绝对秒数
    
    
    
    
    public String getSERVICE_CODE() {
        return SERVICE_CODE;
    }
    
    public void setSERVICE_CODE(String SERVICE_CODE) {
        this.SERVICE_CODE = SERVICE_CODE;
    }
    
    public String getDEVICE_NUM() {
        return DEVICE_NUM;
    }
    
    public void setDEVICE_NUM(String DEVICE_NUM) {
        this.DEVICE_NUM = DEVICE_NUM;
    }
    
    public String getDEVICE_ID() {
        return DEVICE_ID;
    }
    
    public void setDEVICE_ID(String DEVICE_ID) {
        this.DEVICE_ID = DEVICE_ID;
    }
    
    public String getFACEID() {
        return FACEID;
    }
    
    public void setFACEID(String FACEID) {
        this.FACEID = FACEID;
    }
    
    public String getIMG_PATH() {
        return IMG_PATH;
    }
    
    public void setIMG_PATH(String IMG_PATH) {
        this.IMG_PATH = IMG_PATH;
    }
    
    public int getIMG_FORMAT() {
        return IMG_FORMAT;
    }
    
    public void setIMG_FORMAT(int IMG_FORMAT) {
        this.IMG_FORMAT = IMG_FORMAT;
    }
    
    public int getPHOTO_TYPE() {
        return PHOTO_TYPE;
    }
    
    public void setPHOTO_TYPE(int PHOTO_TYPE) {
        this.PHOTO_TYPE = PHOTO_TYPE;
    }
    
    public int getFACE_IMGSIZE() {
        return FACE_IMGSIZE;
    }
    
    public void setFACE_IMGSIZE(int FACE_IMGSIZE) {
        this.FACE_IMGSIZE = FACE_IMGSIZE;
    }
    
    public String getFACE_FILEMD5() {
        return FACE_FILEMD5;
    }
    
    public void setFACE_FILEMD5(String FACE_FILEMD5) {
        this.FACE_FILEMD5 = FACE_FILEMD5;
    }
    
    public String getCERTIFICATE_TYPE() {
        return CERTIFICATE_TYPE;
    }
    
    public void setCERTIFICATE_TYPE(String CERTIFICATE_TYPE) {
        this.CERTIFICATE_TYPE = CERTIFICATE_TYPE;
    }
    
    public String getCERTIFICATE_CODE() {
        return CERTIFICATE_CODE;
    }
    
    public void setCERTIFICATE_CODE(String CERTIFICATE_CODE) {
        this.CERTIFICATE_CODE = CERTIFICATE_CODE;
    }
    
    public String getXPOINT() {
        return XPOINT;
    }
    
    public void setXPOINT(String XPOINT) {
        this.XPOINT = XPOINT;
    }
    
    public String getYPOINT() {
        return YPOINT;
    }
    
    public void setYPOINT(String YPOINT) {
        this.YPOINT = YPOINT;
    }
    
    public long getIMG_TIME() {
        return IMG_TIME;
    }
    
    public void setIMG_TIME(long IMG_TIME) {
        this.IMG_TIME = IMG_TIME;
    }
    

    
    

}

 

这样转换的json,对应的key就改变为你注解对应的属性名。

{"CERTIFICATE_CODE":"","CERTIFICATE_TYPE":"","DEVICE_ID":"6d16e951c5b84b5cb4bacd1c3676a2fc","DEVICE_NUM":"","FACEID":"99fe9b2e2bce4febbc86649c2be1cf26","FACE_FILEMD5":"d1231f73c90eece06a85c5d3ae3544b5","FACE_IMGSIZE":356,"IMG_FORMAT":2,"IMG_PATH":"RLSJ/20181029/16/10/a41acd6028cd5c13f620e7e53ae96e16_13582.png","IMG_TIME":1543478764546,"PHOTO_TYPE":1,"SERVICE_CODE":"","XPOINT":"","YPOINT":""}

 

posted on 2018-10-29 16:23  让代码飞  阅读(8453)  评论(0编辑  收藏  举报

导航

一款免费在线思维导图工具推荐:https://www.processon.com/i/593e9a29e4b0898669edaf7f?full_name=python