将rs1.getInt("id");放进try中,如aa=rs1.getInt("id");,
最后return aa;
最后return aa;
解决方案 »
- 关于spring的依赖注入问题
- 请问linux下如何配置apache+tomcat6
- 为什么JSP插入中文字MYSQL数据库失败了
- 奇怪问题,文件下载对话框不弹出来
- 招聘Java工程师、系统工程师和网页设计师(工作地点:北京 )
- 帮帮忙拉,头都大了,高分!!!
- 开发资料
- Tomcat6如何配置虚拟路径和数据源
- 我写了一个class 运行出错,谁能解决?
- 今天正式来到jsp版块,放分100希望和大家交个朋友
- !!!!!!!看看大家的分析能力,http://lib.nju.edu.cn/ucat/lib_eip.php是怎么实现的,用JAVA怎么去实现??
- jsp+javabean编程可能使用多线程技术吗?
public int checkUser(String e_name,String pw)throws Exception{
....
}
关键在于“throw Exception”,他把该函数体内所有捕捉到的异常不做任何处理直接抛出到外层!
你之所以需要这么做是因为:
ResultSet类的getInt()方法会抛出一个异常,你用到这个方法的时候,要不你就处理这个异常,要不就继续抛出!像我上面的代码就是把异常继续抛出!
你也可以在自己的函数里处理这个异常,改为如下代码:
public int checkUser(String e_name,String pw){
。。
//用下面的代码替换:return rs1.getInt("id");
int key=0;
try{
key=rs1.getInt("id");
}
catch(Exception ex){
System.out.println("读数据出错!");
}
return key;
}
try {
strQuery="select id,e_name,pw from DT_gsk WHERE e_name='"+e_name+"'";
rs1=db.query(strQuery);
if (!rs1.next())
return -1;//用户不存在
sss = rs1.getInt("id");
strPassword = rs1.getString("pw");
if (!strPassword.equals(md5.getMD5ofStr(pw)))
return -2;//密码不正确
} catch (Exception e) {
return 0;
}
return sss;