为什么类实现了Serializable接口?
问题内容:
@Entity
public class Husband implements Serializable {
@Id
private int id;
private String name;
@OneToOne
private Wife wife;
}
@Entity
public class Wife implements Serializable {
@Id
private int id;
private String name;
@OneToOne(mappedBy="wife")
private Husband husband;
}
Serializable
广义上是什么?- 类为什么实现
Serializable
接口? - 为什么丈夫成员一个人只有@OnetoOne(mappedBy =“ Wife”),而妻子成员却没有@OnetoOne(mappedBy =“ husband”)
问题答案:
-
广义上讲,序列化是Java为开发人员提供的将任何对象的状态持久保存到持久存储中的方式。
-
如果开发人员出于某种原因希望将其编码类的实例保留到后备存储,则需要将该类声明为实现Serializable。
-
上面的代码代表了丈夫和妻子之间的一对一关系。这基本上意味着每个妻子都与一个丈夫有关系,每个丈夫都与一个妻子有关系。:-)同样在上述关系中,丈夫是关系的主人(以实体关系术语),这就是为什么妻子说它是由丈夫映射/关联到丈夫的,而不是相反的。这意味着丈夫确定了自己的妻子,而不是相反。