首页 > 代码库 > jdbcTemplate.queryForList获取的List转实体 -----解决方案

jdbcTemplate.queryForList获取的List转实体 -----解决方案

因为在开发过程中总是遇到这种List转实体的问题,我记得之前用Hibernate的时候这个问题应该是很少遇到的,因为可以直接赋值给实体,但是我现在用的是jdbcTemplate所以在执行queryForList的时候总是遇到这样或者那样的问题,而且写一遍忘记一遍,所以今天就把他记录下来方便后续学习。

因为是初学者有很多地方表述的不正确,所以有看到博文的勿喷,提出意见我会进行修改,谢谢。


下面是JAVA后台代码,调用queryForList方法

返回值为List,泛型为?号代替

String sql = "SELECT T.FUN_ID,T.FUN_CD,T.FUN_NM FROM T_SM_FUNCTIONS T WHERE T.PAR_FUN_ID=‘0‘ AND T.FUN_TYPE=‘0‘";

List<?> list = this.queryForList(sql);

return list;


在service层进行实体赋值,我用到的方法是Iterator遍历赋值

代码如下:

List<?> list = this.roleDao.funcRolePblc(); //执行后台代码,返回List

Iterator it = list.iterator(); //这里需要注意的是要用list的iterator遍历

if(list.size()>0){

    while(it.hasNext()){
    
        TRolFun rolf = new TRolFun(); //创建实体
        
        Map<?, ?> rece = (Map<?, ?>) it.next(); //这里要注意,it.next()得到这一条数据
        
        rolf.setFuncd((String) rece.get("FUN_CD")); //实体赋值
	rolf.setFunid(rece.get("FUN_ID").toString());
	rolf.setFunnm((String) rece.get("FUN_NM"));
    }
}

如此赋值完成,可以通过rolf.getFuncd的方法看到所赋的值

本文出自 “yipaixiaoyayin” 博客,请务必保留此出处http://yipaixiaoyayin.blog.51cto.com/8812323/1910080

jdbcTemplate.queryForList获取的List转实体 -----解决方案