public User findAll1(String name,String pass) {
log.debug("finding all User instances");
try {
String queryString = "from User user where user.name = ? and user.pass = ? ";
Query queryObject = getSession().createQuery(queryString);
queryObject.setString(0, name);
queryObject.setString(1, pass);
return (User) queryObject.list();??????????????
} catch (RuntimeException re) {
log.error("find all failed", re);
throw re;
}
}
根据hibernate自动生成的类,我用写了一个方法,但是经过测试类型转换错误,应该就是问号那儿?,但本人不知道怎么解决....请高手指点一下,谢谢
log.debug("finding all User instances");
try {
String queryString = "from User user where user.name = ? and user.pass = ? ";
Query queryObject = getSession().createQuery(queryString);
queryObject.setString(0, name);
queryObject.setString(1, pass);
return (User) queryObject.list();??????????????
} catch (RuntimeException re) {
log.error("find all failed", re);
throw re;
}
}
根据hibernate自动生成的类,我用写了一个方法,但是经过测试类型转换错误,应该就是问号那儿?,但本人不知道怎么解决....请高手指点一下,谢谢
如果确定查询结果唯一的话就这样写吧
list返回的是一个List
User user = (list.size()>0)? ((User) list.get(0)):null;
try{
list = queryObject.list();
}catch (Exception e){
list = null;
}
return list == null?null:list.get(0);
public User findAll1(String name,String pass);在此菜鸟谢谢大家
list.size()>0)? ((User) list.get(0)):null
你跟踪一下吧
List list = queryObject.list();
User user = (list.size()>0)? ((User) list.get(0)):null;
要么,修改方法的返回类型为List
List list = queryObject.list();
return list;
另一个错误是有可能的,你应该判断下list是否为空 这个是有可能的错误 并不一定 希望能帮到你~
User user = (list.size()>0)? ((User) list.get(0)):new User();