代码之家  ›  专栏  ›  技术社区  ›  ramon_salla

GWT覆盖类型日期和长

  •  6
  • ramon_salla  · 技术社区  · 15 年前

    我有一些来自日期、长类型和覆盖类型的错误。两者都使用long,这在GWTJSNI中是不允许的。通过getTime()将日期序列化为长。

    我现在所做的(而且似乎有效)是:

    从Java(使用杰克逊序列化为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(使用覆盖类型)

    /*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()));}
    

    这是处理长型和其他特殊类型的更好方法吗?

    谢谢你。

    1 回复  |  直到 15 年前
        1
  •  3
  •   Jason Hall    15 年前

    对于约会,有 JsDate ,一个围绕JS的薄JSO包装器 Date 对象。

    多头是不确定的,因为javascript没有长的概念。所有的数字都是53位的双精度,事实上 bit Twitter recently .