Всем привет!
Стоит задача мапить некий объект в БД (назовём его Sklad) и выдавать его по REST запросу. И всё бы ничего, но есть во всём этом неприятный момент - в желаемом объекте есть массив других объектов (обзовём Tovar) и некое число, которое соответствует количеству.
Т.е. в БД есть некий словарь (мапится в объект TovarDictionary), Tovar расширяет его неким числом (количество). И массив этих Tovar надо хранить в искомом объекте Sklad, и таких объектов как Tovar аж 7 штук. На JAVA это примерно так:
public class Sklad {
private long id;
private String name;
private List<Tovar> vars;
private List<Tovar1> vars1;
private List<Tovar2> vars2;
private List<Tovar3> vars3;
private List<Tovar4> vars4;
}
public class Tovar extends С {
private count
}
public class TovarDictionary {
private long id;
private String name;
private String descr;
}
Вот как всю эту байду лучше запихать в БД? Что лучше использовать? Может вообще удариться в noSQL?
Самый очевидный вариант - создавать кучу вспомогательных таблиц, при помощи которых всё будет мапиться. Но мне кажется что есть более красивое решение, о котором знает весь мир, кроме меня... Пока самый интересный вариант - использовать PostgreSQL с его плюшками в виде кастомных типов и массивов