在用于前台查询课程的CourseFrontInfo.java上有这一句
意思是定义程序序列化ID。
序列化ID等同于身份验证,主要用于程序的版本控制,维护不同版本的兼容性以及避免在程序版本升级时程序报告的错误。
Java的序列化机制通过在运行时确定类的serialVersionUID来验证版本一致性。
在反序列化期间,JVM将输入字节流中的serialVersionUID与相应本地实体(类)的serialVersionUID进行比较,如果相同就认为是一致的,能够反序列化,否则在序列化版本不一致的情况下会有例外。
如果未定义名为serialVersionUID且类型为long的变量,则Java序列化机制将根据已编译的类自动生成serialVersionUID。 在这种情况下,只有相同编译生成的类才会生成相同的serialVersionUID。
因为在实际开发中,重新编译会影响项目进度的部署,所以为了提高开发效率,不想编译要编译的软件版本,需要显式定义一个名为serialVersionUID的变量,类型为long,不修改这个变量值的序列化实体都可以相互进行串行化和反串行化。