Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/322.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
JavaBeans:因为在下面的示例中实现了可序列化接口?_Java_Serialization_Javabeans - Fatal编程技术网

JavaBeans:因为在下面的示例中实现了可序列化接口?

JavaBeans:因为在下面的示例中实现了可序列化接口?,java,serialization,javabeans,Java,Serialization,Javabeans,我正在做一个教程roseindia.net(),使beanStudentBean.java实现java.io.Serializable接口 这有什么原因吗?数据库中存储的数据是否不同,以实现可序列化接口?您链接到的教程没有使用可序列化的类 他们可能会将它放在那里,以遵循一般的JavaBean模式,但通过JDBC将其写入数据库时不需要它。你对此感到困惑是正确的,因为没有任何解释 Serializable用于ObjectOutputStream,例如使用RMI在网络上写入文件或传输bean。因此,对

我正在做一个教程roseindia.net(),使bean
StudentBean.java
实现
java.io.Serializable
接口


这有什么原因吗?数据库中存储的数据是否不同,以实现可序列化接口?

您链接到的教程没有使用可序列化的类

他们可能会将它放在那里,以遵循一般的JavaBean模式,但通过JDBC将其写入数据库时不需要它。你对此感到困惑是正确的,因为没有任何解释


Serializable用于ObjectOutputStream,例如使用RMI在网络上写入文件或传输bean。因此,对于数据传输对象来说,这是一个不错的支持特性。

Java提供了支持将对象状态写入流和从流恢复对象的类
java.io.Serializable
是一个标记接口,它提供了在DB表、文件中对类(实现可序列化)的对象状态进行选择序列化的能力,或者通过网络传输等。

检查这一点,您正在做的教程可能来自互联网上最臭名昭著的编程错误信息站点。请找一个更好的。不,不是。JDBC setString/setInt用于存储对象状态。我知道可以通过Seriazible接口保存对象的状态(通过将该接口转换为一组位),但在上面的链接中,要持久化的类的属性与任何其他数据一样存储在数据库中(如果没有serializable接口,也可以做同样的事情)我说得对吗?我明白,回答很好,对我来说非常成功。我还有一个问题:我可以将我的对象的状态存储在数据库中,作为实现可序列化接口的一组位。我这样说是为了防止你想存储一个属性比简单的字符串或整数更复杂的对象(比如map或arraylist)是的,您可以将可序列化对象转换为字节[](二进制数据),然后将其放在数据库中。但是,它不能再在SQL中查询(因为数据库不知道这些字节的含义)。谢谢,您的回答对我帮助很大