java - 我们应该在 hibernate 中创建域类时实现 Serialized 接口(interface)吗

标签 java spring hibernate jpa

我是 hibernate 新手。我尝试使用 hibernate API 进行一些基本的 CRUD 操作。

我创建了一个 Person 类

@Entity
class Person
{
   String name
}

我能够将此类保存在数据库中。到目前为止,我一直认为 JPA 在内部使此类实现 Serialized,因为只有序列化才能保存对象的状态。但我尝试了这个:

Person p=new Person();
boolean bool=p instanceof Serializable;    
sop(bool);   //false

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

@Entity
class Human implements Serializable
{
    String name    
}

Human h=new Human();
boolean bool=h instanceof Serializable    
sop(bool);  //true

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

请帮忙。

最佳答案

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

Do Hibernate table classes need to be Serializable?

Beans serialization in JSP

关于java - 我们应该在 hibernate 中创建域类时实现 Serialized 接口(interface)吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24584608/

相关文章:

java - 根据差异将数组过滤为每十的倍数一行?

java - JPA:仅更新特定字段

hibernate - JPA/Hibernate Cascade.Remove @ManyToOne 的用例

java - 字节码编译错误

java - Spring Boot 2 中 Micrometer 的自定义 Cloudwatch MeterRegistry

java - CompoundIndex spring 不区分大小写

java - 处理来自客户端的多个请求以更新 Spring 应用程序中表中的列

java - Hibernate 和 java 8 lambda 的

Hibernate 无法解析配置 :/hibernate. cfg.xml

java - 如何在 RESTful Web 服务中将参数传递给 GET 方法