SerialversionUid 소개
재 프로그래밍 중 객체의 전송과 관련하여 직렬화 기술, 직렬화를 통해 객체의 상태 정보를 저장 또는 전송할 수있는 형태로 변환하는 프로세스를 채택합니다. Java에서는 직렬화 가능한 인터페이스를 구현하여 객체를 직렬화 할 수 있으며 SerialversionUid는 Java 직렬화 메커니즘에서 필수 불가결 한 역할입니다. 런타임에 클래스의 직렬 버전을 판단하여 버전 일관성을 확인할 수 있습니다. 탈선 할 때, JVM은 전달 된 바이트 스트림의 Serialversionuid를 로컬 해당 엔티티 (클래스)의 Serialversionuid와 비교합니다. 동일하게 일관된 것으로 간주되면 사막화 될 수 있습니다. 그렇지 않으면 일관되지 않은 직렬화 버전의 예외가 발생합니다.
Intellij 아이디어를 사용하여 클래스를 작성하고 직렬화 가능한 (직렬화 된) 인터페이스를 구현할 때 그러한 문제, 즉 다음과 같은 문제가 발생할 수 있습니다.
SerialversionUid는 자동으로 생성 할 수 없습니다 .
serialVersionUID Java의 직렬화 메커니즘이 버전 일관성을 확인하기 위해 런타임에 클래스의 serialVersionUID 확인하기 때문에 또 다른 매우 중요한 필드입니다. 탈선 할 때, JVM은 전달 된 바이트 스트림의 serialVersionUID 로컬 해당 엔티티 (클래스)의 serialVersionUID 와 비교합니다. 동일하게 일관된 것으로 간주되면 사막화 될 수 있습니다. 그렇지 않으면 일관되지 않은 직렬화 버전의 예외가 발생합니다.
일반적으로, serialVersionUID 정의하는 두 가지 방법, 즉 다음과 같은 두 가지 방법이 있습니다.
1L , 특히 private static final long serialVersionUID = 1L;64 비트 해시 필드를 생성합니다 private static final long serialVersionUID = XXXL;Java 클래스의 직렬화를위한 두 가지 주요 목적, 즉 :
여기서는 serialVersionUID 자동으로 생성하기 위해 Intellij 아이디어를 사용하는 방법을 살펴 보겠습니다.
1 단계 : GenerateSerialVersionUid 플러그인을 설치하십시오
위 그림과 같이 Preferences 클릭하여 다음 인터페이스를 입력하십시오.
여기서는 Plugins 선택하고 GenerateSerialVersionUID 를 검색하십시오. 이 플러그인을 찾지 못하면 Search in repositories 클릭하여 검색 할 수 있습니다.
위 그림과 같이 install 클릭하여 설치를 클릭 하여이 플러그인을 설치하십시오.
2 단계 : 검사 기능을 설정합니다
위 그림과 같이 Default Settings 입력하고 Inspections 설정 페이지에서 Serializable class without 'serialVersionUID' 확인하고 Warning , Error 등과 같은 Severity 레벨을 Warning 로 설정할 수도 있습니다. 또한 Warning 수준 프롬프트를 선택하는 것이 좋습니다.
위 그림과 같이 클래스를 생성하고 Serializable 인터페이스를 구현 한 다음 alt + Enter 눌러 프롬프트를 받고 SerialVersionUID 선택하십시오.
위 그림과 같이, 우리는 serialVersionUID 자동으로 생성하기 위해 Intellij 아이디어를 분명히 사용했습니다!
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.