Я открыл библиотеку под названием unXml , которая позволяет вам создавать синтаксический анализатор, который использует xml и производит Джексона json ObjectNodes
или ArrayNodes
.
Доступно здесь: Maven Central .
Пример:
Входной XML:
<root>
<id>1</id>
<title>mytitle</title>
</root>
Созданиесинтаксический анализатор в Java:
import com.nerdforge.unxml.Parsing;
import com.nerdforge.unxml.factory.ParsingFactory;
...
public class MyController {
public ObjectNode getJsonFromXml(String inputXmlString) {
Parsing parsing = ParsingFactory.getInstance().create();
Document document = parsing.xml().document(inputXmlString);
Parser<ObjectNode> parser = parsing.obj("root")
.attribute("id", "id", parsing.number())
.attribute("title")
.build();
ObjectNode node = parser.apply(document);
return node;
}
}
Дает следующий json-результат:
{
"id":1,
"title":"mytitle"
}