Spring配置Druid数据源

文章目录

  • 前言
  • 纯手写配置
  • 导入Spring
  • 编写配置
    • 提取参数
    • 编写XML文件
    • 通过IOC容器获取Conncetion

前言

闲的没事,刚好最近学校讲到这个数据库,就想用Spring来玩玩,优化一下数据库操作。以前是直接用Mybatis的,但是想玩玩别的方式,顺便水一篇博客~

纯手写配置

我们先创建一个Maven项目,然后导入驱动和数据源Druid。


<!--数据库连接池-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.2.9</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.47</version>
        </dependency>

    </dependencies>

为了便于测试,我们还可以导入这个玩意

<!--junit测试单元-->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>

然后我们手写一个获取connection的方法测试一下

    @Test
    public void test() throws SQLException {
        DruidDataSource dataSource = new DruidDataSource();
        dataSource.setDriverClassName("com.mysql.jdbc.Driver");
        dataSource.setUrl("jdbc:mysql://localhost:3306/huterox");
        dataSource.setUsername("huterox");
        dataSource.setPassword("666666666");
        DruidPooledConnection connection = dataSource.getConnection();

        connection.close();

显然这玩意我们可以封装出一个工具类。但是,我们既然有Spring这玩意,那么我们就直接使用Spring管理不就完了嘛。

导入Spring

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.2.13.RELEASE</version>
        </dependency>

编写配置

提取参数

现在我们先把我们的配置提取出来
Spring配置Druid数据源_第1张图片

编写XML文件

然后编写XML配置文件,虽然一开始我很烦这个配置文件,毕竟当初从Django过来,那玩意清爽呀,和SpringBoot类似,不过比boot还爽。

这里我导入了context命名空间,然后就可以读取那个配置文件提取变量参数了

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
                           http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
                            ">


    <context:property-placeholder location="classpath:Druid.properties"/>
    <bean id="dataSource" class="${dataSource}">
        <property name="DriverClassName" value="${DriverClassName}"/>
        <property name="Url" value="${Url}"/>
        <property name="Username" value="${Username}"/>
        <property name="Password" value="${Password}"/>
    </bean>
</beans>

通过IOC容器获取Conncetion

public class Application {
    public static void main(String[] args) throws SQLException {
        ApplicationContext app = new ClassPathXmlApplicationContext("Application.xml");
        DataSource dataSource = app.getBean(DataSource.class);
        Connection connection = dataSource.getConnection();
        System.out.println(connection);
        connection.close();
    }
}

Spring配置Druid数据源_第2张图片

ok ~水完了

你可能感兴趣的:(JAVA后端,java)