Я разрабатываю довольно простой компонент AEM, но я застрял в понимании передовой практики.
Например, допустим, я хочу сохранить набор из Link
объектов, каждый из которых содержит свойства href и title.
Это можно сохранить двумя способами:
[1] Каждая ссылка как отдельный узел:
component
├── link_1
│ ├── .href = "#1"
│ └── .title = "T1"
└── link_2
├── .href = "#2"
└── .title = "T2"
[2] Как свойство JSONArray под component
:
component
└── .links = [{"href":"#1", "title":"T1"}, {"href":"#2", "title":"T2"}]
Написав это, я думаю, что ответил на свой вопрос...
Несмотря на то, что вариант [2] привлекателен для разработки компонентов, он кажется излишним, когда моделирование данных JCR/Sling уже обеспечивает такую иерархию.
Я правильно это понимаю?
Я знаю, что можно экспортировать
Resource
as JSON, но можно ли импортировать/создатьSyntheticResource
из JSON?- If not that, when would one use
SyntheticResource
- If not that, when would one use
- Было бы лучше хранить узлы
link
под отдельным родительским узлом для организации?
component
└── links
├── link_1
│ ├── .href = "#1"
│ └── .title = "T1"
└── link_2
├── .href = "#2"
└── .title = "T2"