订单类

public class Order{private String sn;
/** 订单项 */
private List<OrderItem> orderItems = new ArrayList<OrderItem>();...get set方法...
}

订单项类

public class OrderItem{/** 商品编号 */
private String sn;/** 商品名称 */
private String name;...get set方法...
}

在利用BeanUtils.getProperty取得数据时

Order order = getOrder();String[] properties = {"sn","orderItems[0].name""}for (int i = 0; i < properties.length; i++) {System.out.println(BeanUtils.getProperty(Order,properties[i]););}

取得集合orderItems的相关数据时,利用BeanUtils.getProperty(Object bean, String name) 方法,必须有集合的索引(orderItems[0]),如果想把orderItems全部数据输出,BeanUtils.getProperty做不到;

orderItems为空是,还会报空指针异常,我想到了下面这种比较笨的方法:

Order order = getOrder();String[] properties = {"sn","orderItems"}for (int i = 0; i < properties.length; i++) {System.out.println(BeanUtils.getProperty(Order,properties[i]););StringBuilder stringBuilder = new StringBuilder();if(properties[i].equals("orderItems")){ // 属性为订单项集合时
StringBuilder stringBuilder = new StringBuilder();List<OrderItem> orderItemList = order.getOrderItems();for(OrderItem orderItem:orderItemList){stringBuilder = stringBuilder.append(orderItem.name() );stringBuilder = stringBuilder.append(" | ");}}}


转载于:https://www.cnblogs.com/runyu/p/4958230.html

BeanUtils.getProperty取得集合全部数据相关推荐

  1. 使用Properties集合存储数据,遍历取出Properties集合中的数据

    package com.learn.demo07.Prop;import java.io.FileOutputStream; import java.io.FileReader; import jav ...

  2. java集合输入存储_Java练习IO流使用Properties集合存储数据并...

    案例: package IO; import java.io.FileWriter; import java.io.IOException; import java.util.Properties; ...

  3. java对象复制到另一个对象中_spring: beanutils.copyproperties将一个对象的数据塞入到另一个对象中(合并对象)...

    spring: beanutils.copyproperties将一个对象的数据塞入到另一个对象中(合并对象) 它的出现原因: BeanUtils提供对Java反射和自省API的包装.其主要目的是利用 ...

  4. HashSet集合存储数据的结构(哈希表)

    HashSet集合存储数据的结构(哈希表) 什么是哈希表呢? 在JDK1.8之前,哈希表底层采用数组+链表实现,即使用链表处理冲突,同一hash值的链表都存储在一个链表里.但是当位于一个桶中的元素较多 ...

  5. 解决 WPF 绑定集合后数据变动界面却不更新的问题(使用 ObservableCollection)

    解决 WPF 绑定集合后数据变动界面却不更新的问题 独立观察员 2020 年 9 月 9 日 在 .NET Core 3.1 的 WPF 程序中打算用 ListBox 绑定显示一个集合(满足需求即可, ...

  6. 解决 WPF 绑定集合后数据变动界面却不更新的问题

    解决 WPF 绑定集合后数据变动界面却不更新的问题 独立观察员 2020 年 9 月 9 日 在 .NET Core 3.1 的 WPF 程序中打算用 ListBox 绑定显示一个集合(满足需求即可, ...

  7. mongodb数据合并设计_MongoDB:将来自多个集合的数据合并成一个

    我如何(在MongoDB)将来自多个集合的数据合并到一个集合? 我可以使用map-reduce,如果是这样,怎么样? 我会非常感谢一些例子,因为我是一个新手. 虽然你不能做这个实时,你可以运行map- ...

  8. C#--集合添加数据(ArrayList and list)

    集合方法ArrayList:需要引用using system.collections; static void Main(string[] args){// 添加内容int[] nums = new ...

  9. 微信小程序云数据库获取集合所有数据

    取集合所有数据 小程序端与云函数端的表现会有如下差异: 小程序端:如果没有指定 limit,则默认且最多取 20 条记录. 云函数端:如果没有指定 limit,则默认且最多取 100 条记录. 获取集 ...

最新文章

  1. 为什么建议少用 if 语句
  2. 每天学一点flash (20) flash cs3.0 外部加载图片
  3. java if else嵌套,减少的 if else 嵌套 可以使用java 8的Consumer
  4. php5模块怎么下载,centos源码编译php5 mcrypt模块步骤详解
  5. Spark 【数据挖掘平台介绍】 - Spark 1.1.0(看范式粒度)
  6. php管道的概念,管道线的概念定义及分析技巧的讲解
  7. 用js实现一个无限循环的动画
  8. MySQL只读实例简介
  9. Ceylon 1.0.0
  10. MYSQL添加新用户 MYSQL为用户创建数据库 MYSQL为新用户分配权限(转)
  11. 鼠标移上去变小手样式
  12. 服务器 支持sata硬盘,服务器SAS硬盘背板能插SATA硬盘吗?
  13. 【疑难杂症】三步解决虚拟机启动失败,提示无法获取VMCI驱动程序的版本的问题
  14. 企业债和公司债的四点区别
  15. Kubeedge实现原理
  16. 在c51语言的循环语句中 用作循环结束,在C51语言的循环语句中,用作循环结束条件判断的表达式为()...
  17. 大学生怎么入门Android,从一个大学生的角度打开K30PRO,以及对手机圈子的一些看法...
  18. django快速集成富文本编辑器wangeditor
  19. 巡检水中机器人_一种水下管道巡检机器人及巡检方法与流程
  20. 关于升级高德地图导航9.5.0的问题 ‘com.amap.api:navi-3dmap:9.5.0_3dmap9.5.0‘

热门文章

  1. 《Accelerated C++中文版》--- 读书笔记
  2. CVPR 2022 论文/代码分类汇总!持续更新中!
  3. 小米3Android密码怎么解吗,小米路由器3管理密码忘记了怎么办?
  4. mysql groupby rullup_关于group by的深入理解(扩展到rollup,增强groupby,主要用于小计)
  5. mysql查一个表3到5行的数据类型_MySQL入门(三) 数据库表的查询操作【重要】
  6. 你觉得python很难嘛?那只是你没有理解而已
  7. 实例说明代码段(.text)、数据段(.data)、bss段、只读数据段(.rodata)、堆栈的划分依据
  8. 理解Hinton的Capsule Networks1
  9. html转为纯文本并且保留换行,使用jsoup将html转换为纯文本时,如何保留换行符?...
  10. centos 安装mysql_Centos 下mysql数据库完整安装过程