Java 序列化JPA实体中未映射的属性

Java 序列化JPA实体中未映射的属性,java,spring,hibernate,jpa,spring-data-jpa,Java,Spring,Hibernate,Jpa,Spring Data Jpa,我试图了解是否有可能在JPA实体中有一个未映射的属性,并将其序列化。之所以要这样做,是因为我想从数据库中查询行,然后对一些返回的字段进行计算,并将结果填充到其中一个未映射的字段中。但是,我看到的在实体中添加未映射属性的唯一解决方案是使用@Transient注释,这意味着该属性不会序列化 有什么想法/解决办法吗?我希望Rigre Garciandía的答案能奏效(即使用@Transient),但是 您可以实现externalizable。它使您能够完全控制序列化和反序列化,因此您可以写入和读取任何

我试图了解是否有可能在JPA实体中有一个未映射的属性,并将其序列化。之所以要这样做,是因为我想从数据库中查询行,然后对一些返回的字段进行计算,并将结果填充到其中一个未映射的字段中。但是,我看到的在实体中添加未映射属性的唯一解决方案是使用@Transient注释,这意味着该属性不会序列化


有什么想法/解决办法吗?

我希望Rigre Garciandía的答案能奏效(即使用@Transient),但是

您可以实现externalizable。它使您能够完全控制序列化和反序列化,因此您可以写入和读取任何喜欢的字段(根据我的经验,还可以提高性能):


带有@Transient注释的字段应该使用Java序列化api序列化,检查您是否有修饰符Transient,此修饰符不允许您序列化此字段。

@Transient
注释仅适用于JPA。如果序列化对象,则该属性将正常序列化(除非其具有
transient
修饰符)。所以一定要使用@Transient注释,因为这是做你想做的事情的正确方法。从javax.persistence添加@Transient实际上并没有为我序列化它。你怎么知道它没有序列化它?你解决问题了吗?其中一个答案对你有帮助吗?请记得回来接受对你有用的答案。事实上,所有答案都没有帮助。相反,我刚刚接受了创建一个新的POJO,一旦从SQL查询中填充了所需的属性,我就会将它们转移到POJO。