好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

使用jdbc连接数据库

注册驱动 Class.forName("com.mysql.jdbc.Driver" );// com.mysql.jdbc.Driver mysql驱动
 
// 获取链接 con = DriverManager.getConnection("jdbc:mysql:///数据库名称", "账号", "密码");

3.不推荐使用Statement对象执行sql语句,有sql注入的风险。

 @Test
      public   void   test(){
        String sql  = "select * from t_user WHERE id ="+1 ;
          try   {
            Statement stmt  =  con.createStatement();
            ResultSet set  =  stmt.executeQuery(sql);
              while  (set.next()){
                  int  id = set.getInt("id" );
                String user_name  = set.getString("user_name" );
                String password  = set.getString("password" );
                System.out.println(id +"**"+user_name+"**"+ password);
            }
        }   catch   (SQLException e) {
            e.printStackTrace();
        }
    } 

 

4.推荐使用PrepareStatement对象执行sql语句

 @Test
      public   void   test02(){
        String sql  = "select * from t_user WHERE id = ?" ;
PrepareStatement ps = null; try { ps = con.prepareStatement(sql); ps.setInt( 1,1 ); ResultSet set = ps.executeQuery(); while (set.next()){ int id = set.getInt("id" ); String user_name = set.getString(2 ); String password = set.getString("password" ); System.out.println(id +"**"+user_name+"**"+ password); } } catch (SQLException e) { e.printStackTrace(); }
finally{
try {
ps.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
 } 
1. executeQuery();返回一个ResultSet结果集
2. execute(); //返回类型为boolean,是否执行成功
3. executeUpdate(); //返回int类型,是影响的行数
4.setXxx(... , ...);对问号进行赋值
  Xxx:代表数据类型
  两个参数第一个参数是对应第几个?号占位符下标从1开始,第二个是赋的值
5.getXxx(...);获取对应的字段的值
  Xxx:代表数据类型
  参数可以写数据库中的字段名,也可以写序号下标从1开始

6.关闭连接 close();
  前面后执行那个就先关闭那个,上面从上往下执行,关闭的时候就从下往上关闭。

 

使用jdbc连接数据库

标签:参数   connect   jar包   bin   执行   while   一个   int   cep   

查看更多关于使用jdbc连接数据库的详细内容...

  阅读:26次