本文整理匯總了Java中com.fasterxml.jackson.databind.JsonNode.numberValue方法的典型用法代碼示例。如果您正苦於以下問題:Java JsonNode.numberValue方法的具體用法?Java JsonNode.numberValue怎麽用?Java JsonNode.numberValue使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類com.fasterxml.jackson.databind.JsonNode
的用法示例。
在下文中一共展示了JsonNode.numberValue方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: asValue
import com.fasterxml.jackson.databind.JsonNode; //導入方法依賴的package包/類
@Override
public Object asValue(Object object) {
ObjectMapper objectMapper = getObjectMapper();
JsonNode node = objectMapper.convertValue(object, JsonNode.class);
if (node == null) {
return null;
}
switch (node.getNodeType()) {
case NUMBER:
return node.numberValue();
case STRING:
return node.textValue();
case BOOLEAN:
return node.booleanValue();
case ARRAY:
case BINARY:
case MISSING:
case NULL:
case OBJECT:
case POJO:
default:
return null;
}
}
示例2: getElement
import com.fasterxml.jackson.databind.JsonNode; //導入方法依賴的package包/類
/**
* Return the field with name in JSON as a string, a boolean, a number or a node.
*
* @param json json
* @param name node name
* @return the field
*/
public static Object getElement(final JsonNode json, final String name) {
if (json != null && name != null) {
JsonNode node = json;
for (String nodeName : name.split("\\.")) {
if (node != null) {
node = node.get(nodeName);
}
}
if (node != null) {
if (node.isNumber()) {
return node.numberValue();
} else if (node.isBoolean()) {
return node.booleanValue();
} else if (node.isTextual()) {
return node.textValue();
} else if (node.isNull()) {
return null;
} else {
return node;
}
}
}
return null;
}
示例3: loadObject
import com.fasterxml.jackson.databind.JsonNode; //導入方法依賴的package包/類
private Object loadObject(JsonNode node) {
if (node == null) return null;
try {
switch (node.getNodeType()) {
case ARRAY:
return loadArray(node);
case BINARY:
return node.binaryValue();
case BOOLEAN:
return node.booleanValue();
case MISSING:
case NULL:
return null;
case NUMBER:
return node.numberValue();
case OBJECT:
return loadDocument(node);
case POJO:
return loadDocument(node);
case STRING:
return node.textValue();
}
} catch (IOException e) {
return null;
}
return null;
}
示例4: fromJson
import com.fasterxml.jackson.databind.JsonNode; //導入方法依賴的package包/類
@Override
public Object fromJson(JsonNode json) {
if (json.isTextual()) {
return json.textValue();
} else if (json.isNumber()) {
return json.numberValue();
} else if (json.isBoolean()) {
return json.booleanValue();
} else {
return null;
}
}
示例5: getValue
import com.fasterxml.jackson.databind.JsonNode; //導入方法依賴的package包/類
private Object getValue(JsonNode node) {
if (node.isNumber()) {
return node.numberValue();
} else if (node.isTextual()) {
return node.textValue();
} else if (node.isBoolean()) {
return node.booleanValue();
} else if (node.isNull()) {
return null;
} else {
throw new IllegalArgumentException("Non-value JSON node got through value node filter");
}
}
示例6: decodeJson
import com.fasterxml.jackson.databind.JsonNode; //導入方法依賴的package包/類
private static Object decodeJson(String value) {
int pos = 0;
while (pos < value.length() && Character.isWhitespace(value.charAt(pos))) {
pos++;
}
if (pos == value.length()) {
return null;
} else if (value.charAt(pos) == '{') {
return new JsonObject(value);
} else if (value.charAt(pos) == '[') {
return new JsonArray(value);
} else {
try {
JsonNode jsonNode = Json.mapper.readTree(value);
if (jsonNode.isNumber()) {
return jsonNode.numberValue();
} else if (jsonNode.isBoolean()) {
return jsonNode.booleanValue();
} else if (jsonNode.isTextual()) {
return jsonNode.textValue();
}
} catch (IOException e) {
// do nothing
}
}
return null;
}