今天由于业务需要,看一段数据库中的表转化成用户可以看懂的数据,也就是把一些字段比如Date用ms存的,转化为'yyyy-MM-dd'这种格式,但是由于字段太多,所以利用Java反射机制自带的BeanUtils...相关的方法来进行转化(要求两个类的属性名称相同),当然这个方法只支持基本数据类型,如Long,Integer,String,Short之类的转化,但是像Date类型就需要自己手动判断来转,这就出现了今天所遇到的坑...先看下反射机制是如何获取类的方法的:
Class clazz = object.getClass(); clazz.getDeclaredFields(); clazz.getFields()...,注意:这个方法返回的是一个List也就是抽象列表,所以要将其再用ArrayList初始化一次得到的列表才可变,否则得到的是一个不可变的列表.
...然后我们再利用列表的toArray()方法将列表转为数组,注意:这里又有一个坑,这个方法提供了两种实现:
Object[] toArray(); T[] toArray(T[] a);