当前位置: 萬仟网 > 移动技术>移动开发>Android > Postman传递对象参数(包含有集合对象)

Postman传递对象参数(包含有集合对象)

2022年01月07日 Android 我要评论
目录项目场景:解决方案:补充:postman测试接口传递对象参数项目场景:postman通常需要传递各式各样的参数,这样的话,进行写参数比较头疼,不知怎么进行传参。解决方案:可以考虑将参数对象写成js

项目场景:

postman通常需要传递各式各样的参数,这样的话,进行写参数比较头疼,不知怎么进行传参。

解决方案:

可以考虑将参数对象写成json字符串的样式,然后将将字符串转换成json对象

实体类:

import lombok.allargsconstructor;
import lombok.data;
import lombok.noargsconstructor;
import org.apache.ibatis.annotations.param;
import org.hibernate.validator.constraints.length;
import org.springframework.validation.annotation.validated;

import javax.persistence.column;
import javax.persistence.id;
import javax.persistence.table;
import javax.persistence.transient;
import javax.validation.valid;
import javax.validation.constraints.digits;
import javax.validation.constraints.notnull;
import java.io.serializable;
import java.math.bigdecimal;
import java.util.date;
import java.util.list;

@data
@allargsconstructor
@noargsconstructor
@table(name = "ssm_funds_main")
public class funscjymodel implements serializable {
    private static final long serialversionuid = 1l;
    /**
     * 主表id
     */
    @id
   // @notnull(message = "id不能为空")
    @length(max = 32,message = "主表id长度不能超过32位")
    @column(name = "bi_rs_id")
    private string birsid;
    /**
     * 所属培训班
     */

    @notnull(message = "所属培训班不能为空")
    @length(max = 32,message = "培训班长度不能超过32位")
    @column(name = "term_name")
    private string termname;
    /**
     * 发票购买方
     */
    @notnull(message = "发票购买方不能为空")
    @length(max = 32,message = "发票购买方长度不能超过32位")
    @column(name = "buyer")
    private string buyer;
    /**
     * 发票销售方
     */
    @notnull(message = "发票销售方不能为空")
    @length(max = 32,message = "发票销售方长度不能超过32位")
    @column(name = "saller")
    private string saller;

    /**
     * 发票编号
     */
    @length(max = 32,message = "发票编号长度不能超过32位")
    private string billno;
    /**
     * 开票日期
     */
    private date billdate;
    /**
     * 票面金额
     */
    @digits(integer = 8,fraction = 2,message = "票面金额整数上限为8位,小数点上限为2位")
    private bigdecimal billsum;
    /**
     * 复印件路径
     */
    @length(max = 100,message = "复印件路径长度不能超过100位")
    private string picpath;
    /**
     * 文件扩展名称
     */
    @length(max = 10,message = "文件扩展名称长度不能超过100位")
    private string picfileext;
    /**
     * 创建人
     */
    @length(max = 32,message = "创建人id长度不能超过32位")
    private string createid;
    /**
     * 创建时间
     */
    private date createdate;
    /**
     * 修改人
     */
    @length(max = 32,message = "修改人id长度不能超过32位")
    private string modifyid;
    /**
     * 修改时间
     */
    private date modifydate;
    /**
     * 从表集合
     */
    @transient
    @valid
    private list<detailcjymodel> list;
}

参数样式:

{
  "birsid":"",
  "termname":"实训",
  "buyer":"学生",
  "saller":"学校",
  "billno":"20210722",
  "billsum":"900.00",
  "createid":"cjy",
  "list":[
            {
            "rsid":"",
            "itemname":"语文",
            "itemspec":"私人",
            "itemunit":"元",
            "qty":"10.00",
            "price":"30.00",
            "subsum":"300.00",
            "taxpercent":"0.1",
            "taxatm":"30.0"
            },
{
            "rsid":"",
            "itemname":"数学",
            "itemspec":"集体",
            "itemunit":"元",
            "qty":"20.00",
            "price":"30.00",
            "subsum":"600.00",
            "taxpercent":"0.1",
            "taxatm":"60.0"
            }
 ]
}

控制层代码:

 @requestmapping("/insertfunsdetailtwo")
    @responsebody
    public resultmap insertfunsdetailtwo(string datastr,@requestparam (value = "file",required = false) multipartfile file){
        jsonobject datastrmap = jsonobject.parseobject(datastr);
        funscjymodel funscjymodel = new funscjymodel();
        funscjymodel.settermname((string)datastrmap.get("termname"));
        funscjymodel.setbuyer((string)datastrmap.get("buyer"));
        funscjymodel.setsaller((string)datastrmap.get("saller"));
        funscjymodel.setbillno((string)datastrmap.get("billno"));
        funscjymodel.setbillsum(funsmodelcjyserviceimpl.stringbigedecimal((string)datastrmap.get("billsum")));
        funscjymodel.setcreateid((string)datastrmap.get("createid"));
        string list1 = json.tojsonstring(datastrmap.get("list"));
        list<detailcjymodel> list = jsonarray.parsearray(list1,detailcjymodel.class);
        funscjymodel.setlist(list);
        return funsmodelcjyservice.insertfunsanddetail(funscjymodel,file);
    }

这样的话可以用postman的form-data传文件和集合对象的参数

补充:postman测试接口传递对象参数

url:

使用的是post方式请求

在headers设置:

在body写入对象信息,主要红线的地方

到此这篇关于postman传递对象参数(包含有集合对象)的文章就介绍到这了,更多相关postman传递对象参数内容请搜索萬仟网以前的文章或继续浏览下面的相关文章希望大家以后多多支持萬仟网!

(0)
打赏 微信扫一扫 微信扫一扫

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2022  萬仟网 保留所有权利. 粤ICP备17035492号-1
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com