赞
踩
JDBC 英文名为:Java Data Base Connectivity(Java 数据库连接),官方解释它是独立于数据库的标准的 Java API。
JDBC 是一种规范,它提供一套完整的允许便捷式访问底层数据库的接口
,简单来说它就是 Java 与数据库连接的桥梁或者插件,通过它,就能用 Java 代码操作数据库,实现数据库的增删改查、存储过程和事务处理等功能。
作用:
类中方法:
Connection getConnection (String url, String user, String password)
:通过连接字符串,用户名,密码来得到数据。
库的连接对象
Connection getConnection (String url, Properties info)
:通过连接字符串,属性对象来得到连接对象。
类中方法:
Statement createStatement()
:创建一条 SQL 语句对象。
类中方法:
int executeUpdate(String sql)
:
ResultSet executeQuery(String sql)
:
释放资源:
需要释放的对象:ResultSet 结果集,Statement 语句,Connection 连接
释放原则:先开的后关,后开的先关。ResultSet → Statement → Connection
放在哪个代码块中:finally 块
Statement
的子接口。boolean next()
数据类型 getXxx()
1.)使用 JDBC 连接数据库并创建如下数据表:
编码 | 部门编码 | 姓名 | 性别 | 年龄 | 入职日期 |
---|---|---|---|---|---|
1 | 1 | 李雷 | 男 | 22 | 2021-01-09 |
2 | 1 | 韩梅梅 | 21 | 2020-02-23 | |
3 | 2 | 赵男 | 女 | 23 | 2018-05-17 |
4 | 3 | 周倩 | 女 | 20 | |
5 | 3 | 夏雨 | 男 | 2017-09-29 |
编码 | 部门名称 |
---|---|
1 | 研发部 |
2 | 产品部 |
3 | 运营部 |
4 | 财务部 |
答:创建表格
package com.xxm.advanced_camp.mission16_JDBC; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Statement; public class task1 { public static void main(String[] args) throws Exception { //1. 注册驱动 Class.forName("com.mysql.jdbc.Driver"); //2.获取数据库连接对象 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/study", "root", "root"); //3.定义 sql 语句 //创建员工表 String sql1 = "CREATE TABLE employers_table(\n" + "id INTEGER(8) NOT NULL AUTO_INCREMENT,\n" + "department_id INTEGER(8) NOT NULL,\n" + "emp_name CHAR(16) NOT NULL,\n" + "gender CHAR(8),\n" + "age INTEGER(8),\n" + "join_date CHAR(32),\n" + "PRIMARY KEY(id)\n" + ");"; //创建部门表 String sql2 = "CREATE TABLE departments_table(\n" + "department_id\tINTEGER(4) NOT NULL AUTO_INCREMENT,\n" + "department_name\tCHAR(16) NOT NULL,\n" + "PRIMARY KEY(department_id)\n" + ");"; //4.获取执行 sql 的对象 Statement stmt = conn.createStatement(); //5.执行 sql 语句 int count1 = stmt.executeUpdate(sql1); int count2 = stmt.executeUpdate(sql2); //6.处理结果 System.out.println(count1); System.out.println(count2); //7.释放资源 stmt.close(); conn.close(); } }
使用 JDBC 完成如下任务:
答:1-7,由于在 SQL 中做过, 在 JDBC 中就不再做了。
但是要注意几个点:
答:
题中,各个要求不同的点,主要在 第三步,SQL 语句不同。
其中,第 1 个要求,在第 5-6 步的时候,要使用 executeUpdate , 接收结果时使用 int 类型(处理影响的行数);
后面几个要求,要使用 executeQuerey ,接收结果时使用 Result 类的对象,输出时类似这样。
第七步,释放资源时,要先关闭结果集 ResultSet,再关闭 Statement,再关闭 Connection 。
给员工表插入十万条数据(员工姓名、年龄、日期都可以随机生成),然后再使用批处理完成同样的功能,比较两种操作的耗时。
package com.xxm.advanced_camp.mission16_JDBC;
import
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。