java动态属性表
我正在开发一个java应用程序,它需要一个用于动态属性的特殊组件。参数被序列化(使用JSON)并存储在数据库中,然后在运行时反序列化。所有属性都显示在一个包含3列(属性名称、属性类型和属性值)的JTable中,并存储在hashmap中 我目前有两个问题需要解决:java动态属性表,java,json,serialization,hashmap,Java,Json,Serialization,Hashmap,我正在开发一个java应用程序,它需要一个用于动态属性的特殊组件。参数被序列化(使用JSON)并存储在数据库中,然后在运行时反序列化。所有属性都显示在一个包含3列(属性名称、属性类型和属性值)的JTable中,并存储在hashmap中 我目前有两个问题需要解决: hashmap还可以存储对象,并且可以将对象设置为null。如果设置为null,我不知道它们属于哪个类。即使对象为null并且知道它们属于哪个类,我如何存储它们?我是否需要将每个对象包装在一个将保存存储对象类的类中 这些对象在运行时从j
首先,您能说明为什么对属性使用JSON序列化吗 在我看来,这种方法在很多方面都是不利的,它会导致数据库搜索和索引出现问题,使数据库查看变得痛苦,并在应用程序中产生不必要的代码。这些问题可能不是问题,这取决于您希望如何使用属性 对于这种情况,我的解决方案是一个包含以下列的简单表:
这种设计允许使用简单且类型安全的ORM映射实现最高性能,而无需任何序列化或其他样板文件。它可以存储任何类型的值,您只需为属性类型设置正确的列,将所有其他列保留为null。您可以通过在所有数据列中使用null来模拟null值。索引和搜索也是小菜一碟。在JTable中,如果属性值是对象,第三列会显示什么?您真正需要的是a)序列化/持久化Java对象还是B)以JSON动态存储数据?另外,请参见此问题,以序列化/持久化java对象-但使用JSON(无需对每个类进行硬编码)