Ajax传递复杂参数到服务器端的方法

简介: 版权声明:欢迎转载,请注明沉默王二原创。 https://blog.csdn.net/qing_gee/article/details/82287052 我们大概都知道,使用Ajax传递简单参数到服务器端(SpringMVC)的方法,如下:$.
版权声明:欢迎转载,请注明沉默王二原创。 https://blog.csdn.net/qing_gee/article/details/82287052

我们大概都知道,使用Ajax传递简单参数到服务器端(SpringMVC)的方法,如下:

$.ajax({
    type : "POST",
    url : CONFIG.mec_otm.order + "/cancel",
    data : {
        "results" : "cmower",
    },
    dataType : "json",
    success : function(json) {
    }
});

但如果想要传递一个像List<SelfOrder>这样的复杂对象(一个 java.util.List 中放了自定义对象com.cmower.database.entity.selforder.SelfOrder)呢?

怎么办呢?
想一想,可以在Ajax传递参数的时候把复杂对象转成JSON字符串,然后在服务器端获取JSON字符串后再转成List<SelfOrder>
好像有道理,是吧?

那具体怎么做呢?
先来看客户端代码,我们假设有一个datatables的Table,支持多选

// 获取datatables选择的项目,支持多选,因此获取的结果为一个数组
var _getSelects = function() {
    var results = [];
    self_order_table.rows({
        selected : true
    }).data().each(function(selfOrder, i) {
        var result = {};
        result["scode"] = selfOrder.scode;
        result["id"] = selfOrder.id;
        results[i] = result;
    });
    return results;
};

$("#orderBtn").click(function(event) {
    var results = _getSelects();

    $.ajax({
        type : "POST",
        url : CONFIG.mec_otm.order + "/cancel",
        data : {
            "results" : JSON.stringify(results),//转成json字符串
        },
        dataType : "json",
        success : function(json) {

    });

    return false;
});

然后服务器端获取的方法也很简单:

@RequestMapping("cancel")
public ModelAndView cancel() {
    String jsonStr = getPara("results");
    if (StringUtils.isEmpty(jsonStr)) {
        throw new OrderException("请选择要撤单的项目");
    }

    List<SelfOrder> list = JSON.parseArray(jsonStr, SelfOrder.class);

}

可以利用fastjson(JSON.parseArray)对json字符串转成目标的复杂对象。

相关文章
|
9月前
|
弹性计算 ice
阿里云4核8g服务器多少钱一年?1个月和1小时价格,省钱购买方法分享
阿里云4核8G服务器价格因实例类型而异,经济型e实例约159元/月,计算型c9i约371元/月,按小时计费最低0.45元。实际购买享折扣,1年最高可省至1578元,附主流ECS实例及CPU型号参考。
856 8
|
9月前
|
弹性计算 定位技术 数据中心
阿里云服务器配置选择方法:付费类型、地域及CPU内存配置全解析
阿里云服务器怎么选?2025最新指南:就近选择地域,降低延迟;长期使用选包年包月,短期灵活选按量付费;企业选2核4G5M仅199元/年,个人选2核2G3M低至99元/年,高性价比爆款推荐,轻松上云。
1093 11
|
9月前
|
弹性计算
阿里云8核16G云服务器收费标准:最新价格及省钱购买方法整理
阿里云8核16G云服务器价格因实例类型而异。计算型c9i约743元/月,一年6450元(7折);通用算力型u1约673元/月,一年仅需4225元(5.1折)。实际价格享时长折扣,详情见ECS官网。
|
Java
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
351 9
|
9月前
|
域名解析 弹性计算 负载均衡
给阿里云服务器加速的方法有哪些?
本文介绍如何通过阿里云CDN加速、ECS网络优化及SLB负载均衡三种方法提升服务器响应速度。涵盖具体操作步骤,助力用户优化访问性能。
|
11月前
|
弹性计算 小程序 容灾
2025购买阿里云服务器配置选择方法:企业+个人+学生攻略
2025年阿里云服务器购买省钱攻略,涵盖个人、中小企业及高性能配置推荐。个人用户优选38元轻量或99元ECS,企业用户选199元2核4G服务器,游戏用户适合4核16G或8核32G配置,详情请参考最新活动及攻略。
1627 11
|
10月前
|
弹性计算 定位技术 数据中心
阿里云服务器选择方法:配置、地域及付费模式全解析
2025阿里云服务器选购指南:就近选择地域以降低延迟,企业用户优选2核4G5M带宽u1实例,仅199元/年;个人用户可选2核2G3M带宽ECS,99元/年起。长期稳定业务选包年包月,短期或波动场景用按量付费,轻松搭建网站首选高性价比配置。
|
11月前
|
缓存 监控 前端开发
详述uniapp项目部署于Nginx服务器的配置优化方法。
综上所述,uniapp项目部署于Nginx的优化方法多种多样,应根据实际情况灵活地采取合适的策略。配置后持续监控和调试,适时调整配置以保持最佳性能,并确保随着应用需求和访问模式的变化,服务器配置得到适当的更新和优化。
448 0
|
安全 关系型数据库 网络安全
安全加固:启动PostgreSQL 14服务器SSL加密的方法指南在CentOS 7环境中
通过上述步骤,你可以为PostgreSQL数据库服务器设置SSL加密,从而增加数据在传输中的安全性。确保维持证书的有效性,并且定期更新和管理密钥,以防止未授权访问。
552 0
|
缓存 PHP 数据库
WordPress网站服务器性能优化方法,站长必备。
最后,当你将这些方法组合起来并实施时,您将发现你的WordPress网站性能有了显著的提高。别忘了,这不是一次性的任务,要定期执行,保持你的车(网站)始终在轨道上飞驰。
420 21