JDBC2 基础学习笔记
JDBC简介
JDBC增删改查的通过操作代码示例
JDBC 指 Java 数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库。
主要用于执行 SQL 查询,并查看查询的记录。
使用 JDBC 需要先下载驱动。
mysql8需要设置时区,有cj目录,mysql5没有
操作步骤
前期准备
1、在 mysql 中创建一个库,并创建相应测试表和插入一些测试数据。
2、新建一个 Java 工程,并导入 MySQL 数据库驱动包,将 mysql 驱动拷入项目根目录并右键添加到项目依赖(Add As Library)。
JDBC 操作数据步骤一般分为如下五个步骤:
一、加载数据库驱动类
JDBC 操作数据步骤一般分为如下五个步骤:
二、建立连接(Connection)
Connection connection = DriverManager.getConnection(url,user,password);
三、创建用于向数据库发送 SQL 的 Statement 对象,并发送 sql
Statement statement = connection.createStatement();
四、从结果集的 ResultSet 中取出返回数据。
ResultSet resultSet = statement.excuteQuery(sql);
五、关闭相关资源,并释放内存
*.close()
数据库 URL 制定
当加载了驱动程序之后,可以通过 DriverManager.getConnection() 方法建立一个连接。
- getConnection(String url)
- getConnection(String url, Properties prop)
- getConnection(String url, String user, String password)
在这里,每个格式需要一个数据库 URL ,数据库 URL 指向数据库的地址。
下表列出了常用的 JDBC 驱动程序名和数据库URL。
RDBMS | JDBC 驱动程序名称 | URL 格式 |
---|---|---|
MySQL | com.mysql.jdbc.Driver | jdbc:mysql://localhost:3306/databaseName/database?severTimezone=Asia/Shanghai&characterEncoding=utf-8&useSSL=fasle |
ORACLE | oracle.jdbc.driver.OracleDriver | jdbc:oracle:thin:@localhost:1521:实例ID |
DB2 | COM.ibm.db2.jdbc.net.DB2Driver | **jdbc:db2:**hostname:port Number/databaseName |
Sybase | com.sybase.jdbc.SybDriver | **jdbc:sybase:Tds:**hostname: port Number/databaseName |
sqlserve | om.microsoft.jdbc.sqlserver.SQLServerDriver | jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=databaseName |
getConnection() 最常用的方式是需要你提供一个数据库 URL,用户名和密码:
调用适当的用户名和密码以及 getConnection() 方法来获得一个 Connection 对象,如下所示:
String URL = "jdbc:mysql://localhost/mydb?serverTimezone=Asia/Shanghai&characterEncoding=UTF-8";
String USER = "username";
String PASS = "password"
Connection conn = DriverManager.getConnection(URL, USER, PASS);
使用Properties对象
Properties 对象可以保存了一组关键数值。它通过调用 getConnection() 方法,将驱动程序属性传递给驱动程序。
在根目录(位置可以任意)新建一个jdbc.properties
文件
url=jdbc:mysql://58.42.239.163:3306/jdbc?serverTimezone=Asia/Shanghai&characterEncoding=UTF8&useSSL=false
user=star
password=Star@123456
JDBC工具类示例
public static Connection getConnection() {
Properties properties = new Properties();
try (
FileInputStream fis = new FileInputStream("jdbc.properties")
) {
properties.load(fis);
// properties.load(JDBCUtility01.class.getResourceAsStream("dbc.properties"));
return DriverManager.getConnection(properties.getProperty("url"), properties);
} catch (IOException | SQLException e) {
e.printStackTrace();
return null;
}
}
/**
* @return void
* @Descriptin 关闭数据库连接
* @data 2021/12/23
*/
public static void Close(Connection connection) {
if (connection != null) {
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}