Используя DSLJson вместо Джексона? - PullRequest
0 голосов
/ 10 декабря 2018

Как проверено в случае получения значения Object из Json, DslJson является более быстрым, чем Джексон, поэтому мы должны использовать 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<Object> dslJson = new DslJson<Object>();
    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
}}

1 Ответ

0 голосов
/ 10 декабря 2018

Я думаю, что DslJson не так популярен, потому что многие разработчики предпочитают использовать старые известные библиотеки вместо новых.Джексон известен в сообществе много лет, создавался и совершенствовался многими разработчиками и стал стандартным решением.DslJson - новая библиотека, созданная 2 разработчиками, всего 2 года.Возможно, в будущем это станет новым стандартным решением, но в настоящий момент об этом почти никто не знает (по сравнению с Джексоном).Так что, если он стабильный, лучше всего соответствует вашим потребностям и быстрее - просто используйте его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...