我有一些来自Date、Long类型和Overlay类型的错误。两者都使用long,这在GWT JSNI中是不允许的。通过getTime()将Date序列化为long。
我现在正在做的(似乎是有效的)是:
从JAVA (使用Jackson序列化到json)
Long myLong = new Long(50)
Date myDate = new Date();
public String getMyLong()
{
return String.valueOf(myLong);
}
public String getDate() {
return String.valueOf(date.getTime());
}来自GWT (使用OverlayTypes)
/*Returning a Long*/
private final native String _getEscaletaId() /*-{ return this.escaletaId; }-*/;
public final Long getEscaletaId() {return new Long(_getEscaletaId());}
/*Returning a Date*/
private final native String _getDate() /*-{ return this.date; }-*/;
public final Date getDate() {return new Date(Long.valueOf(_getDate()));}这是处理long和其他特殊类型的更好方法吗?
谢谢你。
发布于 2010-11-17 09:31:17
对于日期,有JsDate,它是JS Date对象的一个很薄的包装器。
long是冒险的,因为JavaScript没有long的概念。所有的数字都是53位的双精度,这是bit Twitter recently的事实。
https://stackoverflow.com/questions/4198904
复制相似问题