目录
JDBC,即Java Database Connectivity,java数据库连接。是一种用于执行SQL语句的Java API,它是Java中的数据库连接规范,根据各个数据库提供的驱动包,使得sql能在Java中执行。(驱动包是为了将mysql的api转为符合JDBC规范的api,不符合JDBC的数据库api不能再Java中使用)
MySQL驱动包下载
1在Maven中央仓库搜索mysql,点击下图所示位置
2找到自己mysql对应版本的驱动包,点进去
3点击自动下载驱动包
连接MySQL数据库
1.载入MySQL驱动包至项目依赖
1.1新建目录,命名为lib
1.2将MySQL驱动包载入,复制进lib
1.3将lib添加为库
2.建立数据库连接
2.1创建数据源
//1.创建数据源DataSource对象,数据源描述了要操作的数据库服务器来自哪里
DataSource dataSource = new MysqlDataSource();
//url
((MysqlDataSource)dataSource).setUrl("jdbc:mysql://数据库服务器ip:端口号/数据库名?characterEncoding=utf8&useSSL=false");
//用户名
((MysqlDataSource)dataSource).setUser("账户");
//密码
((MysqlDataSource)dataSource).setPassword("密码");
例:
DataSource dataSource = new MysqlDataSource();
((MysqlDataSource)dataSource).setUrl("jdbc:mysql://127.0.0.1:3306/test1?characterEncoding=utf8&useSSL=false");
((MysqlDataSource)dataSource).setUser("root");
((MysqlDataSource)dataSource).setPassword("1234");
2.2建立连接
Connection connection = dataSourse.getConnection();
SQL语句的执行
1.执行SQL语句首先要和数据库建立连接
如上
2.构建SQL语句字符串,末尾不带分号,例:
String sql = "select * from student";
3.将SQL语句字符串,转为SQL语句对象
PreparedStatement statement = connection.prepareStatement(sql);
4.执行语句
执行查询语句,返回结果集ResultSet对象,结果集是一行一行的数据,每一行包含查询到的各个列,可通过next()方法访问下一行,通过get方法获取对应列数据
//查询sql语句
ResultSet resultSet = statement.executeQuery();
while(resultSet.next()) {
int id = resultSet.getInt("id");
String name = resultSet.getString("name");
System.out.println("id:" + id + " name:" + name);
}
执行其他语句,返回受影响行数
String sql = "delete from student where id = 1";
PreparedStatement statement = connection.prepareStatement(sql);
//查询sql语句
int n = statement.executeUpdate();
System.out.println(n);
5.回收资源
resultSet.close();
statement.close();
connection.close();