Variável serialVersionUID qual valor eu coloco?  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
rodolfodev
JavaBaby
[Avatar]

Membro desde: 29/03/2006 16:09:17
Mensagens: 92
Offline

Quando eu serealizo um objeto, eu tenho que declarar uma variável serialVersionUID.
Essa variável tem que ser declarada com valores diferentes para cada objeto?

Grato
serp
Thread.start()

Membro desde: 28/07/2003 15:26:11
Mensagens: 35
Localização: Santo André - SP
Offline

Eu creio que um long que seja único para cada classe.

Obrigado!

Sergio Ricardo - serp@programmer.net.

[Email] [ICQ]
rodolfodev
JavaBaby
[Avatar]

Membro desde: 29/03/2006 16:09:17
Mensagens: 92
Offline

Minha duvida é que se ele for único eu vou ter que ter um controle de que número eu já usei.
serp
Thread.start()

Membro desde: 28/07/2003 15:26:11
Mensagens: 35
Localização: Santo André - SP
Offline

Não, para cada classe.

Obrigado!

Sergio Ricardo - serp@programmer.net.

[Email] [ICQ]
pm
JavaEvangelist

Membro desde: 28/01/2005 12:42:15
Mensagens: 438
Offline

Vc poder utilizar o utilitario serialver disponivel do sdk

http://java.sun.com/j2se/1.5.0/docs/tooldocs/windows/serialver.html
http://www.javapractices.com/Topic45.cjp
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Se estiver usando o Eclipse, ele mesmo gera um número para você.

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
rodolfodev
JavaBaby
[Avatar]

Membro desde: 29/03/2006 16:09:17
Mensagens: 92
Offline

Como faço para o eclipse gerar?
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Quando você cria uma classe que pede um serialVersionUID, ao lado da definição da classe, ele mostra um warning. Clique lá e ele mostra as opções.

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
rodolfodev
JavaBaby
[Avatar]

Membro desde: 29/03/2006 16:09:17
Mensagens: 92
Offline

Valeu não conhecia essa função do eclipse.
paulohrl
Virtual Machine Man

Membro desde: 12/01/2007 23:35:34
Mensagens: 611
Offline

Desculpa a ignorância, mas para que serve essa variável?
[Email] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

http://www.guj.com.br/posts/list/26252.java
http://java.sun.com/j2se/1.5.0/docs/api/java/io/Serializable.html
http://www.javapractices.com/Topic45.cjp

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
Guerr@
Virtual Machine Man
[Avatar]

Membro desde: 03/12/2006 10:32:50
Mensagens: 520
Offline

paulohrl wrote:Desculpa a ignorância, mas para que serve essa variável?


Serve para a máquina virtual saber a versão da classe para quando ela é serializada. Se você não declarar esta variável e receber um objeto da mesma classe de uma aplicação remota (que talvez tenha sido compilado em um momento diferente), pode ser que dê um ClassCastException. Colocando esta variável a máquina virtual reconhece como a mesma classe (mesmo se não for uma versão igual, com um campo a mais por exemplo...).
[Email]
paulohrl
Virtual Machine Man

Membro desde: 12/01/2007 23:35:34
Mensagens: 611
Offline

Entendi

Valew
[Email] [MSN]
joma
Smalltalk

Membro desde: 28/03/2012 11:24:50
Mensagens: 1
Offline

Olá,

"public class BaseBean implements Serializable"

Criei a class BaseBean que é serializavel, mas o Eclipse não dá nenhum "Warning" logo não mostra o QuickFix (com o CTRL 1 não aparece nada) que permite gerar automáticamente o "serialVersionUID".
O que poderá esta a acontecer de errado?
O que fazer para o Eclipse gerar o "serialVersionUID"?

Obrigado.

Jorge Mota
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team