我们应该在hibernate中创建Domain Class时实现Serializable接口

aka*_*rma 2 java spring hibernate jpa

我是hibernate的新手.我尝试了一些使用hibernate API的基本CRUD操作.

我创建了一个Person类

@Entity
class Person
{
   String name
}
Run Code Online (Sandbox Code Playgroud)

我能够在数据库中保存这个类.直到现在我才认为JPA内部使这个类实现Serializable,因为只有序列化才能保存对象的状态.但是我试过这个:

Person p=new Person();
boolean bool=p instanceof Serializable;    
sop(bool);   //false
Run Code Online (Sandbox Code Playgroud)

然后我创建了另一个类Human(在Hibernate doc上找到了这种实现方式)

@Entity
class Human implements Serializable
{
    String name    
}

Human h=new Human();
boolean bool=h instanceof Serializable    
sop(bool);  //true
Run Code Online (Sandbox Code Playgroud)

我们应该以哪种方式创建我们的域类以及hibernate如何在内部处理这两种方式?

请帮忙.

fuj*_*ujy 6

如果您的实体将通过网络传输,存储在HTTP会话中,甚至存储在硬盘上的文件中,那么它们必须实现Serializable.否则Hibernate与序列化无关,请在此处查看更多内容

Hibernate表类需要是Serializable吗?

JSP中的Bean序列化