MySQL查询使用Public String方法返回字符串

时间:2014-11-14 10:08:55

标签: java mysql

我有以下代码,它查询MySQL数据库以检查用户是否是管理员。

public String admin () 
{
   String username = loginUserTF.getText();
   String password = loginPassPF.getText();
   String query = "SELECT * FROM userinfo where username=? and password=?";

   try {
       connect.pst = connect.con.prepareStatement(query);
       connect.pst.setString(1, username);
       connect.pst.setString(2, password);
       connect.rs = connect.pst.executeQuery();
       String admin = connect.rs.getString("Administrator");
       return admin;
   } catch(Exception e){}
}

我知道return语句必须在try和catch块之外,但是我无法返回String admin。有什么方法可以解决这个问题?

1 个答案:

答案 0 :(得分:1)

只需将结果存储在变量中,然后在try块后返回。

   public String admin ()
   {
       String result=null;
       String username = loginUserTF.getText();
       String password = loginPassPF.getText();
       String query = "SELECT * FROM userinfo where username=? and password=?";
       try{
           connect.pst=connect.con.prepareStatement(query);
           connect.pst.setString(1, username);
           connect.pst.setString(2, password);
           connect.rs = connect.pst.executeQuery();
           if (rs.next())
               result = connect.rs.getString("Administrator");
       }
       catch(Exception e){
       }

       return result;
   }

我还建议你不要把你的捕获条款留空。你应该处理你捕获的任何例外。