![](/img/trans.png)
[英]Spring Data JPA - How to persist nested object any existing or not
[英]How to persist a complicated, nested object with JPA
我正在一个项目,该项目使用NLP库从互联网论坛上的分类广告中解析信息。 处理之后,我得到了ForSaleItem实例和各种详细信息,例如条件,价格等。
当我在这些对象上调用toString()方法时,它不会返回存储在对象本身中的字符串,而是在整个论坛帖子中查找其自己的起点和终点,然后从那里提取文本。 (这样做是为了我可以计算文本的各个位的接近度)。
我想使用JPA将这些对象持久保存到RDBMS。 处理完之后,我不再真正关心邻近项,我只想向用户显示字符串。 如果我坚持整个论坛的帖子,并继续通过上述方法检索实际文本,那将是一个巨大的浪费。
现在我的问题是:我应该使用String字段增强原始类,还是应该创建一个全新的类,即。 像PersistentForSaleItem之类的东西?
我建议创建一个新项目,该项目将持续存在,并且仅包含您关注的部分。 这似乎是最简单的方法,它可以使您分离收集/处理数据以及最终存储和显示数据的问题。 您甚至可以通过在构造过程中传入另一个对象来创建持久对象,然后使用批注/ xml配置将该对象持久保存到RDBMS中。
只是我的2美分。
看起来您的ForSaleItem有几点确实与您要保留的内容不兼容:
字符串的复杂检索过程
->持久后不需要。
多个对象,这些对象将保留到多个表中
->不必要的复杂且缓慢,而只有一个对象可以将String存储在单个表中,并更有效地检索它。
因此,我建议您对持久性使用不同的对象。
请注意,创建起来可能非常简单,例如:
一个空的构造函数(可选)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.