从Json值检查get Object的情况来看,DslJson是更快的Jackson所以我们应该使用DslJson代替JackSon吗?
B / c正如我在许多在线文档中看到的那样,它看起来比Dsljson更受欢迎,所以如果速度更快,为什么这个API不受欢迎?有什么理由吗?
我的小检查员:
public class App {
public static void main(String[] args) throws IOException {
String jsonString = "{\"kind\":\"dog\",\"name\":\"misao\",\"age\":1}";
byte[] bytes = jsonString.getBytes();
Pet misa = new Pet("dog", "misa", 1);
// get object from json String
// Jackson
ObjectMapper mapper = new ObjectMapper();
long currentTime1 = System.currentTimeMillis();
for (int i = 0; i < 1000000; i++) {
Pet misao = mapper.readValue(jsonString, Pet.class);
}
System.out.println(System.currentTimeMillis() - currentTime1); // 680 ms
long currentTime2 = System.currentTimeMillis();
for (int i = 0; i < 1000000; i++) {
Pet misao = mapper.readValue(bytes, Pet.class);
}
System.out.println(System.currentTimeMillis() - currentTime2); // 623 ms
// DSLJson
DslJson dslJson = new DslJson();
long currentTime3 = System.currentTimeMillis();
for (int i = 0; i < 1000000; i++) {
Pet misao = dslJson.deserialize(Pet.class, bytes, bytes.length);
}
System.out.println(System.currentTimeMillis() - currentTime3); // 182 ms
}}