从Javascript Int到Java字符串

From Javascript Int to a Java String

本文关键字:Java 字符串 Int Javascript      更新时间:2023-09-26

所以我在Javascript中有一个变量,它可以是String和int,我需要将它发送到一个java方法。我想,因为把数字改成字符串比把数字改为字符串更容易,所以我把变量设置成字符串。我要发布一些代码

这显然是javascript,变量valore可以是Int和字符串

$(".save").click(function() {
                var valore = $("#valore").val();                
                var connettore = $("#connettore option:selected").text().split(" ").join("");       
                $.get("select"+connettore+".do", {
                    nomecampo: $("#colonnaRiferim").val().toLowerCase(),
                    valore: valore
                }, function (data) {
                            for (var i = 0; i < data.connettore.length; i++) {
                                var conn = data.connettore[i];                      
                            }
                        }
                );  

这是Java函数

@RequestMapping("selectCompensi")
@ResponseBody
@Transactional
public ModelWrapper<List<TracciatoCompensi>> selectCompensi(@RequestParam String nomecampo, 
    @RequestParam String valore){       
    Session s = hibernateFactory.getCurrentSession();
    ModelWrapper<List<TracciatoCompensi>> resp = new ModelWrapper<List<TracciatoCompensi>>();
    Criteria c = s.createCriteria(TracciatoCompensi.class)
            .add(Restrictions.eq(nomecampo, valore));
    List<TracciatoCompensi> aList = (List<TracciatoCompensi>) c.list();
    Query query = s.createSQLQuery("INSERT INTO tracciato_compensi_clone (CODICEORDINE, CODICESERVIZIO, CODICEUNIVOCOCOMPONENTE, COEFFICIENTECANONEMESE, "+nomecampo+", compensi1, rev, mod_time, mod_user) ("
                +"SELECT CODICEORDINE, CODICESERVIZIO, CODICEUNIVOCOCOMPONENTE, COEFFICIENTECANONEMESE, "+nomecampo+", "+nomecampo+", rev, mod_time, mod_user FROM tracciato_compensi WHERE "+nomecampo+" = '"+valore+"')");                
    resp.put("connettore", aList);
    query.executeUpdate();
    return resp;
}

你可以忽略Query,它起作用,标准和其他东西也起作用。我的问题似乎很明显,如果valore是数字,那么函数就会崩溃,我尝试在数字中添加一个随机字符,并尝试使用toString()将其转换为javascript,但即使我使用jquery的isNumeric()函数,它说它不是数字,它仍然会崩溃

您要查找的方法可能是String.valueOf(Object):

    String valore1 = "5";
    System.out.println(String.valueOf(valore1));
    int valore2 = 5;
    System.out.println(String.valueOf(valore2));

给出:

5
5

在控制台中。