JDBC(Java Database Connectivity)
JDBC的本质是Java对所有关系型数据库进行连接操做所制定的一套规则,就是接口。
不同的数据库针对这套规则制定了相对应的实现类,我们需要使用这些已经做好的实现类,来使用Java对数据库进行连接和操作
步骤:
1、导入jar包
在项目的根目录中创建lib文件夹
将mysql-connector-java-5.1.37-bin.jar复制到lib中
右键点击jar包,选择Build Path,点击Add to Build Path
2、注册驱动
Class.forName(“com.mysql.jdbc.Driver”);
3、获取连接对象
Connection conn = DeriverManager.getConnection(“jdbc:mysql://localhost:3306/库名”,“用户名”,“密码”)
访问本地数据库路径的缩写:jdbc:mysql://localhost:3306/库名
4、编写SQL语句
String sql = "insert into stu values(null,‘za’,20);
5、获取执行对象
Statement state = conn.createStatement();
6、执行SQL语句
int row = state.excuteUpdate(sql);//实现增删改,返回值是int
state.excuteQuery(sql);//实现查询,返回值是resultSet+
7、处理结果
如果是增删改,判断是否执行成功
如果是查询,获取结果集
8、释放资源
三、数据库连接池
概念:数据库连接池的本质是一个存储若干个数据句酷连接对象的容器(集合),用户在访问数据库时,可以直接从给i容器中获取连接对象,对数据库进行操作,在使用完毕后将此连接对象归还到池中。
好处:
1、节省资源
2、提高访问效率
DataSource连接池接口
1、getConnection():获取连接
2、close():释放连接
一般这个接口我们不会自己去实现,都用第三方做好的.jar包
1、c3p0:Apache组织的
步骤:
1、导入c3p0-0.9.5.2.jar和mchange-commons-java-0.2.12.jar
2、在src下配置c3p0-config.xml文件
在文件配置
com.mysql.jdbc.Driver
jdbc:mysql://localhost:3306/库名
root
root
5
10
3、获取连接池
DataSource ds = new ComboPooledDataSource("mypool");
4、获取连接对象
ds.getConnection();
5、归还连接
ds.close();
2、druid:阿里巴巴的
步骤:
1、导入druid-1.0.0.jar
2、在项目发任意位置配置任意文件名的properties文件
在文件中配置
driverClassName=com.jdbc.mysql.Driver
url=jdbc:mysql://localhost:3306/库名
username=root
password=root
ninitialSize=5
3、使用连接池工厂创建连接池
//专门用于读取properties文件的类
Properties pro = new Properties();
//使用load方法将properties文件载入
pro.load(JdbcUtils.class.getClassLoader().getResourceAsStream("druid.properties"));
//使用DruidDataSourceFactory创建连接池
ds=DruidDataSourceFactory.createDataSource(pro);
4、获取连接对象
ds.getConnection();
5、归还连接
ds.close();