【JDBC】API详解
2022/5/10 23:03:55
本文主要是介绍【JDBC】API详解,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
DriverManager 作用
作用就以下两个:
- 注册驱动
- 获取数据库连接
注册驱动
Class.forName("com.mysql.cj.jdbc.Driver");
Driver 类源码如下,其中有一个静态代码块,真正的注册驱动是由DriverManager.registerDriver(new Driver());
语句执行,该静态代码块可以随着Driver类的加载自动执行。
public class Driver extends NonRegisteringDriver implements java.sql.Driver { public Driver() throws SQLException { } static { try { DriverManager.registerDriver(new Driver()); } catch (SQLException var1) { throw new RuntimeException("Can't register driver!"); } } }
注:mysql5之后的jar包可以不用写
Class.forName();
方法来注册驱动,可以省略,它会自动加载jar包中META-INF/services/java.sql.Driver文件中的驱动类
获取连接
static Connection getConnection(String url,String user,String password);
参数
- url:连接路径,有固定语法
- 语法:
jdbc:mysql://ip地址(域名):端口号/数据库名称?参数键值对1&参数键值对2...
- 举例:
jdbc:mysql://localhost:3306/db1
- 细节:
如果连接的是本机的mysql服务器,ip地址可以写:127.0.0.1,或者写域名为localhost,如果同时mysql的端口号为默认的3306,那么url可以简写为:jdbc:mysql:///数据库名称?参数键值对
配置useSSL=false参数,禁用安全连接方式(就是可能会出现提示说建议采用SSL方式的连接,但是由于没有遇到就不写了),解决警告提示
- user:用户名
- password:密码
Connection
作用:
- 获取执行SQL的对象
- 管理事务
获取执行SQL对象
- 普通执行SQL对象
Statement createStatement()
- 预编译SQL的执行SQL对象,防止SQL注入
PreparedStatement prepareStatement(sql)
- 执行存储过程的对象
CallableStatement prepareCall(sql)
事务管理
- MySQL事务管理
开启事务:BEGIN;/START TRANSACTION;
提交事务:COMMIT;
回滚事务:ROLLBACK
这篇关于【JDBC】API详解的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15PingCAP 黄东旭参与 CCF 秀湖会议,共探开源教育未来
- 2024-05-13PingCAP 戴涛:构建面向未来的金融核心系统
- 2024-05-09flutter3.x_macos桌面os实战
- 2024-05-09Rust中的并发性:Sync 和 Send Traits
- 2024-05-08使用Ollama和OpenWebUI在CPU上玩转Meta Llama3-8B
- 2024-05-08完工标准(DoD)与验收条件(AC)究竟有什么不同?
- 2024-05-084万 star 的 NocoDB 在 sealos 上一键起,轻松把数据库编程智能表格
- 2024-05-08Mac 版Stable Diffusion WebUI的安装
- 2024-05-08解锁CodeGeeX智能问答中3项独有的隐藏技能
- 2024-05-08RAG算法优化+新增代码仓库支持,CodeGeeX的@repo功能效果提升