Есть ли реализация StAX для android? - PullRequest
7 голосов
/ 21 апреля 2011

Я хочу использовать реализацию API StAX на устройствах Android 1.6 и выше.Есть ли какие-либо реализации там?Я не могу использовать JAR-файл напрямую, поскольку он вызывает проблемы, связанные с внутренним классом.Если его нет, могу ли я перекомпилировать реализацию?Есть ли альтернативный способ отображения класса POJO в XML и наоборот, пожалуйста, исключите парсер SAX и парсер DOM.

Я думаю, что класс POJO может быть отображен в XML и наоборот с использованием JAXB.Но ситуация такая.Рассмотрим этот пример,

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<cars>
<car registration="abc123">
    <brand>BMW</brand>
    <description>Sedan</description>
</car>
<car registration="abc123">
    <brand>Ferrari</brand>
    <description>SportsCar</description>
</car>
</cars>

Теперь в результате я хочу List, в котором есть 2 машины.

Также, как JAXB-парсер работает с StAX?

Ответы [ 2 ]

8 голосов
/ 28 мая 2011

Насколько я знаю, оба Woodstox и Aalto должны работать на Android.Aalto - это самый быстрый и соответствующий XML-парсер на платформе Java, если это имеет значение;Woodstox поддерживает самый широкий спектр конструкций XML (от полной обработки DTD до проверки схемы RelaxNG / XML).

Для привязки POJO к XML можно также рассмотреть расширение Джексона jackson-xml-databind : хотя Jackson в основном является процессором JSON, расширение поддерживает связывание данных в стиле JAXB для XML.И делает это быстрее, чем эталонная реализация JAXB (см. Бенчмарк jvm-serializers).Это также должно работать на Android (сам Джексон - это JSON-анализатор №1 на Android).

4 голосов
/ 21 апреля 2011

Итак, что вы действительно хотите «отобразить POJO в XML и наоборот», так это Simple XML Library .Вы можете использовать его с любой версией Android от 1.5 и выше.

Я даже написал пост в блоге, объясняющий, как включить его в один из ваших проектов .

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