zoukankan      html  css  js  c++  java
  • jQuery 传递对象参数到Spring Controller

        当jQuery 发送ajax请求需要传递多个参数时,如果参数过多,Controller接收参数时就需要定义多个参数,这样接口方法会比较长,也不方便。Spring可以传递对象参数,将你需要的所有查询条件定义成对象的属性,前台给对象赋值,后台Controller接收时只需要接收对象参数即可,这样代码就变得非常简洁。以下是示例代码:

        1、对象参数QueryBean

             就是普通的java类,定义你需要的属性,生产getter、setter方法即可。例如我查询时需要传递用户名称name、用户密码password,那么我的类:Class User{private String name;private String password;getter....setter....}

        2、前台jsp页面jQuery发送请求如何传入对象参数userEntity。要注意data里是JSON格式字符串,属性与对象参数User里的属性名称完全一致。

             $.ajax({
            type : "post",
            url :"${pageContext.request.contextPath }/customerController/queryMedicalRecords",
            data :{name:'这里是你需要传递的用户名称值',password:'你输入的密码’},
            dataType : "json",
            success : function(res) {
                      }
                  });

       3、后台Spring Controller 接收参数方法。方法中定义一个对象参数User对象即可,对象名称随便写。这样前台的参数在方法里可以直接通过userEntity.get...方法来拿到。接口里只有request、response、userEntity三个参数,非常干净整洁。如果不是用这样的方法的话,那么就需要定义成这样:public void queryMedicalRecords( HttpServletRequest request, HttpServletResponse response,String name,String password)。这样看起来就很冗余了。

             public void queryMedicalRecords( HttpServletRequest request, HttpServletResponse response,User userEntity) throws IOException {.....}

  • 相关阅读:
    SVN cleanup操作反复失败解决办法
    mysql常用命令之-用户密码修改
    properties 配置文件中值换行的问题
    在每一行行尾添加内容
    Java 毫秒转换为日期类型、日期转换为毫秒
    SimpleDateFormat 12小时制以及24小时制的写法
    java校验时间格式 HH:MM
    ClassLoader 详解及用途(写的不错)
    ObjectInputStream类和ObjectInputStream类的使用
    logback 详解
  • 原文地址:https://www.cnblogs.com/DylanZ/p/5822308.html
Copyright © 2011-2022 走看看