高分求教求懂得java反射机制的大神指点~
[size=18px]我用的hibernate读出来的list<Object[]>,我想转成List<Map>
想用Field反射获取Object的标示名称啊 给map用
我知道思路但是不知道怎么实现
郁闷[/size]
------解决方案--------------------
定大神出来
------解决方案--------------------顶大神出来
------解决方案--------------------http://blog.csdn.net/snihcel/article/details/7270502
看看这个
------解决方案--------------------参照我这里最简单的列子自己写就行了:http://blog.csdn.net/withiter/article/details/8859399
------解决方案--------------------忘了 坐等大神复习
------解决方案--------------------hibernate返回的这个List<Object[]>这个object[]里面的元素并不一定就都是实体类的对象,如果楼主的sql查询的不是一个实体类的对象,而是得到一些字段的集合的话这个object[]里面装的就有可能是那些查询出来的字段的数组.这样的话就会变成[int,String,boolean,...]等等数据数组.
如果楼主确实查询的是一个实体类对象的话也不要用什么反射了,直接用commons-beanUtils工具类
public List<Map> reflectObjToMap(List<Object[]> list){
List<Map> list=new ArrayList<Map>();
for(Object[] object:list){
for(Object obj:object){
Map map=BeanUtils.describe(obj);
list.add(map);
}
}
return list;
}
------解决方案--------------------
楼上说了,你可以将obj打印出来看看
------解决方案--------------------
参照我这里最简单的列子自己写就行了:http://blog.csdn.net/withiter/article/details/8859399
大神?求指点代码。。。
只需要打开Eclipes然后就复制进去运行就可以了。很简单的。
另外就我个人经验,实