为什么我在使用DWR+AJAX的时候,我想在数据库里查数据,Hibernate的hql语句执行不了?
下面是我在dwr.xml文件中配置要执行的类里的方法,其中用到了PersonManage类
public boolean checkName(String userName){
PersonManage personManage = new PersonManage();
System.out.println("执行1");
System.out.println(userName);
boolean flag = personManage.isUserExist(userName);
System.out.println("执行3");
if(flag){
return true;
}else{
return false;
}
}
PersonManage类中的查询数据库方法
问题也就出现在这,这里的userList = this.getHibernateTemplate().find(hql);不执行
public boolean isUserExist(String userName){
boolean flag = true;
String hql = "from User as user where user.userName =" +userName;
System.out.println("执行2");
System.out.println(userName);
try{
List<User> userList = new ArrayList<User>();
System.out.println("ul1大小" +userList.size());
userList = this.getHibernateTemplate().find(hql);
System.out.println("ul2大小" +userList.size());
if(userList.size() > 0){
flag = false;
}
}catch(RuntimeException re){
throw re;
}
return flag;
}
下面是dwr.xml中的配置
<allow>
<convert converter="bean" match="com.xhr.beans.User"/>
<convert converter="bean" match="com.xhr.dao.PersonManage" />
<create javascript="StuRegist" creator="new">
<param name="class" value="com.xhr.actions.RegistAction"/>
<include method="checkName"/>
</create>
<convert converter="bean" match="java.lang.StackTraceElement" />
<convert converter="exception" match="java.lang.Exception"/>
</allow>