我在解决如何最好地在关系数据库中存储JSON键值对时遇到了一个小问题。
问题在于ReactJS UI具有下拉字段,可以是单选或多选。另外,该值可以是字符串,数字,数组等。因此,我考虑使用一个可以存储此信息的db表,但是鉴于值类型不固定,这可能不是最佳方法。 / p>
我现在不愿意使用NoSQL db,这将使这不再是一个问题。
因此,要将其放在上下文中,请执行以下操作:
@Entity(name="SELECT_OPTION")
@Getter
@Setter
public class SelectOption {
/**
* A unique identifier for the object, serving as the database primary key.
*/
@Id
@GeneratedValue(generator = "system-uuid")
@GenericGenerator(name = "system-uuid", strategy = "uuid")
private String id;
private String label;
private Long value;
}
上述问题是值不仅是Long,而且可能是String,Boolean,int / string数组等。
我已经考虑过将所有字段与类型(由客户端提供)一起存储为字符串,并且在保存时,我会将值存储为字符串,并且当我需要更改该表示形式时,我将类型存储为好。
最终,我只想要最干净的方法。这样做的目的是允许UI上具有不同值类型的各种下拉框保存其选择值。该表不用于其他任何用途。