精华内容
下载资源
问答
  • 2020-06-29 17:40:01

    需求

    将一个查询到的集合对象的结果集收集放在另外一个集合对象中去

    //查询到的集合对象
    List<IwmInfluenceWorkEntity> influences = iwmInfluenceWorkService.queryAll(params);
    //封装过后的集合对象
    List<InfluenceTypeDto> collect = influences.stream().map(a -> new InfluenceTypeDto(a.getWorkType(),
                    a.getLicense(), null)).collect(Collectors.toList());
    //遍历输出封装过后的集合对象
            collect.forEach(e -> {
                System.out.println("作业编号" + e.getLicenseCount() + "作业类型" + e.getWorkType());
            });
    
    更多相关内容
  • 可以考虑将参数对象写成json字符串的样式,然后将将字符串转换成json对象 实体类: import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import org.apache.ibatis....

    项目场景:

    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传文件和集合对象的参数
    在这里插入图片描述

    展开全文
  • java判断集合对象是否为空

    千次阅读 2021-03-14 13:57:05
    Java 集合类中的 List.isEmpty() 方法用于判断集合对象是否为空,如果为空,则返回 true,否则返回 false。语法:isEmpty()应用:本示例使用 List 接口的实现类 ArrayList 初始化一个列表对象 list,并向该列表中...

    9921d05165e350782b460fc060b18fe2.png

    Java 集合类中的 List.isEmpty() 方法用于判断集合对象是否为空,如果为空,则返回 true,否则返回 false。

    语法:isEmpty()

    应用:

    本示例使用 List 接口的实现类 ArrayList 初始化一个列表对象 list,并向该列表中添加 4 个元素,然后调用 isEmpty 方法判断 list 对象是否为空,并输出判断结果,再执行 clear 方法从列表中移除所有元素,最后再次执行 isEmpty 方法判断 list 对象是否为空,并输出判断结果。

    代码如下:public static void main(String[] args){

    Listlist = new ArrayList();

    list.add("保护环境"); //向列表中添加数据

    list.add("从我做起"); //向列表中添加数据

    list.add("爱护地球"); //向列表中添加数据

    list.add("从我做起"); //向列表中添加数据

    boolean empty = list.isEmpty();

    if(empty){

    System.out.println("该列表为空");

    }else{

    System.out.println("该列表不为空");

    }

    list.clear(); //从列表中移除所有元素

    System.out.println("执行clear方法后");

    empty = list.isEmpty();

    if(empty){

    System.out.println("该列表为空");

    }else{

    System.out.println("该列表不为空");

    }

    }

    运行结果如下:该列表不为空

    执行clear方法后

    该列表为空

    展开全文
  • 多线程安全集合对象

    千次阅读 2021-11-30 17:08:13
    从.Net 4.0框架开始,在System.Collections.Concurrent命名空间下,增加了用于多线程协同的并发集合类(线程安全集合)。 ConcurrentDictionary<TKey,TValue> 提供可供多线程同时访问的键值对的线程安全集合...

    从.Net 4.0框架开始,在System.Collections.Concurrent命名空间下,增加了用于多线程协同的并发集合类(线程安全集合)。

    一、相关的类

    类名说明
    BlockingCollection为实现 IProducerConsumerCollection 的线程安全集合提供阻塞和限制功能。
    ConcurrentBag表示对象的线程安全的无序集合。
    ConcurrentDictionary<TKey,TValue>表示可由多个线程同时访问的键/值对的线程安全集合。
    ConcurrentQueue表示线程安全的先进先出 (FIFO) 集合。
    ConcurrentStack表示线程安全的后进先出 (LIFO) 集合。
    OrderablePartitioner表示将可排序数据源拆分为多个分区的特定方式。
    Partitioner提供针对数组、列表和可枚举项的常见分区策略。
    Partitioner表示将数据源拆分为多个分区的特定方式。

    介绍3个常用的类ConcurrentDictionary,ConcurrentQueue,ConcurrentBag

    ConcurrentDictionary<TKey,TValue>


    提供可供多线程同时访问的键值对的线程安全集合,对应Dictionary<TKey, TValue>。

    IsEmpty:判断字典是否为空。

    AddOrUpdate:将键值对添加到字典中,如果Key值已经存在,则更新Value值。

    Clear:将所有键值对从字典中移除。

    GetOrAdd:如果键不存在,则将键值对添加到字典中并返回Value值,如果键已经存在,则返回现有值,不会更新现有值。

    TryUpdate:尝试更新键对应的Value值。

    ConcurrentQueue<T>


    队列,提供线程安全的先进先出(FIFO)集合,对应Queue<T>。

    Enqueue:将对象添加到队列末尾处。

    TryDequeue:尝试移除并返回位于队列开头处的对象。

    TryPeek:尝试返回队列开头处的对象但不将其移除。

    ConcurrentBag<T>


    提供可供多个线程同时安全访问的无序包。对应非泛型列表List<T>。

    包(Bag)和数据上的集(Set)的区别是包可包含重复元素,而集中不能包含重复元素。

    Count:获取无序包中的元素数量

    IsEmpty:判断无序包是否为空。

    TryPeek:从无序包中获取一个元素,但不进行移除。

    TryTask:从无序包获取一个元素并移除。

    参考文档:微软官方文档https://link.juejin.cn/?target=https%3A%2F%2Fdocs.microsoft.com%2Fzh-cn%2Fdotnet%2Fapi%2Fsystem.collections.concurrent%3Fview%3Dnet-5.0

    展开全文
  • 创建ArrayList集合对象并添加元素

    千次阅读 2021-02-12 21:34:55
    /** 为什么出现集合类:* 我们学习的是面向对象编程语言,而面向对象编程语言对事物的描述都是通过对象来体现的。* 为了方便对多个对象进行操作,我们就必须对这多个对象进行存储,而要想对多个对象进行存储,* 就不能...
  • 集合中的对象未清理造成内存泄露 这个比较好理解,如果一个对象放入到 ArrayList 、 HashMap 等集合中,这个集合就会持有该对象的引用。当我们不再需要这个对象时,也并没有将它从集合中移除,这样只要集合还在使用...
  • Java如何将集合对象转换为数组?

    千次阅读 2021-03-18 01:10:20
    要将基于集合对象转换为数组,可以使用toArray()或toArray(T[]a)方法,该方法由集合接口的实现提供,例如java.util.ArrayList.packageorg.nhooo.example.util;importjava.util.List;importjava.util.ArrayList;...
  • 前端vue给后端list集合对象传值

    千次阅读 2021-03-27 20:05:47
    今天编写项目时遇到一些问题,就是不知道前端怎么给后端的list赋值 因为前面做的都是单个查询 如下 ... import io.swagger.annotations.ApiModel; import io.swagger....@ApiModel(value = "数据查询对象", desc
  • JSONArray集合转list集合对象

    万次阅读 2019-04-12 17:01:00
    对象> JSONObject obj = PostInterface.post(PostInterface.ServletName.activitiModel,"queryPlaceHolderList",new HashMap()).getJSONObject("SvcCont"); List<Placeholder> dataArr...
  • 示例: 对cloudShopDataList中的cloudShopData按照dataTime进行升序排序 : 方法一 cloudShopDataList.sort(new Comparator<CloudShopData>() { @Override public int compare(CloudShopData o1, ...
  • 但最终要的结果是几个集合的所有数据! (三个接口来源数据并无关联关系,都是互相独立) 最终效果: 实际三个接口查询出来,使用list.addAll()进行拼接: 无法满足业务要求,如下才是满足业务要求: 下面...
  • 如何对list集合对象去重

    千次阅读 2019-01-27 22:21:59
    那么,当list集合中的元素为多个属性组成的对象时,如何对list集合进行去重; 因为对象是在内存中开辟一块区域进行存储,每个对象的值哪怕相同,但只要是你新new出来的,代表的也是不同的对象,所以我们首先需要在...
  • springboot+GRPC传输流式数据和集合对象概述项目结构和实现步骤demo实现接口文件部分服务端客户端运行结果 概述 整个demo是在上一篇springboot+GRPC传输简单数据的基础上添加的内容,如有什么不明白的地方可参考上一...
  • 集合对象数据展示到前端页面

    千次阅读 2018-06-10 21:56:51
    首先集合对象数据展示到前端容易被遗忘,这个问题还是记录下比较好。集合对象数据就是对象的集合数据通过迭代的方式分布到前端; @RequestMapping(value = "/item/itemlist.action") public String ...
  • 获取List集合对象中某一列属性值

    千次阅读 2020-11-09 22:24:59
    例:获取disposeList集合中CorpusMarkPage对象中的responseId属性,生成新的List集合 List responseIdList = disposeList.stream().map(CorpusMarkPage::getResponseId).collect(Collectors.toList());
  • if(list.stream() .filter(item->item.getUserId() .equals("123456")) .findAny() .isPresent()) { //存在则代码块执行业务逻辑代码 }
  • Stream流根据条件过滤集合对象

    千次阅读 2020-10-17 11:21:38
    有个需求,我要获取一个部门下所有的人员年龄在30...我们先定义一个部门人员集合DeptUser @Data public class DeptUser { //用户id private int userId; //年龄 private int age; //性别 private String sex
  • (Mybatis)对集合对象的映射

    千次阅读 2018-07-17 14:59:45
    -- collection指定对应的集合对象关系映射 property: 将数据放入User对象的ordersList属性中 ofType: 指定ordersList属性的泛型类型 --> select user.*,orders.id oid...
  • java 8 过滤集合对象为空数据

    千次阅读 2020-12-17 14:57:47
    list.stream().filter(Objects::nonNull).collect(Collectors.toList());
  • Spring注解注入集合对象

    万次阅读 2018-08-19 10:54:19
    当实例化一个BeanInterface之后,另外一个类采用泛型注入List,Spring竟然成功的将实例化的对象放入List之中。思路打开之后,针对Map的就更好说了。Spring会将service的名字作为key,对象作为value封装进入Map。 2. ...
  • Bundle传递集合对象

    千次阅读 2017-12-12 18:51:23
    1.将对象定义成 Parcelable 类型 class 类名 implements Parcelable{ } ...b.putParcelableArrayList("list",集合对象); 接收: ArrayList temp = b.getParcelableArrayList("list");
  • 获取list集合对象的某个属性值

    万次阅读 2019-03-18 09:19:53
    接口已经有了获取所有设备新的是【对象集合 本来是想让负责设备的人写接口的,可是人家不愿意,无奈只能自己在现有接口操作了 List&lt;HraDeviceDTO&gt; hraDeviceDTOS = hraFeign.getHraDeviceStatus...
  • one: for (int i = 0; i < A.size(); i++) { for (int j = 0; j < B.size(); j++) { if (A.get(i).getId().equals(B.get(j).getId())) { continue one; } } // A集合...
  • Java集合对象的深度复制与普通复制

    万次阅读 2015-10-30 21:27:21
    最近在开发中遇到了一些关于集合复制的一些问题,普通的集合复制只是将内存中栈的地址快拷贝一份,使得一个新的集合对象指向这个地址块,但是集合中的对象变量却是指向堆中的同一块区域。所以当拷贝的集合修改了集合...
  • //进行排序的实体对象 package com.compile; public class User {  String name;  String age;    public User(String name,String age){  this.name=name;  this.age=age;  }
  • 1.使用Gson类中的toJson()方法 Gson gson = new Gson(); String listToJsonString = gson.toJson(list); 2.使用JSONArray json=JSONArray.fromobject(list);在调用json.toString()方法转换成字符串 ...
  • List&lt;User&gt; userList = new ArrayList&lt;User&gt;(); List&lt;String&gt; userNameList = (List&...) CollectionUtils.collect(userList, new Transformer() { @Over...
  • List<TransferWarehouseO2ODetailDto> newTransfer = transferWarehouseO2ODetailDtoList.stream().filter(m -> !wlTransferWarehouseDList.stream().map(d ...哪个对象放前面就是取哪个对象的差集、交集反之把!去掉
  • 不必自己造轮子,这里有现成的轮子,请看代码 public static void main(String[] args){ List&lt;Integer&gt; list1 = new ArrayList&lt;Integer&gt;(); list1.add(1);... ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,651,173
精华内容 660,469
关键字:

集合对象