public List getByBlur(Student student){
Session session = sessionfac.getSession();
StringBuffer sb = new StringBuffer();
sb.append("from Student s where ");
 当ID不为空时按ID精确查询
if (!("".equals(student.getId()))) {
sb.append("s.id = '" + student.getId() + "'");

当ID为空时,判断姓名是否为空,如果是,责进行查询
else if ( !(
    "".equals(student.getName()) 
)){
if(!("".equals(student.getName()))){
sb.append("s.name like '%" +student.getName() + "%' and ");
}
            sb.delete(sb.length() - 4, sb.length());
}
else if ( (
    "".equals(student.getName()) 
)){
return null;
}
Query query = session.createQuery(sb.toString());
List list =query.list();
return list;
}
Action 中 execute:
       Student stu = new Student();
stu.setId(this.getSearchId());
stu.setName(this.getSeachName());
System.out.println(this.getSearchId());
List mylist = (List)studentDao.getByBlur(stu);
this.setMyList(mylist);
为什么我按照id查询 可以出结果,但是我按Name查询时,它把我的ID置0了!!(jsp页面上面显示为0)什么也查不到。