Java 每次执行程序后,序列化的数据会发生变化吗?
Iam正在尝试使用序列化存储多个员工详细信息,这些详细信息是永久存储还是在每次执行后更改Java 每次执行程序后,序列化的数据会发生变化吗?,java,serialization,deserialization,Java,Serialization,Deserialization,Iam正在尝试使用序列化存储多个员工详细信息,这些详细信息是永久存储还是在每次执行后更改 Emp[] em2= (Emp[]) ois.readObject(); for(Emp em3:em2 ){ System.out.println(em3.id); System.out.println(em3.name); System.out.println(em3.age);
Emp[] em2= (Emp[]) ois.readObject();
for(Emp em3:em2 ){
System.out.println(em3.id);
System.out.println(em3.name);
System.out.println(em3.age);
System.out.println(em3.salary);
}
ois.close();
这取决于序列化数据的情况。如果将序列化数据持久化到某个文件或数据库,则不会更改 但是,如果将序列化数据传递给某个服务,该服务对该数据执行某些操作,然后将其持久化到某个存储中,并且您可以访问该数据,那么它将被更改 编辑:
每次将数据写入文件时,请确保将其附加到文件中,否则,每次运行程序时,以前的数据都将被覆盖。iam将其存储到文件中,确保数据附加到文件中而不被覆盖。我如何才能做到这一点?在创建
文件编写器时传递true
fw=new FileWriter(“output.txt”,true)
@harishhari它工作了吗?还是有其他问题?每次序列化它时它都会被更改。这是显而易见的吗?