JDBC:Java数据库连接
本质:
sun公司定义的一套通过java程序访问关系型数据库的规范(接口);这一套规范(接口),不是由我们开发人员自己去实现的,而是由各个数据库厂商来进行实现,作为开发人员只需要调用各大厂商实现好的相关类即可操作各个数据库。
原生操作流程:
1)引入对应数据库的驱动jar包
– idea中使用方法是点击file–>Project Structure–>Libraries–>添加后–>Apply
2)注册驱动 (mysql5.x之后该注册代码可以省略)
注意:需要通过try{}catch{}处理异常
Class.forName(com.mysql.jdbc.Driver);
注意:驱动全类名所在位置所提供的jar包的META-INF–>services -->java.sql.Driver里面存储
3)定义sql语句
String sql="跟上你想跟的sql语句"
4)使用数据库连接对象Connection
DriverManager.getConnection(url,user,password);
5) 获取执行sql语句的对象:Statement
conn.createStatement();
6) 执行sql,并返回结果;
resultSet = stmt.executeUpdate(sql); //增删改
resultSet = stmt.excuteQuery(sql); //查
7) 处理结果
增删改返回的结果1为成功0为失败
//处理查询结果
while(resultSet.next()){
//类似与迭代器
//查询结果进行自己的操作
}
8) 关闭资源(先打开的后关闭)
注意:需要处理,并且要判断是否为空
stmt.close();
conn.close();
优化操作流程
//jdbc.properties配置文件
url=jdbc:mysql://localhost:3306/haha?characterEncoding=utf8
user=root
password=123456
driver=com.mysql.jdbc.Driver
//JDBCUtil将重复的部分封装起来
package com.uek.bigdata.util;
import java.io.IOException;
import java.io.InputStream;
import java.sql.*;
import java.util.Properties;
public class JDBCUtil {
/**
* 加载配置文件的操作:
* 在项目的开发过程中,为了避免程序存在硬编码,可以采用配置文件的方式将常用到的参数添加进行,
* 然后在程序中通过加载配置文件,从而获取这些参数值;
*
* 配置文件:
* 1)xxx.propertis
* key=value ---> String类型
* 注意:等号两边不要有空格;
*
* 2)xxx.xml
* 严格配置文件格式, 约束,标签
*
* 注意:添加配置文件默认路径:src目录下(classpath目录)
*/
private static String url;
private static String driver;
private static String user;
private static String password;
/**
* 在类加载时,获取配置文件中的参数:
*/
static {
try {
/**
* 加载配置文件信息:
*/
//1.构建properties对象:
Properties prop = new Properties();
//2. 获取配置文件路径,从而构建输入流,配置文件应放到源码目录也就是src下
InputStream is = JDBCUtil.class.getClassLoader().getResourceAsStream("jdbc.properties");
//3. 加载数据,封装到prop对象中:
prop.load(is);
//4.赋值:
url = prop.getProperty("url");
driver = prop.getProperty("driver");
user = prop.getProperty("user");
password = prop.getProperty("password");
/**
* 注册驱动:
*/
Class.forName(driver);
} catch (IOException | ClassNotFoundException e) {
e.printStackTrace();
}
}
/**
* 获取连接:
*/
public static Connection getConnection