一.spring 数据源的类型-1
二.数据源的开发步骤
1.导入数据源的坐标和数据库的驱动坐标
2.创建数据源对象
3.设置数据源的基本连接
4.使用数据源获取连接资源和归还连接资源
三.新建一个spring项目
关于项目的创建,见第一章:https://blog.csdn.net/u011066470/article/details/112062492
这里不再累赘。
新建的项目如下:
pom文件中的依赖如下
<dependencies>
<!-- 引入spring的依赖包 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.0.2.RELEASE</version>
</dependency>
<!-- mysql 的驱动包 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
<!-- 连接数据源的c3p0驱动包-->
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.1.2</version>
</dependency>
<!--aibaba的连接池包 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.0</version>
</dependency>
<!--单元测试 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
</dependency>
</dependencies>
项目的结构如下:
3.1 手动通过c3p0进行连接
@Test
//第一种方式,手动通过c3p0进行连接
public void test1() throws Exception {
ComboPooledDataSource ds=new ComboPooledDataSource();
ds.setDriverClass("com.mysql.jdbc.Driver");
ds.setJdbcUrl("jdbc:mysql://localhost:3306/nongda");
ds.setUser("root");
ds.setPassword("");
Connection con=ds.getConnection();
System.out.println("connection:"+con);
con.close();
}
结果:
3.2 手动通过druid进行连接
@Test
//第二种方式,手动通过druid进行连接
public void test2() throws SQLException {
DruidDataSource ds=new DruidDataSource();
ds.setDriverClassName("com.mysql.jdbc.Driver");
ds.setUrl("jdbc:mysql://localhost:3306/nongda");
ds.setName("root");
ds.setPassword("");
Connection con=ds.getConnection();
System.out.println("connection:"+con);
con.close();
}
3.3 通过加装配置文件,使用c3p0进行连接
1.在项目resource下面新建一个:jdbc.properties文件
2.通过程序获取配置文件的内容:
@Test
//通过加装配置文件,使用c3p0进行连接
public void test3() throws PropertyVetoException, SQLException {
//1.读取配置文件
ResourceBundle rb=ResourceBundle.getBundle("jdbc"); //其实就是resource下面的jdbc.properties的文件名
String driver=rb.getString("jdbc.driver");
String url=rb.getString("jdbc.url");
String username=rb.getString("jdbc.username");
String password=rb.getString("jdbc.password");
//2.创建数据源对象,设置连接参数
ComboPooledDataSource ds=new ComboPooledDataSource();
ds.setDriverClass("com.mysql.jdbc.Driver");
ds.setJdbcUrl("jdbc:mysql://localhost:3306/nongda");
ds.setUser("root");
ds.setPassword("");
Connection con=ds.getConnection();
System.out.println("connection:"+con);
con.close();
}