JDBC的概念,基本操作,ResultSet等各步骤的解释

JDBC定义了操作所有数据库的规则(接口)
概念:java database connection Java数据库连接,Java语言操作数据库
JDBC本质:其实是官方定义的一套操作所有关系型数据可得规则,即接口。
各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套(JDBC)编程2,
真正执行的代码是驱动jar包中的实现类



JDBC的基本步骤
1.导入驱动jar包
2.注册驱动
3.获取数据库连接对象 connection
4.定义sql
5.获取执行sql语句的对象 statement
6.执行sql,接收返回结果
7.处理结果
8.释放资源
-----------------------
2.connection:数据库连接对象
   1.功能
      1.获取执行sql的对象
	     *Statement createStatement()
         *preparedstatement	preparedstatement(string sql)		 
       2.管理事务:
	     *开启事务:void setAutoCommit(boolean autoCommit) :调用该方法设置参数为false,即开启事务
          提交事务:void commit()  
          回滚事务: void rollback()  
		  
3.statement:执行sql的对象		  
		1.boolean execute(String sql)    可以执行任意sql
		2.int executeUpdate(String sql)  执行DML(insert,update,delete)语句
		  1.返回值
		   *影响的行数,可以通过这个影响的行数哦按段DML语句是否执行成功,返回值>0这执行成功,否则失败

		3.int executeQuery(String sql)  :执行DQL(select)语句   
		   
4.ResultSet:结果集对象,封装查询结果
		 *Boolean next()游标向下移动一行  ,判断当前行是否是最后一行末尾(是否有数据),如果是,则返回false
		 *getxxx():获取数据
		  *xxx:代表数据类型   如:int getInt()
		  *参数
		     1.int:代表列的编号,从1开始  如:getString(1)
		     *String :代表列名称。如:getDouble("balance")
			 
			 -------------------
			 简单的列子:
			 rs.next();//向下移动一行
			 //获取数据
			  d.setId(rs.getInt("ddid"));
              d.setName(rs.getString("dname"));
          
				
			***注意	
			  *使用步骤:
			     1.游标向下移动一行
				 2.判断是否有数据
				 3.获取数据
				
				while(rs.next){是最后一行返回false跳出循环
				//循环判断游标是否是最后一行末尾
				//获取数据
				int id=rs.getInt(1);
				String name=rs.getString("name");
				double balance=rs.getDouble(3)
			

				}
				
5.preparedstatement:执行sql的对象
    1.sql注入问题:在拼接sql时,有一些sql的特殊关键字参与字符串的拼接。会造成安全问题
	
    2.解决sql注入问题:使用preparedStatement对象来解决
	3.预编译的sql:参数使用?作为占位符
	4.步骤:
	  1.导入驱动jar包
      2.注册驱动
      3.获取数据库连接对象 connection
      4.定义sql
	       *注意:sql的参数使用?作为占位符。如:select * from emp where name=? and password=?
      5.获取执行sql语句的对象 preparedstatement  connection.preparedstatement(string sql)
      6.给?赋值
	      *方法  setxxx(参数1,参数2);
		  *参数1:?的位置编号 从1 开始
		  *参数2:?的值
	  6.执行sql,接收返回结果,不需要传递sql语句
      7.处理结果
      8.释放资源
	5.后期都会使用preparedstatement来完成增删改查
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值