【问题标题】:Struts 2 - Double with scientific notation issueStruts 2 - Double 与科学记数法问题
【发布时间】:2014-03-10 12:53:10
【问题描述】:

我在处理 Struts 2 和 Javascript 时遇到问题。这是javascript代码:

geocoder.geocode({'address': address}, function(results, status) {
                if (status == google.maps.GeocoderStatus.OK) {
                    var latitud = results[0].geometry.location.lat();
                    var longitud = results[0].geometry.location.lng();
                    document.getElementById("goPlans_evo_latitud").value = latitud;
                    document.getElementById("goPlans_evo_longitud").value = longitud;
                    document.getElementById("goPlans").submit();
                } 
            });

当我尝试在脚本端打印这两个值(纬度和经度)时,它会返回此值(例如):

41.3970035 2.189719200000013

如果我在 action 方法上打印它们(在 struts 2 在 Double 对象上设置这些值之后),它会返回:

4.13970035E8 2.189719200000013E15

我注意到这是一个科学记数法。我可以尝试格式化它们,但这些值的格式错误。

这个动作方法(很简单):

public String goPlans() {
    System.out.println(evo.getLatitud() + " " + evo.getLongitud());
    return SUCCESS;
}

有人可以帮助我了解如何使用 Struts 2 正确设置这些值吗?

谢谢。

编辑:我发现了问题!我需要将经度和纬度 bean 变量声明为双精度(原始)而不是双精度(类)。

【问题讨论】:

标签: javascript google-maps struts2 double scientific-notation


【解决方案1】:

我发现了问题!我需要将经度和纬度 bean 变量声明为双精度(原始)而不是双精度(类)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-24
    • 2013-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多