2015-05-28 1 views
0

У нас есть функция для создания нескольких папок, когда пользователь сохраняет данные в CM. формат будет присоединен в образе:Создание иерархии файлов/папок в Apache JCR

  • ParentFolder

    • ChildFolder1
    • ChildFolder2
    • ChildFolder3
    • Файл1
    • Файл2
    • file3
  • ParentFolderConfig

    • ChildFolderConfig1
    • ChildFolderConfig2
    • ChildFolderConfig3
    • FileConfig1
    • FileConfig2
    • FileConfig3

Все они создаются все время, когда пользователь создает его. Я нашел способ добавлять узлы один за другим с помощью addNode(). Но чтобы сэкономить время и увеличить производительность, я хотел узнать, как я создаю эти файлы и папки в JAVA и сохраняю их в JCR за один вызов, а затем удаляю эти временные файлы.

ответ

0

Вызов addNode() несколько раз и сохранение конца с Session.save() является распространенным шаблоном в JCR, это прекрасно подходит для создания вашей структуры.

Чтобы сделать ваш код проще, вы можете использовать класс утилиты, который переводит путь к узлу, который находится глубоко в вашей иерархии, и создает промежуточные узлы по мере необходимости. Метод JcrUtils.getOrCreateByPath, предоставляемый модулем Commons Jackrabbit, делает это.

+0

Thanks Bertrand, Это было очень полезно, но я хотел знать способ избежать вызова addNode() n раз и найти способ сделать это за один ход. Но твоя помощь для меня очень важна. –

 Смежные вопросы

  • Нет связанных вопросов^_^