首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

有关问题:怎么从hibernate查询时返回List类型结果中取值

2012-11-04 
问题:如何从hibernate查询时返回List类型结果中取值  问题描述:希望从数据库中查询一条数据并获取各字段值

问题:如何从hibernate查询时返回List类型结果中取值

  问题描述:希望从数据库中查询一条数据并获取各字段值。但是hibernate自动生成的代码UserDAO.java文件中查询后返回的是一个List类型,我怎么也取不出这里面的字段值。

  使用Eclipse导入hibernate并生成的UserDAO.java文件部分代码如下:

  

??? public List findByProperty(String propertyName, Object value) {
????? log.debug("finding Users instance with property: " + propertyName
??????????? + ", value: " + value);
????? try {
???????? String queryString = "from Users as model where model."
???????? ??????+ propertyName + "= ?";
???????? Query queryObject = getSession().createQuery(queryString);
?? queryObject.setParameter(0, value);
?? return queryObject.list();
????? } catch (RuntimeException re) {
???????? log.error("find by property name failed", re);
???????? throw re;
????? }
?}

?public List findByUsername(Object username) {
??return findByProperty(USERNAME, username);
?}

然后在测试时的代码如下:

??UsersDAO user = new UsersDAO();
??List li = user.findByUsername("txldat");
??Iterator it = li.iterator();
??while(it.hasNext()){
???System.out.println(it.next());
??}

但是打印结果却显示为:cn.edu.whu.xsjz.txl.vo.Users@18041e0

请问是什么原因啊,我应该怎么做才能够取出像id,name等字段的值呢?

for(int i=0;i<li.size();i++){ User user = (User)li.get(i); System.out.println("id "+user.getId()); System.out.println("name "+user.getName());}
User是你的映射对象类.

热点排行