本文整理了Java中com.alibaba.fastjson.parser.DefaultJSONParser.parse()
方法的一些代码示例,展示了DefaultJSONParser.parse()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。DefaultJSONParser.parse()
方法的具体详情如下:
包路径:com.alibaba.fastjson.parser.DefaultJSONParser
类名称:DefaultJSONParser
方法名:parse
暂无
代码示例来源:origin: alibaba/fastjson
public <T> T deserialze(DefaultJSONParser parser, Type type, Object fieldName) {
PropertyProcessable processable;
try {
processable = this.type.newInstance();
} catch (Exception e) {
throw new JSONException("craete instance error");
}
Object object =parser.parse(processable, fieldName);
return (T) object;
}
代码示例来源:origin: alibaba/fastjson
public Object readObject() {
if (context == null) {
return parser.parse();
}
readBefore();
Object object;
switch (context.state) {
case StartObject:
case PropertyValue:
object = parser.parseKey();
break;
default:
object = parser.parse();
break;
}
readAfter();
return object;
}
代码示例来源:origin: alibaba/fastjson
longObject = TypeUtils.castToLong(jsonObject);
} else {
Object value = parser.parse();
代码示例来源:origin: alibaba/fastjson
public void extract(JSONPath path, DefaultJSONParser parser, Context context) {
JSONLexerBase lexer = (JSONLexerBase) parser.lexer;
if (lexer.seekArrayToItem(index)
&& context.eval)
{
context.object = parser.parse();
}
}
}
代码示例来源:origin: alibaba/fastjson
@SuppressWarnings("unchecked")
public <T> T deserialze(DefaultJSONParser parser, Type clazz, Object fieldName) {
Object value = parser.parse();
return value == null //
? null //
: (T) TypeUtils.castToChar(value);
}
代码示例来源:origin: alibaba/fastjson
public void extract(JSONPath path, DefaultJSONParser parser, Context context) {
if (context.eval) {
Object object = parser.parse();
if (object instanceof List) {
int[] indexes = new int[this.indexes.length];
System.arraycopy(this.indexes, 0, indexes, 0, indexes.length);
boolean noneNegative = indexes[0] >= 0;
List list = (List) object;
if (noneNegative) {
for (int i = list.size() - 1; i >= 0; i--) {
if (Arrays.binarySearch(indexes, i) < 0) {
list.remove(i);
}
}
context.object = list;
return;
}
}
}
throw new UnsupportedOperationException();
}
}
代码示例来源:origin: alibaba/fastjson
public Integer readInteger() {
Object object;
if (context == null) {
object = parser.parse();
} else {
readBefore();
object = parser.parse();
readAfter();
}
return TypeUtils.castToInt(object);
}
代码示例来源:origin: alibaba/fastjson
public Long readLong() {
Object object;
if (context == null) {
object = parser.parse();
} else {
readBefore();
object = parser.parse();
readAfter();
}
return TypeUtils.castToLong(object);
}
代码示例来源:origin: alibaba/nacos
@Override
public <T> T deserialze(DefaultJSONParser parser, Type type, Object fieldName) {
JSONObject jsonObj = (JSONObject) parser.parse();
String checkType = jsonObj.getString("type");
if (StringUtils.equals(checkType, AbstractHealthChecker.Http.TYPE)) {
return (T) JSON.parseObject(jsonObj.toJSONString(), AbstractHealthChecker.Http.class);
}
if (StringUtils.equals(checkType, AbstractHealthChecker.Tcp.TYPE)) {
return (T) JSON.parseObject(jsonObj.toJSONString(), AbstractHealthChecker.Tcp.class);
}
if (StringUtils.equals(checkType, AbstractHealthChecker.Mysql.TYPE)) {
return (T) JSON.parseObject(jsonObj.toJSONString(), AbstractHealthChecker.Mysql.class);
}
return null;
}
代码示例来源:origin: com.alibaba/fastjson
@SuppressWarnings("unchecked")
public <T> T deserialze(DefaultJSONParser parser, Type clazz, Object fieldName) {
Object value = parser.parse();
return value == null //
? null //
: (T) TypeUtils.castToChar(value);
}
代码示例来源:origin: com.alibaba/fastjson
public void extract(JSONPath path, DefaultJSONParser parser, Context context) {
JSONLexerBase lexer = (JSONLexerBase) parser.lexer;
if (lexer.seekArrayToItem(index)
&& context.eval)
{
context.object = parser.parse();
}
}
}
代码示例来源:origin: alibaba/nacos
@Override
public <T> T deserialze(DefaultJSONParser parser, Type type, Object fieldName) {
JSONObject jsonObj = (JSONObject) parser.parse();
if (jsonObj == null) {
return null;
}
String checkType = jsonObj.getString("type");
if (StringUtils.equals(checkType, SelectorType.label.name())) {
return (T) JSON.parseObject(jsonObj.toJSONString(), LabelSelector.class);
}
if (StringUtils.equals(checkType, SelectorType.none.name())) {
return (T) JSON.parseObject(jsonObj.toJSONString(), NoneSelector.class);
}
return null;
}
代码示例来源:origin: alibaba/fastjson
@SuppressWarnings("unchecked")
public static <T> T deserialze(DefaultJSONParser parser) {
final JSONLexer lexer = parser.lexer;
if (lexer.token() == JSONToken.LITERAL_INT) {
String val = lexer.numberString();
lexer.nextToken(JSONToken.COMMA);
return (T) new BigInteger(val);
}
Object value = parser.parse();
return value == null //
? null //
: (T) TypeUtils.castToBigInteger(value);
}
代码示例来源:origin: alibaba/fastjson
@SuppressWarnings("unchecked")
public <T> T deserialze(DefaultJSONParser parser, Type clazz, Object fieldName) {
if (clazz == StringBuffer.class) {
final JSONLexer lexer = parser.lexer;
if (lexer.token() == JSONToken.LITERAL_STRING) {
String val = lexer.stringVal();
lexer.nextToken(JSONToken.COMMA);
return (T) new StringBuffer(val);
}
Object value = parser.parse();
if (value == null) {
return null;
}
return (T) new StringBuffer(value.toString());
}
if (clazz == StringBuilder.class) {
final JSONLexer lexer = parser.lexer;
if (lexer.token() == JSONToken.LITERAL_STRING) {
String val = lexer.stringVal();
lexer.nextToken(JSONToken.COMMA);
return (T) new StringBuilder(val);
}
Object value = parser.parse();
if (value == null) {
return null;
}
return (T) new StringBuilder(value.toString());
}
return (T) deserialze(parser);
}
代码示例来源:origin: alibaba/fastjson
public String readString() {
Object object;
if (context == null) {
object = parser.parse();
} else {
readBefore();
JSONLexer lexer = parser.lexer;
if (context.state == JSONStreamContext.StartObject && lexer.token() == JSONToken.IDENTIFIER) {
object = lexer.stringVal();
lexer.nextToken();
} else {
object = parser.parse();
}
readAfter();
}
return TypeUtils.castToString(object);
}
代码示例来源:origin: alibaba/fastjson
@SuppressWarnings("unchecked")
public static <T> T deserialze(DefaultJSONParser parser) {
final JSONLexer lexer = parser.lexer;
if (lexer.token() == JSONToken.LITERAL_INT) {
String val = lexer.numberString();
lexer.nextToken(JSONToken.COMMA);
return (T) Float.valueOf(Float.parseFloat(val));
}
if (lexer.token() == JSONToken.LITERAL_FLOAT) {
float val = lexer.floatValue();
lexer.nextToken(JSONToken.COMMA);
return (T) Float.valueOf(val);
}
Object value = parser.parse();
if (value == null) {
return null;
}
return (T) TypeUtils.castToFloat(value);
}
代码示例来源:origin: alibaba/fastjson
public void extract(JSONPath path, DefaultJSONParser parser, Context context) {
if (context.eval) {
Object object = parser.parse();
if (deep) {
List<Object> values = new ArrayList<Object>();
path.deepGetPropertyValues(object, values);
context.object = values;
return;
}
if (object instanceof JSONObject) {
Collection<Object> values = ((JSONObject) object).values();
JSONArray array = new JSONArray(values.size());
for (Object value : values) {
array.add(value);
}
context.object = array;
return;
} else if (object instanceof JSONArray) {
context.object = object;
return;
}
}
throw new JSONException("TODO");
}
}
代码示例来源:origin: alibaba/fastjson
@SuppressWarnings("unchecked")
public static <T> T deserialze(DefaultJSONParser parser) {
final JSONLexer lexer = parser.getLexer();
if (lexer.token() == JSONToken.LITERAL_STRING) {
String val = lexer.stringVal();
lexer.nextToken(JSONToken.COMMA);
return (T) val;
}
if (lexer.token() == JSONToken.LITERAL_INT) {
String val = lexer.numberString();
lexer.nextToken(JSONToken.COMMA);
return (T) val;
}
Object value = parser.parse();
if (value == null) {
return null;
}
return (T) value.toString();
}
代码示例来源:origin: alibaba/fastjson
Object value = parser.parse();
代码示例来源:origin: alibaba/fastjson
@SuppressWarnings("unchecked")
public static <T> T deserialze(DefaultJSONParser parser) {
final JSONLexer lexer = parser.lexer;
if (lexer.token() == JSONToken.LITERAL_INT) {
BigDecimal decimalValue = lexer.decimalValue();
lexer.nextToken(JSONToken.COMMA);
return (T) decimalValue;
}
if (lexer.token() == JSONToken.LITERAL_FLOAT) {
BigDecimal val = lexer.decimalValue();
lexer.nextToken(JSONToken.COMMA);
return (T) val;
}
Object value = parser.parse();
return value == null //
? null //
: (T) TypeUtils.castToBigDecimal(value);
}
内容来源于网络,如有侵权,请联系作者删除!