JDBC中的API

DriverManager:驱动管理类
        *主要作用:
            1.注册驱动
                    实际开发中注册驱动会使用如下方式:
                    Class.forName("com.mysql.jdbc.Driver");
                    使用DriverManager.registerDriver(new Driver());会导致驱动注册两次
            2.获得连接
                    Connection getConnection(String url,String username,String password);
                        url写法:jdbc:mysql://localhost:3306/jdbc
                            *jdbc        :协议
                            *mysql     :子协议
                            *localhost:主机名
                            *3306      :端口号
                         url简写:    jdbc:mysql:///jdbc    默认连接本地数据库,则localhost:3306可以省略


Connection:连接对象

          *主要作用: 

              1.创建执行SQL语句的对象

                      Statement createStatement()                                        执行SQL语句,有SQL注入的漏洞存在

                      PreparedStatement prepareStatement(String sql)        预编译SQL语句,解决了SQL注入的漏洞

                      CallableStatement   prepareCall(String sql)                  执行SQL中存储过程

              2.进行事务的管理

                      setAutoCommit(boolean  autoCommit)                          设置事务是否自动提交

                      commit()                                                                         事务提交

                      rollback()                                                                        事务回滚


Statement:执行SQL

        主要作用

               1.执行SQL语句

                         boolean execute(String sql)                                      执行SQL,执行select语句返回true,否则返回false

                         ResultSet executeQuery(String sql)                         执行SQL中的select语句

                         int executeUpdate(String sql)                                   执行SQL中的insert/update/delete语句

               2.执行批处理操作

                         addBatch(String sql)                                                添加到批处理

                         executeBatch()                                                        执行批处理

                         clearBatch()                                                             清空批处理


ResultSet:结果集

        结果集:其实就是查询语句(select)语句查询的结果的封装

        主要作用:

                   结果集获取查询到的结果。

                   next()                                                                            判断结果集中是否还有下一行

                   针对不同的数据类型可以使用getXXX()来获取数据,通用的获取数据的方法:getObject()


JDBC的资源释放

        特别是Connection对象,是非常稀有的资源,用完之后需要马上释放,如果Connection不能及时、正确的关闭,极易导致系统宕机。Connection的使用原则是尽量晚创建,尽量早释放。

        标准资源释放代码

finally {
			//4.释放资源
			if(rs != null) {
				try {
					rs.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
				rs = null;
			}
			
			if(stmt != null) {
				try {
					stmt.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
				stmt = null;
			}
			
			if(conn != null) {
				try {
					conn.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
				conn = null;//垃圾回收机制更早回收对象
			}
		}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值