相关疑难解决方法(0)

Gson自定义seralizer,用于使用TypeAdapter的对象中的一个变量(多个)

我见过很多使用自定义TypeAdapter的简单示例.最有帮助的是Class TypeAdapter<T>.但这还没有回答我的问题.

我想自定义对象中单个字段的序列化,让默认的Gson机制处理其余的事情.

出于讨论目的,我们可以将此类定义用作我希望序列化的对象的类.我想让Gson序列化前两个类成员以及基类的所有公开成员,并且我想为下面显示的第三个和最后一个类成员进行自定义序列化.

public class MyClass extends SomeClass {

@Expose private HashMap<String, MyObject1> lists;
@Expose private HashMap<String, MyObject2> sources;
private LinkedHashMap<String, SomeClass> customSerializeThis;
    [snip]
}
Run Code Online (Sandbox Code Playgroud)

java serialization gson

93
推荐指数
3
解决办法
2万
查看次数

使用Gson和抽象类

我正在尝试使用GSON在客户端和服务器之间交换消息.

问题如下:

我有这个结构:

public class Message 
{
    private TypeOfContent type; //  It's a enum 
    private Content       content;
    ....
}
Run Code Online (Sandbox Code Playgroud)

然后,对象内容可以是各种类的类.

我在这里这里找到了2个教程,但没有一个能解决问题.

EDIT1:

消息类是这样的:


public class Mensagem
{
private TipoMensagem    type;

    private Conteudo        conteudo;

    private Cliente         autor;
    private Cliente         destino;    // null -> to all(broadcast)
}
Run Code Online (Sandbox Code Playgroud)

内容就是这个:

public class Conteudo
{

protected   TipoConteudo typeConteudo; 

protected   String      texto;

protected   Posicao     posicao;

public Conteudo(TipoConteudo typeConteudo, String texto, Posicao posicao)
{
    this.texto   = texto;
    this.posicao = posicao;  
    this.typeConteudo = typeConteudo; …
Run Code Online (Sandbox Code Playgroud)

java abstract-class object gson

7
推荐指数
1
解决办法
9862
查看次数

标签 统计

gson ×2

java ×2

abstract-class ×1

object ×1

serialization ×1