Как сохранить / извлечь ниже Json Object в базу данных, как будто все правила должны содержать массив в виде строки:
[{"ID":1,
"parentId":1,
"level":1,
"rule":"abc",
"fieldName":"cds",
"allrule":[
{}
]
},
{"ID":2,
"parentId":2,
"level":2,
"rule":"abcas",
"fieldName":"cdgf",
"allrule":[{"firstname":"rohit","min":5,"max":10}
]
}
]
Здесь значения внутри объекта "all rule" могут быть динамическими, как будто не может быть никакого ключапара значений во время выполнения. Надеюсь, это не сбивает с толку постановку проблемы. Я попробовал логику @OneToMany и сохранил данные объекта Json в отдельной таблице. Фрагмент кода:
@Entity
@Table(name = "Allrule")
public class ListofRules {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int allruleId;
private String key1;
private String value1;
@ManyToOne(cascade = { CascadeType.ALL })
private Rule rule;
//getters,setters
@Entity
@Table(name = "Rule")
public class Rule {
@Id
private int ID;
private int parentId;
private int level;
private String rule;
private String fieldName;
@OneToMany(fetch = FetchType.EAGER,cascade= {CascadeType.ALL})
@JoinColumn(name="rule_id")
private List<ListofRules> listofrules;
//getter,setter
}
Но мне нужно сохранить и извлечь данные Json, как показано ниже. Вывод, как показано ниже: Согласно моемулогика я получаю JSON ответ, как:
[
{"ID":1,
"parentId":1,
"level":1,
"rule":"abc",
"fieldName":"cds",
allrule":[{}]
},
{"ID":2,
"parentId":2,
"level":2,
"rule":"abcas",
"fieldName":"cdgf",
"allrule":[{"Key1":"rohit","value1":5},{"Key1":"dinesh","value1":19}]
}
]