Json 序列化和反序列化Play2 Html对象
我有一个文档案例类。 为了序列化它并反序列化Json文本,我定义了隐式读写对象 如果我的文档类只包含Int和String,我就没有问题了。 但是,当我的Document case类中有一个Html类型值时,我就遇到了问题 它是嵌套序列化和反序列化。 我在创建Html阅读器时遇到问题。Play 2 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] {
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;
}