JDBC简介
JDBC全称为java database connectivity,是sun公司指定的java数据库连接技术的简称。它是sun公司和数据库开发商共同开发出来的独立于DBMS的应用程序接口,它为java程序员进行数据库编程提供了统一的API。
JDBC实际上有两组API,一组面向java应用程序开发人员,另一组是面向数据库驱动程序开发人员的,一般都是数据驱动程序开发人员利用后面一组API开发出供应程序开发人员使用的API。
现在很多项目都是使用ORM框架来进行与数据库映射的,例如MyBatis和Hibernate都是在JDBC基础上进行了一层封装来实现的,所以说JDBC还是非常重要的。
使用JDBC连接数据库的流程
准备条件:
1、安装好MySQL;
2、根据MySQL的版本号,在官网上(https://downloads.mysql.com/archives/c-j/)下载对应版本的MySQL连接数据库的jar包
若不记得MySQL版本号,可通过mysql -u root -p命令,输入密码后查看版本号
连接数据库步骤:
- 加载驱动
try {
Class.forName("com.mysql.cj.jdbc.Driver");//5.?版本的MySQL驱动为Class.forName("com.mysql.jdbc.Driver");
}catch (ClassNotFoundException e)
{
System.out.println("驱动加载失败!");
}
- 建立Connection连接
String url="jdbc:mysql://localhost:3306/db_library?serverTimezone=UTC";
// 8.?版本的MySQL连接数据库时,后边必须加上参数serverTimezone=UTC
String user="root";
String password="123456";
public Connection connection=null;
connection = DriverManager.getConnection(url, user, password);
- 创建数据库操作对象Statement
private Statement statement=null;
statement = connection.createStatement();
- 编写并执行SQL语句
ResultSet resultSet=null;
String sql="select * from tb_manager";
resultSet = statement.executeQuery(sql);//该语句会将查询的结果存放在resultSet对象中
或
int i = statement.executeUpdate(sql); //该条语句返回的是数据库中变动的行数;
- 对获取到的ResultSet结果集对象进行处理
try {
while (resultSet.next())
{
if (resultSet.getString("name").equals(user)&&resultSet.getString("PWD").equals(password))
{
return true;
}
}
}catch (Exception e){
System.out.println("查询异常!");
}
- 关闭数据库连接
connection.close();
测试案例
public class DB_mysql {
public static void main(String[] args) {
String url="jdbc:mysql://localhost:3306/db_library?serverTimezone=UTC";
String sql="select * from tb_manager";
String user="root";
String password="123456";
Connection connection=null;
Statement statement;
try {
//加载驱动
Class.forName("com.mysql.cj.jdbc.Driver");
//创建Connection连接对象
connection = DriverManager.getConnection(url,user,password);
//创建数据库操作对象Statement
statement = connection.createStatement();
//执行SQL语句,获取ResultSet对象
ResultSet resultSet=statement.executeQuery(sql);
//int i = statement.executeUpdate(sql);
//对ResultSet对象进行处理(下边直接输出表中的数据)
while (resultSet.next())
{
System.out.println("用户名:"+resultSet.getString("name")+",密码:"+resultSet.getString("PWD"));
}
}catch (Exception e){
System.out.println(e.getMessage());
}finally {
try {
connection.close();
}catch (Exception e){
System.out.println(e.getMessage());
}
}
}
}
测试结果:
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/5295.html