请谁代我看一下子这段小程序哪里有错误 请把你的return strmsg 放在倒数第2个和第3个“}”之间,就没有问题了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你把return strMsg放在方法的最后面就可以了!因为不论是否有没有catch exception,你的方法都应该有个String的返回值。 不能只在try里返回值,因为如果出错,就得不到返回值了。 要保证在任何时候都有返回值才行,你这么做这是在正常的情况下会有,一旦抛了Exception,就没有返回值了。明白? 如此定义就可以了。String strMsg = null; 在method declaration 后声明String strMsg = null;然后在最后return strMsg 就可以了。package conn;import java.sql.*;public class DBcon{ //定义变量 Connection conn = null; // ResultSet rs = null; String strMsg; public String DBconn(String strSql,String username,String password) { ResultSet rs = null; String strMsg = null; //设定jdbc连接驱动程序 try { Class.forName("sun.jdbc.odbc.JdboOdbcDriver"); } catch(java.lang.ClassNotFoundException e) { e.printStackTrace(); //这里最好做相应的退出处理,否则下边还会有错误的。 } // try { //取得数据库的连接,其中要求ODBC数据源已经建好 conn = DriverManager.getConnection("jdbc:odbc:Uesr","",""); //声明Statemate 用来执行Sql 语句 Statement stmt = conn.createStatement(); //定义返回串! rs = stmt.executeQuery(strSql); if (rs.next()) { strMsg = username+",你已经成功登录!"; } else { strMsg = "登录失败,用户名和密码不一致,请重新登录!"; } //返回的结果数据值! } catch(SQLException ex) { ex.printStackTrace(); } return strMsg; }} 我把return strMsg; 放到你们说的位置,语法虽然没有错误了,但提示报错说我在 conn = DriverManager.getConnection("jdbc:odbc:Uesr","",""); 这里 少抛一个异常/ 怎么回事? 各位朋友帮忙! 直接在最后添加一段代码:..........finally{ return strMsg;}这样不论你的代码在哪发生异常,都会调用这句来返回strMsg的 还是不行! 提示同样的错误DBconn.java:16: unreported exception java.sql.SQLExcepticlared to be thrown conn = DriverManager.getConnection(ConnStr); ^ 简单一点,不要在一个class里面使用几个try …… catch(),一个try还不够你用?如果想要捕捉仔细一点,多catch几个不就得了?干嘛用两个try ……catch块?系统提示你少捕捉了一个异常,干脆用catch(Exception e)全部包括了得了 isInstance,isAssignableFrom两个方法的用法 输入网址,将该网页保存…… 不知道应该从哪儿下手? Java面向对象问题 ? 一段代码里为什么又用swing的类又用awt的类 servlet启动定时备份类的问题 好像是JApplet的布局管理问题。多多指教!! 我想println int的MAX_VALUE 为什么会出错? 还是synchronized问题。。 JSlider的一个问题 请问这个错误,怎么解决 如何让java application运行时不显示Dos窗口!象oracle,jb那样! 如何解决Tomcat4 与MS SQLServer 2000的连接问题?
String strMsg = null;
然后在最后return strMsg 就可以了。
package conn;
import java.sql.*;
public class DBcon
{
//定义变量
Connection conn = null;
// ResultSet rs = null;
String strMsg; public String DBconn(String strSql,String username,String password)
{
ResultSet rs = null;
String strMsg = null;
//设定jdbc连接驱动程序
try
{
Class.forName("sun.jdbc.odbc.JdboOdbcDriver");
}
catch(java.lang.ClassNotFoundException e)
{
e.printStackTrace();
//这里最好做相应的退出处理,否则下边还会有错误的。
}
//
try
{
//取得数据库的连接,其中要求ODBC数据源已经建好
conn = DriverManager.getConnection("jdbc:odbc:Uesr","","");
//声明Statemate 用来执行Sql 语句
Statement stmt = conn.createStatement();
//定义返回串!
rs = stmt.executeQuery(strSql);
if (rs.next())
{
strMsg = username+",你已经成功登录!";
}
else
{
strMsg = "登录失败,用户名和密码不一致,请重新登录!";
}
//返回的结果数据值!
}
catch(SQLException ex)
{
ex.printStackTrace();
}
return strMsg;
}}
..........
finally{
return strMsg;
}这样不论你的代码在哪发生异常,都会调用这句来返回strMsg的
clared to be thrown
conn = DriverManager.getConnection(ConnStr);
^
干嘛用两个try ……catch块?
系统提示你少捕捉了一个异常,干脆用catch(Exception e)全部包括了得了