java 求大神 帮忙写下如何将map或者list转换成javabean

Mapmap=newHashMap();List<map>ls=newArrayList<map>();map.put("a",6);map.put("b","字符串")... Mapmap = new HashMap(); List<map> ls = new ArrayList<map>(); map.put("a", 6); map.put("b", "字符串"); map.put("c", 1.02); ls.add(map);如何将ls或者map转换成javabean private int a; private String b; private double c; public int getA() { return a; } public void setA(int a) { this.a = a; }...目的:不想方法与方法直接传参形式获取map中的值,不知道通过将map或ls转换成javabean是否可行</map</map
求大神帮忙写下 谢谢了
展开
 我来答
春山昳0gF
2015-05-14 · TA获得超过626个赞
知道小有建树答主
回答量:1258
采纳率:71%
帮助的人:242万
展开全部
写的太乱,bean转map我这有方法。map转bean要看你具体需求了。
更多追问追答
追问
不要bean到map额
乱?总共才几句话哎
什么具体需求,提问的那个是最基本的了 完成那个 就可以看具体需求操作了额
追答

提问没排版。看起来眼花缭乱。建议你举个列子,这样通俗易懂。自己随便借鉴下吧。

Book model=new Book();
Map<String,Object> map=new HashMap<String,Object>();
map.put("name", "张三");
Field[] field = model.getClass().getDeclaredFields(); // 获取实体类的所有属性,返回Field数组
    try {
        for (int j = 0; j < field.length; j++) { // 遍历所有属性
            String name1 = field[j].getName(); // 获取属性的名字
            String name = name1.substring(0, 1).toUpperCase() + name1.substring(1); // 将属性的首字符大写,方便构造get,set方法
            String type = field[j].getGenericType().toString(); // 获取属性的类型
            if (type.equals("class java.lang.String")) { // 如果type是类类型,则前面包含"class ",后面跟类名
                   Method m = model.getClass().getMethod("set"+name,String.class);
                    if (map.containsKey(name1)) {
                      m.invoke(model, map.get(name1));
}
                   
            }
        }
        System.err.println(model.getName());
    } catch (Exception e) {
        e.printStackTrace();
    }
qwwqqwwqyear
2015-05-14 · TA获得超过228个赞
知道小有建树答主
回答量:161
采纳率:94%
帮助的人:78.3万
展开全部
用反射, javabean提供set get方法,获取map中的key,然后反射调用javabean中的set赋值 就可以了
追问
可以帮忙写下?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式