JDBC
1.注册驱动
// new的这个driver具体选择:
// 驱动版本8+以上的,选择mysql.cj.jdbc.Driver
// 以下得,选择mysql.jdbc.Driver
DriverManager.registerDriver(new Driver())// 一般使用反射,来注册驱动,也便于直接在配置文件进行修改
String driver = "驱动类名"
Class.getName("driver");
2.创建连接:Connection
// 直接传递url+用户名+密码
Connection connection = DriverManager.getConnection("jdbc:mysql://ip:port/数据库名", "账号","密码" );// 也可以直接读取properties,比如java的配置文件,或者直接new
Properties properties = new Properties();
properties.put("user","root");
properties.put("password","123456");
Connection connection = DriverManager.getConnection("jdbc:mysql://ip:port/数据库名", properties);
3.创建发送SQL语句对象:Statement
Statement statement = connection.createStatement();
String sql="xxxxx";
4.发送SQL语句,获取结果集:ResultSet
SQL分类:
- DDL(容器创建,修改,删除)
- DML(插入,修改,删除)
- DQL(查询)
- DCL(杈限控制)
- TPL(事务控制语言)
// 方式1:
情况1: DML 返回影响的行数,例如:删除了三条数据 return 3;插入了两条 return 2;修改了0条 return 日;
情况2:非DML return ;
int n = statement.excuteUpdate(sql);
// 方式2:查询语句DQL
ResultSet resultSet = statement.excuteQuery(sql);
5.结果解析
// resultSet.next():是否还有下一行,可以用来判断数据量
// 这里默认指向的是第一条数据的前面,所以先执行一次resultSet.next()并不会漏掉第一行数据while(resultSet.next()){// 取数据列// resultSet.get类型(String columnLabelint columnIndex);// columiLabel:列名如果有别名 写别名// fromcolumnIndex:列的下角标获取 从左向右 从1开始int id = resultSet.getInt("id");String XXA = resultSet.getString("XXA");
}
6.释放资源
// 反序关闭
resultSet .close();
statement.close();
connection.close();