Это действительно соревнование между PL / SQL и многими возможными парсерами Java. Весьма вероятно, что некоторые из синтаксических анализаторов Java побеждают PL / SQL по производительности.
Некоторые другие причины использовать парсер Java:
- Стоимость лицензии будет намного меньше.
- Вы не привязаны к определенной базе данных.
- Ваше решение имеет больше вариантов развертывания.
Однако, если вам нужно извлечь информацию из XML и вставить ее в базу данных Oracle, преимущество может быть в PL / SQL. В этом случае, возможно, стоит прототипировать оба подхода и посмотреть. Также учитывайте время разработки, необходимое для каждого: если число байтов XML, поступающих в вашу систему, относительно мало, просто выберите решение, которое быстрее всего реализовать.