jdbc JAVA Database Connectivity java 数据库连接
为什么会出现JDBC SUN公司提供的一种数据库访问规则、规范, 由于数据库种类较多,并且java语言使用比较广泛,sun公司就提供了一种规范,让其他的数据库提供商去实现底层的访问规则。 我们的java程序只要使用sun公司提供的jdbc驱动即可。
jdbc是一种接口规范
优势:
简单
快捷
移植性
框架(在jdbc的基础上开发更好的框架)
jdbc Manager的上层JDBC API负责与java Application通信,JDBC Driver API 负责与具体的数据库通信(由数据库厂商开发和提供)
API介绍: Driver:接口,定义 …
业务场景1 过滤条件比较弱,一次读出多条记录 读取数据库表中的所有记录 海量数据读取 这些都容易产生内存溢出,为了不使得内存溢出,我们采用游标的方式
游标:提供一种客户端读取部分服务器端结果集的机制 一个批次的大小为:Fetch Size
游标的使用 开启游标,DB_URL的处理(加上useCursorFetch=true) eg:
jdbc:mysql://<ip>:<port>/<database>?useCursorFetch=true
使用PreparedStatement接口
PreparedStatement接口继承自Statement接口,我们可以使 …
1. execute,executeQuery,executeUdate的区别 JDBCTM中Statement接口提供的execute,executeQuery,executeUdate之间的区别:
executeQuery:
用于产生单个结果集的语句,例如SELECT语句,使用最多的方法
executeUpdate:
用于执行INSERT,UPDATE,DELETE语句以及DDL语言,返回值是一个整数,指示受影响的行
execute:
用于执行返回多个结果集,多个更新技术或者两者皆有的语句
2. SQL注入 防范措施:
使用动态封装的方式会导致SQL注入的风险,我们应该使用prepareStatement提供的参数化SQL
严格 …