1. 相关接口
DriverManager接口
用于加载JDBC驱动并且创建和数据库之间的连接
DriverManager接口(方法) | 功能描述 |
---|
registerDriver(Driver driver)) | 该方法用于向DriverManager中注册给定的JDBC驱动程序 |
getConnection(String url,String user,String pwd) | 该方法用于建立数据库的连接,并返回表示连接的Connection对象 |
Connection接口
代表Java程序和数据库的连接
Connection接口(方法) | 功能描述 |
---|
createStatement() | 用于创建一个Statement对象并将sql语句发送到数据库 |
getString(int columnIndex) | 用于获取指定字段的String类型的值,参数columnIndex代表字段的索引 |
prepareStatement(String sql) | 用于创建一个PreparedStatement对象并将参数化的sql语句发送到数据库 |
prepareCall(String sql) | 用于创建一个CallableStatement对象来调用数据库的存储过程 |
Statement接口
用于执行静态的SQL语句
Statement接口(方法) | 功能描述 |
---|
execute(String sql) | 用于执行各种sql语句,该方法返回一个boolean类型的值,可以通过Statement的getResultSet()方法获得查询结果 |
executeUpdate(String sql) | 用于执行sql语句中的insert,update和delete语句,该方法返回值是int类型,表示数据库中受该sql语句影响的记录条数 |
executeQuery(String sql) | 用于执行sql语句中的select语句,该方法返回一个表示查询结果的ResultSet对象 |
ResultSet接口
用于保存JDBC执行查询时返回的结果集
ResultSet接口(方法) | 功能描述 |
---|
getString(int columnIndex) | 用于获取指定字段的String值,参数columnIndex代表字段的索引 |
getString(String columnName) | 用于获取指定字段的String类型的值,参数columnName代表字段的名称 |
getInt(int columnIndex) | 用于获取指定字段的int类型的值,参数columnIndex代表字段的索引 |
getInt(int columnName) | 用于获取指定字段的int类型的值,参数columnName代表字段的名称 |
getDate(int columnIndex) | 用于获取指定字段的Date类型的值,参数columnIndex代表字段的索引 |
getDate(String columnName) | 用于获取指定字段的Data类型的值,参数columnName代表字段的名称 |
next() | 将游标从当前位置下移一行 |
absolute(int row) | 将游标移动到此ResultSet对象的指定行 |
previous() | 将游标移动到此Result对象的上一行 |
2. 添加驱动
1.在项目当中创建一个文件夹为lib
2.把Mysql驱动包复制到该文件夹下
3.builder path 编译路径
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/a60d88eb860b8962a0acb838017bafb1.png)
3.代码实例:
public class FirstJdbc {
public static void main(String[] args) throws ClassNotFoundException, SQLException {
String url = "jdbc:mysql://localhost:3306/ecqchat";
String user = "root";
String password = "123456";
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
Class.forName("com.mysql.jdbc.Driver");
conn = (Connection) DriverManager.getConnection(url,user,password);
String sql = "select*from user";
Statement st = (Statement) conn.createStatement();
rs = st.executeQuery(sql);
while (rs.next()) {
int id = rs.getInt("qq");
String name = rs.getString("name");
String user_password = rs.getString("password");
System.out.println(id+"\t"+name+"\t"+user_password);
}
st.close();
conn.close();
}
}
为什么要释放数据资源?
1.Connection连接就相当于Java和到Mysql之间建立管道
2.连接只连接到数据,Statement 就相当于从数据库又接了一个管道连接Mysql的执行程序
连接图
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/a275875269bae3cf2ee17df220f4efd5.png)