对于getHibernateTemplate().find(queryString); 返回值有些疑问
我在action中用了以下的代码Listarray=studentDao.findAll();Objecttest=(Object)array.get(0);System...
我在action中用了以下的代码
List array=studentDao.findAll();
Object test=(Object)array.get(0);
System.out.println(test);
打印的结果居然是com.yourcompany.struts.action.Student@1176e5f 与我数据库中的内容不符合啊。。。? 还希望能详细告知于我!
----------------------------------------------
findAll(){ //studentDao.findAl如下l
public List findAll() {
log.debug("finding all Student instances");
try {
String queryString = "from Student";
return getHibernateTemplate().find(queryString);
} catch (RuntimeException re) {
log.error("find all failed", re);
throw re;
}
}
} 展开
List array=studentDao.findAll();
Object test=(Object)array.get(0);
System.out.println(test);
打印的结果居然是com.yourcompany.struts.action.Student@1176e5f 与我数据库中的内容不符合啊。。。? 还希望能详细告知于我!
----------------------------------------------
findAll(){ //studentDao.findAl如下l
public List findAll() {
log.debug("finding all Student instances");
try {
String queryString = "from Student";
return getHibernateTemplate().find(queryString);
} catch (RuntimeException re) {
log.error("find all failed", re);
throw re;
}
}
} 展开
展开全部
System.out.println() 参数为对象时,会调用它的toString()方法
因为Object是所有类的父类,所以打印student对象会调用Object的toString()方法:
getClass().getName() + '@' + Integer.toHexString(hashCode())
所以打印结果为com.yourcompany.struts.action.Student@1176e5f
因为Object是所有类的父类,所以打印student对象会调用Object的toString()方法:
getClass().getName() + '@' + Integer.toHexString(hashCode())
所以打印结果为com.yourcompany.struts.action.Student@1176e5f
更多追问追答
追问
解决的办法呢?
追答
对象是不能直接打印的,你可以强行转换为Student然后调用里面的方法
Student stu = (Student)array.get(0);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询