Я видел вопросы, где был применен следующий родственный узел на основе значения узла, но моя проблема связана с фактическим узлом.
Это тип XML, который у меня есть:
Мне нужно написать условие Xpath следующим образом:
if (NOT(the following sibling(first sibling) of /Employee/Summary is Elections)), then do something.
В настоящее время у меня есть:
Обратите внимание, что я проверяю не значение узла, а сам узел (т.е. имя узла).
Любая помощь в правильном направлении будет высоко оценена.
-121--952084-
Простая, свободная от проблем сериализация с нулевым шаблоном в Scala/Java, аналогичный маринованный огурчик? Существует ли простой, свободный от проблем подход к сериализации в Scala/Java, который похож на маринованный огурчик Python? Маринованный огурчик - это несложное решение, которое достаточно эффективно в пространстве и времени (т.е. не... Существует ли простой, беспроблемный подход к сериализации в Scala/Java, подобный соленому пихту Python? Маринованный огурчик - это несложное решение, которое достаточно эффективно в пространстве и времени (то есть не мерзко), но не заботится о межязыковой доступности, управлении версиями и т.д. и допускает дополнительную настройку.
То, о чем я знаю:
- встроенная сериализация Java печально медленная ([1], [2]), раздутая и хрупкая. Также должны отмечать классы как Serializable - раздражает, когда есть вещи, которые явно сериализуемы, но которые не имеют этой аннотации (например, не так много Point2D авторов отмечают эти Serializable).
- Scala's BytePickle требует набора шаблонных плат для каждого типа, который вы хотите мариновать, и даже тогда не работает с (циклическими) графами объектов .
- jserial : Unmaintained и не намного быстрее/меньше , чем сериализация Java по умолчанию.
- kryo : Невозможно (де-) сериализовать объекты без 0-arg ctors , что является серьезным ограничением. (Также вы должны зарегистрировать каждый класс вы планируете сериализовать, или вы получите значительные замедления/вздутие , но даже так он все еще быстрее, чем маринованный огурчик.)
- protostuff : AFAICT, вы должны зарегистрировать каждый класс, который вы намерены сериализовать заранее в «схеме».
Kryo и protostuff являются ближайшими решениями, которые я нашел, но мне интересно, есть ли что-то еще там (или если есть какой-то способ использовать их, о которых я должен знать). Пожалуйста, включите примеры использования! В идеале также включают контрольные показатели.
задан Community 23 May 2017 в 12:01
поделиться