Json 序列化和反序列化Play2 Html对象

Json 序列化和反序列化Play2 Html对象,json,swagger-play2,Json,Swagger Play2,我有一个文档案例类。 为了序列化它并反序列化Json文本,我定义了隐式读写对象 如果我的文档类只包含Int和String,我就没有问题了。 但是,当我的Document case类中有一个Html类型值时,我就遇到了问题 它是嵌套序列化和反序列化。 我在创建Html阅读器时遇到问题。Play 2 Html不是一个案例类。这是个问题吗 以下代码是否正确: implicit object HtmlReads extends play.api.libs.json.Reads[Html] {

我有一个文档案例类。 为了序列化它并反序列化Json文本,我定义了隐式读写对象

如果我的文档类只包含Int和String,我就没有问题了。 但是,当我的Document case类中有一个Html类型值时,我就遇到了问题

它是嵌套序列化和反序列化。 我在创建Html阅读器时遇到问题。Play 2 Html不是一个案例类。这是个问题吗

以下代码是否正确:

implicit object HtmlReads extends play.api.libs.json.Reads[Html] {
       def reads(json: JsValue) = Html (
           (json \ "text").as[String] 
        )
}
它不起作用。 我该怎么做?
谢谢

这就是我用java解决这个问题的方法(但我想在scala中也是这样): 我创建了一个JsonSerializer类来将一个类转换成一个字符串,然后注释将与我的类一起转换成Json的字段

下面是一个示例,向您展示该日期的工作方式:

import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import com.fasterxml.jackson.databind.*;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonProcessingException;
import org.springframework.stereotype.Component;

/**
 * Used to serialize Java.util.Date, which is not a common JSON
 * type, so we have to create a custom serialize method;.
 *
 * @author Loiane Groner
 */
@Component
public class JsonDateSerializer extends JsonSerializer<Date>{

    private static final SimpleDateFormat dateFormat = new SimpleDateFormat("MM-dd-yyyy");

    @Override
    public void serialize(Date date, JsonGenerator gen, SerializerProvider provider)
            throws IOException, JsonProcessingException {
        String formattedDate = dateFormat.format(date);
        gen.writeString(formattedDate);
    }
}
Ainsi,lorsque j'Use mapper.writeValueAsString(lst),j'obtiens des date au格式:2014年8月13日

我从你那里复制了资料来源

public class MyClass
{
    @Formats.DateTime(pattern="dd/MM/yyyy")
    @JsonSerialize(using=JsonDateSerializer.class)
    public Date     myDate;
}