Spring配置数据源

Spring配置数据源

(新手笔记,参考自黑马程序员)

黑马程序员最全ssm框架

Spring配置数据源

  • Spring配置数据源
  • 1、数据源的开发步骤
  • 2、数据源的手动创建
  • 3、Spring配置数据源
  • 4、抽取jdbc配置文件

1、数据源的开发步骤

① 导入数据源的坐标和数据库驱动坐标
② 创建数据源对象
③ 设置数据源的基本连接数据
④ 使用数据源获取连接资源和归还连接资源

2、数据源的手动创建

1)
导入c3p0和druid的坐标

        
        
            com.alibaba
            druid
            1.2.7
        
        
        
            com.mchange
            c3p0
            0.9.5.5
        

导入mysql数据库驱动坐标

 
            mysql
            mysql-connector-java
            8.0.25
            compile
        

创建C3P0连接池

@Test
public void testC3P0() throws Exception {
//创建数据源
ComboPooledDataSource dataSource = new ComboPooledDataSource();
//设置数据库连接参数
dataSource.setDriverClass("com.mysql.cj.jdbc.Driver");
dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/test?allowMultiQueries=true");
dataSource.setUser("root");
dataSource.setPassword("root");
//获得连接对象
Connection connection = dataSource.getConnection();
System.out.println(connection);
}

创建Druid连接池

@Test
public void testDruid() throws Exception {
//创建数据源
DruidDataSource dataSource = new DruidDataSource();
//设置数据库连接参数
dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/test?allowMultiQueries=true");
dataSource.setUsername("root");
dataSource.setPassword("root");
//获得连接对象
Connection connection = dataSource.getConnection();
System.out.println(connection);
}

提取jdbc.properties配置文件

jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/test?allowMultiQueries=true
jdbc.username=root
jdbc.password=root

读取jdbc.properties配置文件创建连接池

@Test
public void testC3P0ByProperties() throws Exception {
//加载类路径下的jdbc.properties
ResourceBundle rb = ResourceBundle.getBundle("jdbc");
ComboPooledDataSource dataSource = new ComboPooledDataSource();
dataSource.setDriverClass(rb.getString("jdbc.driver"));
dataSource.setJdbcUrl(rb.getString("jdbc.url"));
dataSource.setUser(rb.getString("jdbc.username"));
dataSource.setPassword(rb.getString("jdbc.password"));
Connection connection = dataSource.getConnection();
System.out.println(connection);
}

3、Spring配置数据源

可以将DataSource的创建权交由Spring容器去完成

  • DataSource有无参构造方法,而Spring默认就是通过无参构造方法实例化对象的
  • DataSource要想使用需要通过set方法设置数据库连接信息,而Spring可以通过set方法进行字符串注入

导入坐标:
(springg共有四个方面的依赖:
1)spring核心依赖
spring-core、spring-beans、spring-context

2)spring dao依赖(提供JDBCTemplate)
spring-jdbc、spring-tx

3)spring web依赖
spring-web、spring-webmvc

4)spring test依赖
spring-test
)

        
            org.springframework
            spring-context
            4.3.7.RELEASE
        
 



测试从容器当中获取数据源

ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
DataSource dataSource = (DataSource) applicationContext.getBean("dataSource");
Connection connection = dataSource.getConnection();
System.out.println(connection);

4、抽取jdbc配置文件

applicationContext.xml加载jdbc.properties配置文件获得连接信息。
首先,需要引入context命名空间和约束路径:

  • 命名空间:xmlns:context=“http://www.springframework.org/schema/context”
  • 约束路径:http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context.xsd

 




你可能感兴趣的:(spring,java)