import bookshop.util.*;
import java.sql.Connection;
import java.sql.Statement;public class login {
    private String username;
    private String passwd;
    private boolean isadmin;
    private long userid=0;
    
    public login() throws Exception{
                super();
                username = "";
                passwd = "";
                isadmin = false;
        }
        public String getUsername() {
                return username;
        }
        public void setUsername(String newusername) {
                username = newusername;
        }
        public String getPasswd() {
                return passwd;
        }
        public void setPasswd(String newpasswd) {
                passwd = newpasswd;
        }
        public boolean getIsadmin() {
                return isadmin;
        }
        public void setIsadmin(boolean newIsadmin) {
                isadmin = newIsadmin;
        }
        public long getUserid() {
                return userid;
        }
        public void setUserid (long uid) {
                userid = uid;
        }
       
        public String getSql() {
                if (isadmin) {
                        sqlStr = "select * from BookAdmin where adminuser = '" +
                            dataFormat.toSql(username) + "' and adminpass = '" +
                            dataFormat.toSql(passwd) + "'";
                }else {
                        sqlStr = "select * from shop_user where username = '" +
                            username + "' and password = '" + passwd + "'";
                }
                return sqlStr;
        }
       
        public boolean excute() throws Exception 
{
      
                boolean flag = false;
                DataBase db = new DataBase();
        
                Connection conn=db.connect();
                Statement stmt = conn.createStatement();
                rs = stmt.executeQuery(getSql());
                if (rs.next()){
                        if (!isadmin)
                        {
                                userid = rs.getLong("id");
                        }
                        flag = true;
                }
                rs.close();
                return flag;

        }
}
为啥在sql和rs那提醒cannot find symbol

解决方案 »

  1.   

      Statement stmt = conn.createStatement();
      rs = stmt.executeQuery(getSql());
    //conn.createStatement();
     这里没有接受所要操作的语句啊
      

  2.   

    没看出什么问题,把sql打出来,或者把异常贴出来看看,还有报异常你的资源没有回收
      

  3.   

    public class DataBase {
      public Connection conn;
      public Statement stmt;
      public ResultSet rs=null;
      public String sqlStr="";
      
      public Connection connect(){
          try{
            Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
            String url ="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=bookshop";
            conn=DriverManager.getConnection(url,"sa","");
            stmt = conn.createStatement ();
           }catch(Exception ee){
            System.out.println("connect db error:"+ee.getMessage());
           }
          return conn;
        }
     }
    只是sql