我正在使用GroovyJsonBuilder生成要通过HTTP发送的JSON。我的问题是它在利用它给出的地图中的一些键。
我给它一个此类对象:
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;
}
它将如您所期望的那样工作