jsp连接jdbc 实例注释

例子:判断登陆

Connection conn=null;建立一个java到数据库的连接
     PreparedStatement stmt =null;//建立一个预处理语句对象
     ResultSet rs =null;//建立结果集用来存放执行语句后的结果
     int flag=0;
       String sql = "select * from ts_users where userid=?";//执行sql语句,参数用"?"代替。
     try{
       conn =DBConn.getConn();//已经提前在DBConn建里静态方法进行封装
       stmt =conn.prepareStatement(sql); //连接对象sql语句
       stmt.setString(1, userid);//把参数传递进刚才的sql语句
       rs = stmt.executeQuery();//执行sql语句返回到一个结果集
       if(rs.next()){//如果存在该用户名则继续,否则不存在此用户
        sql="select * from ts_users where userid=? and userpwd=?";//编写sql语句参数为用户名和密码 ,返回一个集
        stmt =conn.prepareStatement(sql);//对该sql语句预处理,传递用户名和密码两个参数值
        stmt.setString(1, userid);
        stmt.setString(2, userpwd);
        rs = stmt.executeQuery();
         if(rs.next()){//如果存在该用户,切密码正确,则登陆成功
          qx=rs.getInt("qx");
          nickname=rs.getString("nickname");
          flag=3;//登陆成功
         }
         else{
          flag=2;//密码错误
         }
       }else{
         flag=1;//不存在此用户
       }
     }catch(Exception e){
      e.printStackTrace();  
     }finally{
       try{
         if(rs!=null)
           rs.close();
         if(stmt!=null)
           stmt.close();
         if(conn!=null)
           conn.close();
       }catch(Exception ee){
        ee.printStackTrace();  
       }
     }

例子:获得用户信息

 Connection conn=null;//
     PreparedStatement stmt =null;
     ResultSet rs =null;
     String sql ="select A.userid,A.nickname,A.mark,B.stepname,A.status,A.userpwd," +
             "A.qx,A.username " +
                "from ts_users A join know_step B on  A.status=B.step where userid=?";
        boolean result=false;
       
        try{
        conn=DBConn.getConn();
        stmt= conn.prepareStatement(sql);
        stmt.setString(1,user_id);      
        rs = stmt.executeQuery();      //执行sql语句 返回的结果 放入到结果集中
              
         if (rs.next()){//如果存在返回的结果集
       userid=rs.getString(1);//结果集的第一列赋值给userid,是string型
          nickname=rs.getString(2);
          mark=rs.getInt(3);
          stepname=rs.getString(4);
          status=rs.getInt(5);
          userpwd=rs.getString(6);
          qx=rs.getInt(7);
          username=rs.getString(8);
          if(username==null){
           username="<font color=red>未填写</font>";
          }
         if(nickname==null){
          nickname="<font color=red>未填写</font>";
         }

         result=true;
         }
       
       }
        catch(Exception e){
        e.printStackTrace();
       }
       finally{
             try{
               if(rs!=null)
                 rs.close();
               if(stmt!=null)
                 stmt.close();
               if(conn!=null)
                 conn.close();
             }catch(Exception e){
              e.printStackTrace();
             }
           }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值