Introducción a SerialVersionUid
Cuando se trata de la transmisión de objetos durante la reprogramación, adoptaremos la tecnología de serialización, a través de la serialización, el proceso de convertir la información de estado del objeto en un formulario que se puede almacenar o transmitir. En Java, podemos serializar objetos implementando la interfaz serializable, y SerialVersionUid es un papel indispensable en el mecanismo de serialización de Java. Podemos verificar la consistencia de la versión juzgando la serie SerialVersionUid de la clase en tiempo de ejecución. Cuando se deserializa, el JVM comparará la serie SerialVersionUid en la corriente de byte pasada con la VersionUid de la entidad local correspondiente (clase). Si se considera que lo mismo es consistente, se puede deserializar, de lo contrario, se producirá una excepción con versiones de serialización inconsistentes.
Cuando usamos la idea IntelliJ para escribir clases e implementar la interfaz serializable (serializada), podemos encontrar tal problema, es decir:
El SerialVersionUid no se puede generar automáticamente .
serialVersionUID es otro campo muy importante, porque el mecanismo de serialización de Java verifica serialVersionUID de la clase en tiempo de ejecución para verificar la consistencia de la versión. Cuando se deserializa, el JVM comparará serialVersionUID en la corriente de byte pasada con serialVersionUID de la entidad local correspondiente (clase). Si se considera que lo mismo es consistente, se puede deserializar, de lo contrario, se producirá una excepción con versiones de serialización inconsistentes.
En términos generales, hay dos formas de definir serialVersionUID , a saber:
1L predeterminado, específicamente private static final long serialVersionUID = 1L;64 bits basado en el nombre de la clase, el nombre de la interfaz, los métodos y los atributos del miembro, por ejemplo, private static final long serialVersionUID = XXXL;Hay dos propósitos principales para la serialización de las clases de Java, a saber:
Aquí, echemos un vistazo a cómo usar la idea IntelliJ para generar automáticamente serialVersionUID .
Paso 1: Instale el complemento GenerationSerialVersionUid
Como se muestra en la figura anterior, haga clic en Preferences para ingresar la siguiente interfaz:
Aquí, seleccione Plugins y busque GenerateSerialVersionUID . Si no encuentra este complemento, puede hacer clic en Search in repositories para buscar:
Como se muestra en la imagen de arriba, haga clic en install para instalar para instalar este complemento.
Paso 2: Establezca la función de inspecciones
Como se muestra en la figura anterior, ingrese Default Settings , en la página Configuración Inspections , verifique Serializable class without 'serialVersionUID' , y también puede establecer los niveles de inmediato en Severity , como Warning , Error , etc., lo que vale la Warning de valor predeterminado. También se recomienda seleccionar indicaciones de nivel de Warning .
Como se muestra en la figura anterior, cree una clase e implemente la interfaz Serializable , luego presione alt + Enter para recibir un mensaje y seleccione SerialVersionUID :
Como se muestra en la figura anterior, ¡obviamente hemos utilizado la idea IntelliJ para generar automáticamente serialVersionUID !
Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.