将值从 JsonObject 转换为 BigDecimal
Convert value from JsonObject to BigDecimal
我是 java 语言的新手。
我想从 JsonObject
中获取一个值并将其转换为 BigDecimal
。
我有以下代码:
JsonReader jsonReader;
try {
jsonReader = Json.createReader(httpRequest.getReader());
} catch (IOException e) {
return Response.serverError().entity("Problem reading json body").build();
}
JsonObject jsonObj = jsonReader.readObject();
Map<String, Object> paramMap = UtilMisc.toMap("productId", productId, "internalName",
jsonObj.getString("internalName"), "productName", jsonObj.getString("productName"), "productTypeId",
jsonObj.getString("productTypeId"), "login.username", username, "login.password", password,
"description", jsonObj.getString("description"), "longDescription", jsonObj.getString("longDescription"),
"productHeight", (BigDecimal)jsonObj.get("productHeight"));
我想要的是做类似于(BigDecimal)jsonObj.get("productHeight")
的事情。
谢谢。
首先,jsonObj.get
不是方法,所以这肯定是错误。
其次,我不认为将任何对象转换为 BigDecimal
会像那样工作。
正在阅读 API...
从 JsonReader
下降到 BigDecimal
JsonReader
> JsonObject
> JsonNumber
> BigDecimal
你可以做到
jsonObj.getJsonNumber("productHeight").bigDecimalValue()
这假定 productHeight
是一个数值,而不是一个字符串。
如果是String,看BigDecimal
构造函数。特别是采用 String 值的那个。
new BigDecimal(jsonObj.getString("productHeight"))
我是 java 语言的新手。
我想从 JsonObject
中获取一个值并将其转换为 BigDecimal
。
我有以下代码:
JsonReader jsonReader;
try {
jsonReader = Json.createReader(httpRequest.getReader());
} catch (IOException e) {
return Response.serverError().entity("Problem reading json body").build();
}
JsonObject jsonObj = jsonReader.readObject();
Map<String, Object> paramMap = UtilMisc.toMap("productId", productId, "internalName",
jsonObj.getString("internalName"), "productName", jsonObj.getString("productName"), "productTypeId",
jsonObj.getString("productTypeId"), "login.username", username, "login.password", password,
"description", jsonObj.getString("description"), "longDescription", jsonObj.getString("longDescription"),
"productHeight", (BigDecimal)jsonObj.get("productHeight"));
我想要的是做类似于(BigDecimal)jsonObj.get("productHeight")
的事情。
谢谢。
首先,jsonObj.get
不是方法,所以这肯定是错误。
其次,我不认为将任何对象转换为 BigDecimal
会像那样工作。
正在阅读 API...
从 JsonReader
下降到 BigDecimal
JsonReader
> JsonObject
> JsonNumber
> BigDecimal
你可以做到
jsonObj.getJsonNumber("productHeight").bigDecimalValue()
这假定 productHeight
是一个数值,而不是一个字符串。
如果是String,看BigDecimal
构造函数。特别是采用 String 值的那个。
new BigDecimal(jsonObj.getString("productHeight"))