Struts 2 - 具有科学记数法问题的双重

时间:2014-03-10 12:53:10

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

我在处理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();
                } 
            });

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

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变量声明为double(primitive)而不是Double(Class)。

1 个答案:

答案 0 :(得分:0)

我发现了问题!我需要将经度和纬度bean变量声明为double(primitive)而不是Double(Class)。