Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring Hibernate实体可序列化_Spring_Hibernate_Serialization - Fatal编程技术网

Spring Hibernate实体可序列化

Spring Hibernate实体可序列化,spring,hibernate,serialization,Spring,Hibernate,Serialization,我已经阅读了一些关于hibernate和实体序列化的主题,但仍然无法理解为什么我的应用程序可以工作,尽管我没有实现可序列化 如果实体实例作为分离对象按值传递,则 通过会话bean的远程业务接口,类必须 实现可序列化接口。”(c) 我所拥有的: 使用Hibernate的简单Spring MVC项目。我有MyEntity datatable,以及从应用程序中按用户编辑它的功能 用户向getMyEntity()发出请求,并获取空的MyEntity对象 然后在表格中,他设置了所有需要的参数 然后将更

我已经阅读了一些关于hibernate和实体序列化的主题,但仍然无法理解为什么我的应用程序可以工作,尽管我没有实现可序列化

如果实体实例作为分离对象按值传递,则 通过会话bean的远程业务接口,类必须 实现可序列化接口。”(c)

我所拥有的: 使用Hibernate的简单Spring MVC项目。我有MyEntity datatable,以及从应用程序中按用户编辑它的功能

  • 用户向getMyEntity()发出请求,并获取空的MyEntity对象
  • 然后在表格中,他设置了所有需要的参数

  • 然后将更新的myEntity发送到服务器

问题是什么: 据我所知,用户在填写表单时将拥有myEntity对象。所以,我的实体处于分离状态但是,MyEntity不实现可序列化

我的问题:

  • 为什么它在没有MyEntity实现可序列化的情况下工作

  • 我的所有实体都有相同的方案(如上所述)。我需要实现可序列化吗

为什么它在没有MyEntity实现可序列化的情况下工作

Hibernate不要求序列化实体。仅当您要通过导线发送分离的对象(例如,远程接口)时才需要

我的所有实体都有相同的方案(如上所述)。是吗 需要实现可序列化吗


是,如果要通过导线发送此对象。否则,Hibernate不要求实体是可序列化的

“如果实体实例作为分离对象按值传递,例如通过会话bean的远程业务接口,则该类必须实现可序列化接口。”(c)

此语句是一个常见的混淆源,因为它与Hibernate无关。实际上,这意味着如果您计划在需要可序列化的上下文中使用实体,那么它们应该是可序列化的


由于Spring MVC也不要求模型属性是可序列化的(除非您希望使用
@SessionAttributes
为存储在会话中的属性利用会话持久性),因此,在您的情况下,您不需要担心可序列化性。

代码确实帮助这个过程更快。但是实例实现了HibernateProxy,谁实现了可序列化。所以我不需要在MyEntity类中实现可序列化?代码是什么:jsp页面、实体还是控制器?