Вставка большого количества иерархических данных с помощью Spring - PullRequest
1 голос
/ 19 ноября 2010

Прежде всего, позвольте мне сказать, что я новичок в JAVA. Но у меня есть эта проблема. Мне нужно вставить данные в набор родительских дочерних таблиц. Структура данных выглядит так

элемент данных 1 - (данные уровня 1)
элемент данных 1.1 - (данные уровня 2)
элемент данных 1.2
элемент данных 2
элемент данных 2.1
элемент данных 2.2
элемент данных 2.2.1 - (данные уровня 3)
элемент данных 2.2.2
элемент данных 3 ...

В Oracle есть 3 таблицы.
Level1_Data_Table (Level_1_ID, имя и т. Д.)
Level2_Data_Table (Level_2_ID, Level_1_ID, имя и т. Д.)
Level3_Data_Table (Level_3_ID, Level_1_ID, имя и т. Д.)

Там могут быть тысячи или данные уровня 1, уровня 2 и уровня 3.

Идентификаторы: level1Seq.nextVal, level2Seq.nextVal, level3Seq.nextVal.

Как сделать пакетную вставку пакетной вставки для данных уровня 1, получить все идентификаторы и использовать ее для пакетной вставки уровня 2, и сделать то же самое для уровня 3?

В настоящее время я использую Spring jdbcTemplate.batchUpdate для выполнения вставок. Но это очень медленно. Любая помощь будет оценена.

Заранее спасибо!

1 Ответ

0 голосов
/ 20 ноября 2010

PL / SQL имеет конструкцию RETURNING, которая может возвращать все значения идентификаторов в виде массива.Существует документация Oracle, которая описывает, как вы передаете массивы.Я сделал это однажды с Spring.

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