Groovy JsonBuilder 大写字段名称

Groovy JsonBuilder capitalising field names

我正在使用 Groovy JsonBuilder 生成 JSON 以通过 HTTP 发送。 我的问题是它正在将给定地图中的一些键大写。

我给它一个这样的对象class:

public class TestSNP {
    private String snpID;

    TestSNP(String input) {
        snpID = input.split("\s+")[1];
    }

    String getSNPID() {
        return snpID;
    }
}

这是失败的测试:

import groovy.json.*

class Test {
    @Test
        void jsonBuilderTest() {
            def testSNP = new TestSNP("1 rs444444 2 3")
            assert new groovy.json.JsonBuilder(testSNP).toString() == '{"snpID":"rs444444"}'
        }
}

我明白了

{"SNPID":"rs444444"}

而不是

{"snpID":"rs444444"}

(这是一个演示我的问题的简化示例)

变化:

String getSNPID() {
    return snpID;
}

至:

String getSnpID() {
    return snpID;
}

它会像你期望的那样工作