XStream e uma biblioteca simples para serializar objetos em arquivos XML, e desserializa-los em objetos Java. Ou seja, com essa biblioteca voce e capaz de salvar seus objetos em arquivos XML e restaurar esse arquivos em objetos novamente.Entre as principais vantagens de usar essa biblioteca estao:E facil de usar Existe uma classe de alto nivel que encapsula a biblioteca, com apenas uma classe voce consegui salvar seus objetos em arquivos XML.Desempenho E rapido e consome pouca memoria, por isso pode ser usado para objetos com muitos dados, ou em sistema que necessitem salvar muitos XMLs.Nao e necessario modificar classes e objetos - Serializa campos internos, incluindo os private e final. Suporta classes internas e nao publicas, e nao exige que as classe possuam um construtor padrao.Para aplicacoes pequenas, em que nao seja necessario XML complexo, o XStream se mostra como uma excelente opcao. Sua facilidade de uso torna tudo mais simples, e o desenvolvedor precisa de poucas linhas para salvar e recuperar seus objetos.Primeiramente e necessario fazer o download do arquivo .jar da biblioteca, o endereco e http://xstream.codehaus.org/download.html. Se o codigo for usado como mostrado nessa postagem nao e necessario incluir nenhuma outra biblioteca ao seu projeto.O Exemplo a seguir foi adaptado do site da biblioteca. Primeiramente sao criadas duas classes simples:public class Pessoa { private String nome; private String sobreNome; private Fone fone; private Fone celular;}public class Fone { private int codigo; private String numero;}Apos ter as classes que deseja serializar, e adicionar a biblioteca ao seu ClassPath, inicie um objeto XStream. Ele sera responsavel pela serializacao e desserializacao dos objetos.XStream xstream = new XStream(new DomDriver());//O codigo abaixo e opcionalxstream.alias("pessoa", Pessoa.class);xstream.alias("telefone", Fone.class);Agora vamos mostrar os codigos para serializar um objeto da classe Pessoa. Basta usar o objeto xstream criado:Pessoa joao = new Pessoa(Joao, da Silva);joao.setFone(new Fone(1,1234-456));joao.setCelular(new Fone(2,9999-9999));String xml = xstream.toXML();Com essa manobra a variavel xml recebe o seguinte valor: <pessoa> <nome>Joao</nome> <sobrenome>da Silva</sobrenome> <fone> <codigo>1</codigo> <numero>1234-456</numero > </fone> <celular> <codigo>2</codigo> <numero>9999-999</numero > </celular></pessoa>Para desserializar e tao facil quanto serializar:Pessoa novoJoao = (Pessoa)xstream.fromXML(xml);E muito facil ne?!E tem muitas utilidades! Quando desenvolvi o ecf, utilizei para restaurar itens vendidos quando o programa fechava ou havia queda de energia, ele salvava, a cada item vendido o arquivo xml da classe Cupom, e se ocorrece alguma eventualidade, ele transforma esse xml em objeto, e pronto, a aplicacao ficava no mesmo estado em que estava quando aconteceu o problema.Abaixo seguem alguns codigos que podem ajudar ://Para omitir algum campo do xml//Nao salvaremos o campo celular da classe Pessoaxstream.omitField(Pessoa.class, celular); ---------------------------------------------------//Para salvar em uma arquivo podemos salvar em uma OutPutStreamxstream.toXML(joao, new FileOutPutStream(arquivo.xml)); ---------------------------------------------------//Para recuperar de um arquivo- usando InputStreamPessoa novoJoao;novojoao = (Pessoa) xstream.fromXML(new FileInputStream(arquivo.xml)); ---------------------------------------------------//Para aceitar caracteres especiaisXStream stream = newXStream(new DomDriver("ISO-8859-1")); Mais um artigo meia boca, desta vez sobre fluxo optico.Neste trabalho eu comparei dois metodos para localizacao de fluxo optico me sequencias de imagens.Fluxo optico nada mais e, do que o movimento do pixel ao longo do tempo, em sequencias de imagens, tais como videos.Pode ser interessante para alguem.... :DAcesse o Artigo aqui Esses dias estava precisando criar uma telinha pra mostrar notificacoes de novos