JDBC(重点)
1、数据库驱动
程序会通过数据库驱动,和数据库打交道
2、JDBC
SUN公司为了简化操作,提供了Java操作数据库的规范
对于开发人员,只需掌握操作即可
3、第一个JDBC程序
创建测试数据库
1、创建普通项目
2、导入数据库驱动
3、编写测试代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| Class.forName("XXXX文件位置");
String url = "jdbc:mysql://xxxx:3306/数据库名?useUnicode=true&characterEncoding=utf8&useSS:=true"; String userName = xx; String password = xx;
Connection connection = DriverManager.getConnection(url, userName, password);
Statement statement = connection.createStatement();
String sql = "select xxx"; ResultSet result = statement.executeQuery(sql); while (result.next()) { System.out.println(result.getObject("xx")); }
result.close(); statement.close(); connection.close();
|
4、SQL注入问题
5、PreparedStatement对象
可防止SQL注入,并且效率更高
6、事务
ACID原则
原子性:要么全部完成,要么都不完成
一致性:总数不变
隔离性:多个进程互不干扰
持久性:一旦提交不可逆,持久化到数据库
隔离性的问题:
脏读:一个事务读取了另一个没有提交的事务
不可重复读:同一个事务内,重复读取数据,数据发生变化
虚读(幻读):一个事务内,读取到别人插入的数据
7、数据库连接池
数据库连接——执行完毕——释放
连接——释放十分浪费系统资源
池化技术:准备一些预先的资源,连接预先准备好的
最小连接数
最大连接数
等待超时
编写连接池,实现一个接口DataSource