Spring JsonParser已弃用

Spring JsonParser已弃用,spring,spring-boot,parsing,gson,jsonparser,Spring,Spring Boot,Parsing,Gson,Jsonparser,正在获取Spring Boot应用程序的JsonParser的弃用消息 JsonObject jsonObject = new JsonParser().parse(result).getAsJsonObject(); 替代方案是什么?基于适用于Gson 2.8.6的 不需要实例化这个类,而是使用静态方法 以下是要使用的替代方案 //jsonString is of type java.lang.String JsonObject jsonObject = JsonParser.parseS

正在获取Spring Boot应用程序的
JsonParser
的弃用消息

JsonObject jsonObject = new JsonParser().parse(result).getAsJsonObject();
替代方案是什么?

基于适用于Gson 2.8.6的

不需要实例化这个类,而是使用静态方法

以下是要使用的替代方案

//jsonString is of type java.lang.String
 JsonObject jsonObject = JsonParser.parseString​(jsonString).getAsJsonObject();

//reader is of type java.io.Reader
JsonObject jsonObject = JsonParser.parseReader​(reader).getAsJsonObject();

//jsonReader is of type com.google.gson.stream.JsonReader
JsonObject jsonObject = JsonParser.parseReader​(jsonReader).getAsJsonObject();
范例

import static org.junit.Assert.assertTrue;

import com.google.gson.JsonObject;
import com.google.gson.JsonParser;

public class Test {

    public static void main(String[] args) {
        String jsonString = "{ \"name\":\"John\"}";

        JsonObject jsonObjectAlt = JsonParser.parseString(jsonString).getAsJsonObject();
        // Shows deprecated warning for new JsonParser() and parse(jsonString)
        JsonObject jsonObject = new JsonParser().parse(jsonString).getAsJsonObject();

        assertTrue(jsonObjectAlt.equals(jsonObject));

    }

如果使用的是JsonPraser,则消息说不需要实例化此类,请改用静态方法。此外,您还可以根据我使用的
parse()
param
com.google.code.gson:gson:2.8.6
No
parse()
JsonParser类可用的方法使用正确的静态方法。共享的代码显示
parse(result)
method used,对于
result
类型有其他静态方法。
result
参数的类型是什么?字符串、读取器还是JsonReader?获取
java.lang.UnsupportedOperationException:JsonObject
在我使用
JsonObject JsonObject=JsonParser.parseString之后​(result).getAsJsonObject();
什么是
结果
类型?它应该是一个字符串objecttype,它的类型为
JsonObject
JsonParser.parseString​(jsonString).getAsJsonObject();
这里的参数应该是
字符串
对象。对于您来说,参数名称是
结果
,将其转换为
字符串
,然后尝试(可能是
.toString()
)检查。这是与问题共享的代码的替代方案