在实体类中,我可以将任何对象作为属性,当我持续到数据库时,它还会持续该对象属性吗?

有帮助吗?

解决方案

如果对象是序列化的,则可以将其序列化为blob。但这不是你想做的事情,因为

  • 不断序列化和反序列化对象是效率低下的,对象
  • 这将是非常脆弱的:对象类的变化将使它不可能(或者很难如果您知道您正在执行该做什么)以阅读已保存在数据库中的以前版本
  • 只有java可以意识到blob
  • 您无法对此对象进行任何查询

所以,基本上,答案是否定的。JPA实体可以具有嵌入对象,其字段映射到列,或者可以与其他实体(OneToone,OneTomany,ManyOleOne或Manifytomany具有关联。

我的建议:首先考虑数据库的设计,然后将架构映射到JPA实体。如果您开始在没有思考数据库中持续的情况下毫无思考的编写对象模型,则不会走得更远。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top