gpt4 book ai didi

java - 为什么要将 POJO 序列化/反序列化为通常包含在 'entities' 包中的 JSON? 'entities' 是什么意思?

转载 作者:行者123 更新时间:2023-11-30 07:42:39 27 4
gpt4 key购买 nike


问题相似性,即这不是重复的

注意:有很多问题看起来与这个问题类似:

Mapping POJO to Entities

What is the exact meaning of the JPA @Entity annotation?

What is an Entity? Why is it called Entity?

但它们要么引用“ Entity Framework ”,要么引用“@Entity”注释(这显然是用来说明一个类可以映射到一个表)。虽然我的问题可能看起来与这些相似,但略有不同,因此不应被视为重复。


我的实际问题

我正在使用一个代码库,其中有一个名为“com.xxx.yyy.entities”的包。这个包包含许多具有基本相同结构的类:

  1. 私有(private)领域
  2. 每个私有(private)字段的公共(public) getter
  3. 每个私有(private)字段的公共(public) setter
  4. “toString”方法。

下面是最简单的类之一的示例:

public class Competition {
private String id;
private String name;
public String getId() { return id; }
public void setId(String id) { this.id = id; }
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public String toString() {
return "{" + "" + "id=" + getId() + "," + "name=" + getName() + "}";
}
}

“entities”包中包含的类从未实际实例化,而是始终序列化/反序列化为 JSON(此特定项目使用 GSON 实现此目的)。

我的问题是:

  1. 这里的“实体”到底是什么意思?
    • 它基本上只是指一个旨在序列化为 JSON 或从 JSON 序列化的类吗?有没有比极其通用的“实体”更具体的术语?
  2. 这是 Java 项目中的常见模式吗?

最佳答案

在传统意义上,“实体”是持久保存到关系数据库中的对象。通常(但不一定)一个实体映射到一个表。在更一般的意义上,en Entity 表示映射到其他序列化对象(如 JSON)的实现。

我认为这个词来自Entity–relationship (ER) 模型,这与您如何在数据模型(通常是关系数据库)中表示信息有关。它不仅仅是 Java 的概念,因为 ER 数据建模比 Java 早了几十年。

关于java - 为什么要将 POJO 序列化/反序列化为通常包含在 'entities' 包中的 JSON? 'entities' 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54288510/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com