Java 为什么我的Spring项目返回的JSONArray文本必须以';1点?

Java 为什么我的Spring项目返回的JSONArray文本必须以';1点?,java,json,spring,spring-boot,Java,Json,Spring,Spring Boot,我不熟悉Spring Boot和json,所以请原谅我提出了一个愚蠢的问题。我正在尝试读取我的json文件,将其转换为一个JSONObject,然后 将其转换为一个JSONArray。我已经注释掉了这两行代码 这是因为我尝试从读取文件到数组 JSON文件以[开头,因此我不确定为什么会出现此错误 线程“main”org.json.JSONException中的异常:JSONArray文本 必须在1[字符2第1行]处以“[”开头 rawJson.toString()不返回json内容,只返回的是的默

我不熟悉Spring Boot和json,所以请原谅我提出了一个愚蠢的问题。我正在尝试读取我的json文件,将其转换为一个
JSONObject
,然后 将其转换为一个
JSONArray
。我已经注释掉了这两行代码 这是因为我尝试从读取文件到数组 JSON文件以
[
开头,因此我不确定为什么会出现此错误

线程“main”org.json.JSONException中的异常:JSONArray文本 必须在1[字符2第1行]处以“[”开头

rawJson.toString()
不返回json内容,只返回的是的默认
对象#toString()
方法的结果,使用


类似的问题到-----包括堆栈traceNote,Spring Boot将包括现成的透明JSON支持,所以您不需要做任何事情,只需定义映射数据的Java类并将它们用作方法参数即可。
InputStream inputStream = TypeReference.class.getResourceAsStream("/json/req.json");        
List<PIECase> allCases = new ArrayList<PIECase>();              
InputStream rawJson = inputStream;
//JSONObject jsonObject = new JSONObject(rawJson);
//JSONArray jsonArray = jsonObject.getJSONArray("PIECases");
JSONArray jsonArray = new JSONArray(rawJson.toString());

for(int i =0; i < jsonArray.length(); i++) {
    //the JSON data we get back from array as a json object
    JSONObject jsonPIECases = jsonArray.getJSONObject(i);

    // more code
}
[
    {
        "PIECases": {
            "PIECases": [
                {
                    "Case_ID": "1",
                    "SortCode": "123456",
                    "AccountNumber": "12345678",
                    "Amount": "50",
                    "DateOfPayment": "2019-07-29"
                },
                {
                    "Case_ID": "2",
                    "SortCode": "123456",
                    "AccountNumber": "12345678",
                    "Amount": "50",
                    "DateOfPayment": "2019-07-29"
                }
            ]
        }
    }
]
JsonReader jsonReader = Json.createReader(inputStream);
JsonArray array = jsonReader.readArray();
jsonReader.close();