我用的是EJB、JPA框架,类似如下的代码,查询返回的是List<Object>数据,我怎么取出里面的name数据?
Query q = entityManager.createQuery("SELECT a.name b.name FROM a, b where a.id = b.id");
List<Object> results = (List<Object>) q.getResultList();
不胜感激!
Query q = entityManager.createQuery("SELECT a.name b.name FROM a, b where a.id = b.id");
List<Object> results = (List<Object>) q.getResultList();
不胜感激!
as XX 加上
既然是List 你还取不到值吗?
这里要注意 list里面是数组 使用的时候要 使用list.get(0)[0]引用里面的对象
比如你sql关联查询一个 对象和一个字典对象
这样 对象被取出来,字典对象也被取出来 这两个和成一个数组对象被放到list的一个item里面
页面使用 无论那种框架
使用标签循环
<c:forEach var="asset" items="${requestScope.assetLandList}">
asset[0].landName
或者才Service层将list重新拆装
1、多表查询 返回的结果是一个list,使用list.get(0)[0]会导致编译不过,应该怎么转换?
2、SELECT a.name as aname, b.name as bname FROM a, b where a.id = b.id,据我的了解,aname和bname是作为列的别名,不能取得列数据吧?如果可以,aname和bname要定义成什么类型的变量?
看完了 在看我们说的
List results = q.getResultList();则其lst值类型为Vector<E>,其elementData属性值为Object[],问题在于怎么取出Object里面的整形、字符串等数据
Object[] masc = (Object[])lst.get(0);
现在masc[0]为Object对象,他现在是个整形数据,我怎么取出这个值,用下面的语句会编译不过
int maid = (int)masc[0];
多谢了!