JDBC
9.1什么是JDBC
JDBC的全称是Java数据库连接(Java DateBase Connectivity),是一套用于执行sql语句的API。可以通过这套API连接到关系型数据库,并使用SQL语句来完成各种操作。
9.2JDBC常用API
9.2.1 Driver 接口
Driver接口是所有JDBC驱动程序必须实现的接口,该接口专门提供给数据库厂商使用。
9.2.2 DriverManager类
用于加载JDBC驱动并且创建与数据库的连接。
DriverManager类常用方法
方法名称 | 功能描述 |
---|---|
registerDriver(Driver driver) | 该方法用于向DriverManager中注册给定的驱动程序 |
getConnection(String url,String user,String pwd) | 该方法用于建立和数据库的连接,并返回表示连接的Connerction对象 |
9.2.3 Connection 接口
方法名称 | 功能描述 |
---|---|
createStatement() | 用于创建一个Statement对象并将SQL语句发送到数据库 |
prepareStatement(String sql) | 用于创建一个PreparedStatement对象并将参数化的sql语句发送到数据库 |
9.2.4 Statement接口
Statement接口用于执行静态的SQL语句,并返回一个接口对象,该接口的对象通过Connection实例的createStatement()获得。利用该对象把静态的SQL语句发送到数据库编译执行,然后返回数据库的处理结果。
方法名称 | 功能描述 |
---|---|
execute(String sql) | 用于执行各种sql语句,如果为true,表示所执行的sql语句有查询结果, 可以通过Statement的getResultSet()的方法获得查询结果。 |
executeUpdate(String sql) | 用于执行SQL中的insert,update,delete.该方法返回一个Int类型的值 表示数据库中收到该SQL语句影响的记录条数 |
executeQuery(String sql) | 用于执行SQL中的select语句,该方法返回一个表示查询结果的 ResultSet对象 |
9.2.5 PreparedStatement 接口
是Statement的子接口,用于执行预编译的SQL语句。该接口扩展了带有参数SQL语句的执行操作,应用该接口中的SQL语句可以使用占位符“?”来代替其参数,然后通过setXxx()方法为SQL语句的参数赋值。
方法名称 | 功能描述 |
---|---|
executeQuery() | 在此对象中执行SQL查询,返回的是ResultSet对象 |
executeUpdate() | 在此对象中执行SQL语句,必须是一个DML语句或者是无返回内容的SQL语句 |
Statement对象每次执行相同SQL语句时候,都会对SQL语句进行预编译,会降低效率;
PreparedStatement对象可以对SQL语句进行预编译,预编译的信息存储在该对象中,当相同的SQL语句再执行时候,就会使用该对象调用数据,而不用再次编译。
9.2.6 ResultSet 接口
ResultSet接口用于保存JDBC执行查询时返回的结果集,该结果集封装在一个表格中。在ResultSet接口中有一个指向表格数据行的游标,ResultSet对象初始化时,游标在第一行之前,调用next()方法可以移动到下一行。
ResultSet接口定义了大量的getXxx方法,采用那种Xxx取决字段的数据类型。
方法名称 | 功能描述 |
---|---|
getString(int col) | 用于获取指定字段的String类型的值,参数col代表字段的索引 |
getString(String col) | 用于获取指定字段String类型的参数,参数col代表字段的索引 |