原理:
- JDBC API提供各种操作访问接口,如Connection、Statement、P热怕redStatement、ResultSet
- JDBC DriverManager:管理各种不同的驱动程序
- 各种数据库驱动:由相应数据库厂商提供(第三方公司提供),用于连接/直接操作数据库
JDBC(Java Database Connectivity):可为多种关系型数据库提供统一访问接口,因此主要做以下三件事:
- 与数据库建立连接
- 发送SQL语句
- 返回处理结果
具体步骤如下:
a. 导入驱动程序,即在工程里导入所用的数据库提供的连接数据库的jar包
b. 与数据库建立连接
c. 发送SQL语句,执行
d. 返回处理结果
数据库驱动:
数据库 | 驱动jar包 | 具体驱动类 | 连接字符串(IP地址+端口号+数据库实例名) |
---|---|---|---|
Oracle | ojdbc-x.jar | oracle.jdbc.OracleDriver | jdbc:oracle:thin:@localhost:1521:数据库实例名 |
Mysql | mysql-connector-java-x.jar | com.mysql.jdbc.Driver | jdbc:mysql://localhost:3306/数据库实例名 |
SqlServer | sql-jdbc-x.jar | com.microsoft.sqlserver.jdbc.SQLServerDriver | jdbc:microsoft:sqlserver:localhost:1433;databasename=数据库实例名 |
eclipse中连接Mysql数据库
public class JDBCdemo {
private static final String URL = "jdbc:mysql://localhost:3306/jdbcTest";//数据库+IP地址+端口号+数据库名
private static final String NAME = "lunary";
private static final String PASSWORD = "123456";
public static void main(String[] args) {
Statement stmt = null;
Connection conn = null;
try{
Class.forName("com.mysql.jdbc.Driver"); //加载驱动类
//与数据库建立连接
conn = DriverManager.getConnection(URL,NAME,PASSWORD);
//发送SQL语句,执行
stmt = conn.createStatement();
String sql = "insert into student values(2,'lisi')";
int res = stmt.executeUpdate(sql);
//处理结果
if(res>0){
System.out.println("操作成功");
}else{
System.out.println("操作失败");
}
}catch(ClassNotFoundException e){
e.printStackTrace();
}catch (SQLException e){
e.printStackTrace();
}catch (Exception e){
e.printStackTrace();
}finally{
try {
if(stmt != null) stmt.close();
if(conn != null) conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
输出结果
数据库里查看已添加相应的记录:
观看的视频:https://www.bilibili.com/video/BV18s411u7EH?p=13