Javaweb——JDBC连接池
JDBC
首先我们要先了解JDBC的定义及由来
1. 概念:Java DataBase Connectivity Java 数据库连接, Java语言操作数据库JDBC本质:其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。
2. 快速入门:
- 步骤(不严谨,会出现SQL注入,低效等问题,具体可用PreparedStatement对象、以及JDBC工具类JDBCUtils(创建时可引用类加载器ClassLoader,以及书写配置文件方便查找修改)解决):
1. 导入驱动jar包 mysql-connector-java-5.1.37-bin.jar
1. 复制mysql-connector-java-5.1.37-bin.jar到项目的libs目录下
2. 右键–>Add As Library
2. 注册驱动
Class.forName(“com.mysql.jdbc.Driver”);
3. 获取数据库连接对象 Connection
Connection conn = DriverManager.getConnection(“jdbc:mysql://localhost:3306/db3”, “root”, “123”);
4. 定义sql
String sql = “update account set balance = 500 where id = 1”;
5. 获取执行sql语句的对象 Statement
Statement stmt = conn.createStatement();
6. 执行sql,接受返回结果
int count = stmt.executeUpdate(sql);
7. 处理结果
System.out.println(count);
8. 释放资源
stmt.close();
conn.close();
3.重点了解对象:
- DriverManager:驱动管理对象
- Connection:数据库连接对象
- Statement:执行sql的对象
- ResultSet:结果集对象,封装查询结果
- PreparedStatement:执行sql的对象
数据库连接池
- 概念:其实就是一个容器(集合),存放数据库连接的容器。
当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象归还给容器。2. 好处:
1. 节约资源
2. 用户访问高效