|
|
|
dynamic model(class)
|
|||
|---|---|---|---|
|
#18+
Добрый день Хотелось бы поинтересоваться, кто-нибудь работает с динамической(редактируемой Online) пользователем моделью данных. История: Есть задача, на вход получаем какой-то xml и json и cvs и ... :), и все это добро необходимо перевести или в измененный json или xml/cvs всеми маппингами управляет пользователь (тоесть никаких аннотаций и прочего "хардкода"). Путь: xml/json/cvs-->[apply custom external binding]-->"dynamic java class/object"-->[apply custom external binding]-->xml/json/cvs. Реализаций, наспех просматривается две: - a) Eclipse Link (Dynamic MOXy/Dynamic Entities) public class DynamicJAXBContextFactory: (В качестве метаинформации для построения динамического класса может использовать): 1) createContextFrom OXM 2) createContextFrom XSD Вот тут проблема, а если мне требуется из json-schema? Теоретически мне для всего должно хватить OXM (но на практике, выяснилось, что он подходит только если исходный документ xml, а из json "объекта" построить так и не удалось ....) dynamic_jaxb DynamicJAXBContextFactory -- Использовать gson/map: how-to-parse-a-json-with-dynamic-key-in-android-by-using-gson Так получим динамический "типа объект", остается вопрос, есть ли какая-то библиотека которая позволяет создавать "external binding" java-object_а, для генерации из него того или иного формата? Данный "external binding" должен создавать продвинутый пользователь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2017, 12:17 |
|
||
|
dynamic model(class)
|
|||
|---|---|---|---|
|
#18+
Bsplesk, Зачем? Если не известна какая структура, то воспользуйтесь Map-ами :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2017, 13:11 |
|
||
|
dynamic model(class)
|
|||
|---|---|---|---|
|
#18+
Задачу же описал, попробую более абстрактно, на "зачем": Существуют множество клиентов, эти клиенты предоставляют "какие-то" бизнес данных в "каких-то" форматах. Повлиять(диктовать свои правила) форматы клиента мы не можем. Поставщик "просто" ставит перед фактом, что данные/или чаще структура данных изменились. т.ч.к. В данной ситуации "бизнес пользователь" должен оперативно или изменить/привести = создать "маппинг" из обновленного формата поставщика в свой, или вообще сменить поставщика данных, т.к. он "протух". Как правильно к чему "приводить" знает только бизнес. Соответственно ему требуется инструмент, который позволит ему(продвинутым бизнес пользователям) оперативно, без остановки/разработки/написание ТЗ, мапппигов "что чему соответствует" в формате Excel/WORD, для аналитиков, разработчиков, тестирования ..... и.т.д. решать данную задачу. Map_а, то Map_ами, но кним требуется tool, который сможет исходя и "метаданных" перевести/"выполнить binding" из map_ы в требуемый формат, по-умолчанию достаточно xml/json. Т.к. даже "смапить" автоматически json в xml, и обратно, без внесения дополнительных полей к примеру в json не получится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2017, 14:26 |
|
||
|
dynamic model(class)
|
|||
|---|---|---|---|
|
#18+
BspleskСуществуют множество клиентов, эти клиенты предоставляют "какие-то" бизнес данных в "каких-то" форматах. Задача не решаема без Модели предметной области. Рисуйте Модель с заказиками. Если сущность строка, то и получите табличку а не ИС по ГОСТ. Сошлитесь на ГОСТ если официалы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2017, 16:13 |
|
||
|
dynamic model(class)
|
|||
|---|---|---|---|
|
#18+
Bsplesk, лютый бред. Если структура данных заранее неизвестна, то такие данные хранят в nosql базах. Если РСУБД вам дороги и вы без них не умеете, то можно заюзать схему EAV ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2017, 06:04 |
|
||
|
dynamic model(class)
|
|||
|---|---|---|---|
|
#18+
BspleskТ.к. даже "смапить" автоматически json в xml, и обратно, без внесения дополнительных полей к примеру в json не получится. Скажем так... В Readhat, Oracle, IBM, MS данную задачу пытались/пытаются решить... Пока ничего не получилось. Если у вас получится, то главное быстро решение запатентовать - озолотитесь. :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2017, 06:44 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39521484&tid=2122594]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
52ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
| others: | 212ms |
| total: | 373ms |

| 0 / 0 |
