我仍然不熟悉在Java中使用ORM的东西,这里有一个我似乎坚持的问题:
我有大量的Hibernate实体,想要在服务器上查询它们(工作正常)然后序列化它们(使用ObjectOuputStream)并将它们发送给客户端。
如果我在客户端上反序列化它们,仍然存在大量的Hibernate / javax.persistence依赖项。
是否有可能将我的实体转换为POJO而不依赖于hibernate?
谢谢!
编辑: 为了清楚起来,我正在使用注释,这可能是愚蠢的。我需要将所有类重新定义为无注释,然后它们应该是标准的POJO。
答案 0 :(得分:2)
是的,您只需要回退到XML配置而不是方便的注释。 Hibernate从一开始就有hbm
个文件,JPA使用orm.xml
。
每个都可以用XML表达,注释只是语法糖。这样您的实体就完全没有Hibernate / javax.persistence
引用。
另请参阅:JPA: Should I clean up my entity classes using orm.xml?
P.S。:请记住,一旦开始重构域模型,序列化您的域模型(JPA / Hibernate实体)将很快变得很痛苦。即使你控制双方。真的,真的考虑DTO。