Java 每次执行程序后,序列化的数据会发生变化吗?

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);

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);
                System.out.println(em3.salary);
            }
            ois.close();

这取决于序列化数据的情况。如果将序列化数据持久化到某个文件或数据库,则不会更改

但是,如果将序列化数据传递给某个服务,该服务对该数据执行某些操作,然后将其持久化到某个存储中,并且您可以访问该数据,那么它将被更改

编辑


每次将数据写入文件时,请确保将其附加到文件中,否则,每次运行程序时,以前的数据都将被覆盖。

iam将其存储到文件中,确保数据附加到文件中而不被覆盖。我如何才能做到这一点?在创建
文件编写器时传递
true
fw=new FileWriter(“output.txt”,true)
@harishhari它工作了吗?还是有其他问题?每次序列化它时它都会被更改。这是显而易见的吗?