5-JDBC数据库开发入门
课时1-2 1.什么是JDBC
JDBC 数据库访问规范
应用程序 JDBC MySQL驱动 MySQL
Oracle驱动 Oracle
导入jar包 加载驱动 Class.forName(‘类名’) 给出url、username、password 使用DriverManager类得到Connection类
maven导入依赖
mysql
mysql-connector-java
8.0.18
连接示例
import java.sql.Connection;
import java.sql.DriverManager;
class Demo {
// MySQL >= 8.0 配置参数
private static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
private static final String DB_URL = "jdbc:mysql://localhost:3306/data";
private static final String USER = "root";
private static final String PASSWORD = "123456";
public static void main(String[] args) throws Exception {
// 注册 JDBC 驱动
Class.forName(JDBC_DRIVER);
// 等效于
// com.mysql.cj.jdbc.Driver driver = new com.mysql.cj.jdbc.Driver();
// DriverManager.registerDriver(driver);
// 打开链接
Connection conn = DriverManager.getConnection(DB_URL, USER, PASSWORD);
// 关闭链接
conn.close();
}
}
所有的java.sql.Driver实现类,都提供了static代码块, 块内代码把自己注册到DriverManager中
jdbc4.0之后 每个驱动jar包中,在META-INF/services目录下提供了一个java.sql.Driver文件 内容就是该接口的实现类名称
课时3 3.JDBC完成增、删、改、查1、增、删、改
// 发送DML, DDL
int Statement.executeUpdate(String sql);
代码示例
// 注册 JDBC 驱动
Class.forName(JDBC_DRIVER);
// 打开链接
Connection conn = DriverManager.getConnection(DB_URL, USER, PASSWORD);
Statement statement = conn.createStatement();
// 增删改
// String sql = "insert into student(sname) values('陆小凤')";
// String sql = "update student set sname='花无缺' where sid=4";
String sql = "delete from student where sid=4";
int ret = statement.executeUpdate(sql);
System.out.println(ret);
// 关闭链接
conn.close();
2、查询
ResultSet executeQuery(String querySql);
boolean ResultSet.next();
// 获取列数据
ResultSet.getString()
ResultSet.getObject()
ResultSet.getInt()
ResultSet.getDouble()
行光标
beforeFirst java.sql.Data Time -> java.sql.Time Timestamp -> java.sql.Timestamp
领域对象中所有属性不能出现java.sql包内容 继承关系
java.util.Date
-java.sql.Date
父类转子类:util.Data -> sql.Date、Time、Timestamp
java.util.Date UtilDate = new java.util.Date();
long longDate = UtilDate.getTime();
java.sql.Date sqlData = new java.sql.Date(longDate);
子类转父类:sql.Date、Time、Timestamp -> util.Data
java.util.Date UtilDate = new java.sql.Date(System.currentTimeMillis());
课时14 14.大数据
可以将文件存入MySQL my.ini配置 max_allowed_packet=10485760
课时15 15.批处理
批处理只针对更新(增,删,改) 一次向服务器发送多条sql语句 开启批处理参数 rewriteBatchedStatements=true
dbconfig.properties
driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3306/data?rewriteBatchedStatements=true
username=root
password=123456
import util.JdbcUtils;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
class Demo {
public static void main(String[] args) throws SQLException {
Connection conn = JdbcUtils.getConnection();
String sql = "insert into user(username)values(?)";
PreparedStatement statement = conn.prepareStatement(sql);
for(int i=0; i
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?