Android请求网络数据,json解析-FastJson遇到的问题 首字母大写问题

在Android app开发过程中,用fastjson获取后台数据,后台返回的数据:[{"doseFrequencyList":[{"FrequencyCode":"ed","name":"每天","ordinal":"1"},{"FrequencyCode":"iod","name":"隔天","ordinal":"2"},{"FrequencyCode":"iow","name":"隔周","ordinal":"3"},{"FrequencyCode":"ew","name":"每周","ordinal":"4"}],"doseTimePoints":"{\r\n    \"1\": [\r\n        0\r\n    ],\r\n    \"2\": [\r\n        0,\r\n        43200000\r\n    ],\r\n    \"3\": [\r\n        0,\r\n        21600000,\r\n        43200000\r\n    ],\r\n    \"4\": [\r\n        -7200000,\r\n        14400000,\r\n        28800000,\r\n        50400000\r\n    ],\r\n    \"5\": [\r\n        0,\r\n        7200000,\r\n        25200000,\r\n        36000000,\r\n        46800000\r\n    ],\r\n    \"6\": [\r\n        0,\r\n        7200000,\r\n        14400000,\r\n        25200000,\r\n        36000000,\r\n        46800000\r\n    ]\r\n}","measureItemList":[{"defaultValue1":"80.00","defaultValue2":"120.00","maxValue":"300.00","measureItemCode":"blood_presure","minValue":"0.00","name":"血压","ordinal":"1","reference1_max_value":"140.00","reference1_min_value":"60.00","reference2_max_value":"140.00","reference2_min_value":"60.00","stepLength":"1.00","type":"2","unit":"mmHg"},{"defaultValue1":"80.00","maxValue":"300.00","measureItemCode":"pulse","minValue":"0.00","name":"心率","ordinal":"2","reference1_max_value":"100.00","reference1_min_value":"60.00","stepLength":"1.00","type":"1","unit":"次/分"},{"defaultValue1":"100.00","maxValue":"500.00","measureItemCode":"urine_output","minValue":"0.00","name":"24小时尿量","ordinal":"5","stepLength":"10.00","type":"1","unit":"毫升"},{"defaultValue1":"6.10","maxValue":"50.00","measureItemCode":"blood_sugar","minValue":"0.00","name":"血糖","ordinal":"7","reference1_max_value":"6.10","reference1_min_value":"3.90","stepLength":"0.10","type":"1","unit":"mmol/L"}]}]


FrequencyCode :首字母大写,如果不进行处理,前端是获取不到数据的。前端必须要做处理。如果前端不做处理的话,那就让后台处理。一般后台是不愿意处理的委屈,因为ios不管首字母大小写都是能获取到数据的。所以,只能Android前端修改喽。办法就是,在实体类中进行处理:代码如下:


public class GetMeasurePlanMetadata {


    private String doseTimePoints;
    private List<DoseFrequencyListBean> doseFrequencyList;
    private List<MeasureItemListBean> measureItemList;

    public String getDoseTimePoints() {
        return doseTimePoints;
    }

    public void setDoseTimePoints(String doseTimePoints) {
        this.doseTimePoints = doseTimePoints;
    }

    public List<DoseFrequencyListBean> getDoseFrequencyList() {
        return doseFrequencyList;
    }

    public void setDoseFrequencyList(List<DoseFrequencyListBean> doseFrequencyList) {
        this.doseFrequencyList = doseFrequencyList;
    }

    public List<MeasureItemListBean> getMeasureItemList() {
        return measureItemList;
    }

    public void setMeasureItemList(List<MeasureItemListBean> measureItemList) {
        this.measureItemList = measureItemList;
    }

    public static class DoseFrequencyListBean implements Serializable{
        /**
         * FrequencyCode : ed
         * name : 每天
         * ordinal : 1
         */


        private String frequencyCode;
        private String name;
        private String ordinal;
        @JSONField(name="FrequencyCode")
        public String getFrequencyCode() {
            return frequencyCode;
        }
        @JSONField(name="FrequencyCode")

        public void setFrequencyCode(String frequencyCode) {
            this.frequencyCode = frequencyCode;
        }


        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public String getOrdinal() {
            return ordinal;
        }

        public void setOrdinal(String ordinal) {
            this.ordinal = ordinal;
        }
    }

    public static class MeasureItemListBean {
        /**
         * defaultValue1 : 80.00
         * defaultValue2 : 120.00
         * maxValue : 300.00
         * measureItemCode : blood_presure
         * minValue : 0.00
         * name : 血压
         * ordinal : 1
         * reference1_max_value : 140.00
         * reference1_min_value : 60.00
         * reference2_max_value : 140.00
         * reference2_min_value : 60.00
         * stepLength : 1.00
         * type : 2
         * unit : mmHg
         */

        private String defaultValue1;
        private String defaultValue2;
        private String maxValue;
        private String measureItemCode;
        private String minValue;
        private String name;
        private String ordinal;
        private String reference1_max_value;
        private String reference1_min_value;
        private String reference2_max_value;
        private String reference2_min_value;
        private String stepLength;
        private String type;
        private String unit;

        public String getDefaultValue1() {
            return defaultValue1;
        }

        public void setDefaultValue1(String defaultValue1) {
            this.defaultValue1 = defaultValue1;
        }

        public String getDefaultValue2() {
            return defaultValue2;
        }

        public void setDefaultValue2(String defaultValue2) {
            this.defaultValue2 = defaultValue2;
        }

        public String getMaxValue() {
            return maxValue;
        }

        public void setMaxValue(String maxValue) {
            this.maxValue = maxValue;
        }

        public String getMeasureItemCode() {
            return measureItemCode;
        }

        public void setMeasureItemCode(String measureItemCode) {
            this.measureItemCode = measureItemCode;
        }

        public String getMinValue() {
            return minValue;
        }

        public void setMinValue(String minValue) {
            this.minValue = minValue;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public String getOrdinal() {
            return ordinal;
        }

        public void setOrdinal(String ordinal) {
            this.ordinal = ordinal;
        }

        public String getReference1_max_value() {
            return reference1_max_value;
        }

        public void setReference1_max_value(String reference1_max_value) {
            this.reference1_max_value = reference1_max_value;
        }

        public String getReference1_min_value() {
            return reference1_min_value;
        }

        public void setReference1_min_value(String reference1_min_value) {
            this.reference1_min_value = reference1_min_value;
        }

        public String getReference2_max_value() {
            return reference2_max_value;
        }

        public void setReference2_max_value(String reference2_max_value) {
            this.reference2_max_value = reference2_max_value;
        }

        public String getReference2_min_value() {
            return reference2_min_value;
        }

        public void setReference2_min_value(String reference2_min_value) {
            this.reference2_min_value = reference2_min_value;
        }

        public String getStepLength() {
            return stepLength;
        }

        public void setStepLength(String stepLength) {
            this.stepLength = stepLength;
        }

        public String getType() {
            return type;
        }

        public void setType(String type) {
            this.type = type;
        }

        public String getUnit() {
            return unit;
        }

        public void setUnit(String unit) {
            this.unit = unit;
        }
    }
}


主要看图片中显示:

修改的地方,按此种方法就能获取到数据。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值