本文整理汇总了Java中com.alibaba.fastjson.util.TypeUtils.loadClass方法的典型用法代码示例。如果您正苦于以下问题:Java TypeUtils.loadClass方法的具体用法?Java TypeUtils.loadClass怎么用?Java TypeUtils.loadClass使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.alibaba.fastjson.util.TypeUtils
的用法示例。
在下文中一共展示了TypeUtils.loadClass方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: deserialze
import com.alibaba.fastjson.util.TypeUtils; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
public <T> T deserialze(DefaultJSONParser parser, Type type, Object fieldName) {
JSONLexer lexer = parser.getLexer();
if (lexer.token() == JSONToken.NULL) {
lexer.nextToken();
return null;
}
if (lexer.token() != JSONToken.LITERAL_STRING) {
throw new JSONException("expect className");
}
String className = lexer.stringVal();
lexer.nextToken(JSONToken.COMMA);
return (T) TypeUtils.loadClass(className);
}
示例2: deserialze
import com.alibaba.fastjson.util.TypeUtils; //导入方法依赖的package包/类
public <T> T deserialze(DefaultJSONParser parser, Type type, Object fieldName) {
JSONLexer lexer = parser.getLexer();
if (lexer.token() == 8) {
lexer.nextToken();
return null;
} else if (lexer.token() != 4) {
throw new JSONException("expect className");
} else {
String className = lexer.stringVal();
lexer.nextToken(16);
return TypeUtils.loadClass(className);
}
}
示例3: deserialze
import com.alibaba.fastjson.util.TypeUtils; //导入方法依赖的package包/类
public <T> T deserialze(DefaultJSONParser parser, Type clazz, Object fieldName) {
Long val;
JSONLexer lexer = parser.getLexer();
if (lexer.token() == 2) {
val = Long.valueOf(lexer.longValue());
lexer.nextToken(16);
} else if (lexer.token() == 4) {
String strVal = lexer.stringVal();
val = strVal;
lexer.nextToken(16);
if (lexer.isEnabled(Feature.AllowISO8601DateFormat)) {
JSONScanner iso8601Lexer = new JSONScanner(strVal);
if (iso8601Lexer.scanISO8601DateIfMatch()) {
val = iso8601Lexer.getCalendar().getTime();
}
iso8601Lexer.close();
}
} else if (lexer.token() == 8) {
lexer.nextToken();
val = null;
} else if (lexer.token() == 12) {
lexer.nextToken();
if (lexer.token() == 4) {
if (JSON.DEFAULT_TYPE_KEY.equals(lexer.stringVal())) {
lexer.nextToken();
parser.accept(17);
Class<?> type = TypeUtils.loadClass(lexer.stringVal());
if (type != null) {
clazz = type;
}
parser.accept(4);
parser.accept(16);
}
lexer.nextTokenWithColon(2);
if (lexer.token() == 2) {
long timeMillis = lexer.longValue();
lexer.nextToken();
val = Long.valueOf(timeMillis);
parser.accept(13);
} else {
throw new JSONException("syntax error : " + lexer.tokenName());
}
}
throw new JSONException("syntax error");
} else if (parser.getResolveStatus() == 2) {
parser.setResolveStatus(0);
parser.accept(16);
if (lexer.token() != 4) {
throw new JSONException("syntax error");
} else if ("val".equals(lexer.stringVal())) {
lexer.nextToken();
parser.accept(17);
val = parser.parse();
parser.accept(13);
} else {
throw new JSONException("syntax error");
}
} else {
val = parser.parse();
}
return cast(parser, clazz, fieldName, val);
}