spring如何整合druid连接池?

目录

spring整合druid连接池

 1.新建maven项目

2.新建mavenModule

3.导入相关依赖

4.配置log4j2.xml

5.配置druid.xml

1)xml中如何引入properties

2)下面是配置文件

6.准备jdbc.properties

JDBC 配置项解释

7.配置druid

8.测试


spring整合druid连接池

 1.新建maven项目

  1. 打开IDE(比如IntelliJ IDEA, Eclipse等)。
  2. 选择新建项目
    1. 在IntelliJ IDEA中,选择File > New > Project
    2. 在Eclipse中,选择File > New > Maven Project
  3. 选择Maven项目模板
    1. 在IntelliJ IDEA中,选择Archetype选项卡,并搜索或选择一个适合Web应用的模板,如maven-archetype-webapp
    2. 在Eclipse中,勾选Create a simple project,然后选择一个合适的模板。
  4. 填写项目信息
    1. 组织ID (groupId):通常是逆域名形式,如com.example
    2. 艺术品ID (artifactId):项目的名称。
    3. 版本 (version):初始版本号,如1.0-SNAPSHOT
    4. 包装 (packaging):对于Web应用程序,可以选择war;对于普通Java应用程序,可以选择jar
  5. 完成创建:点击完成按钮,IDE将下载所需的依赖并创建项目。

spring如何整合druid连接池?_第1张图片

2.新建mavenModule

  1. 打开现有的Maven项目
  2. 添加新模块
    1. 在IntelliJ IDEA中,右键点击项目的根目录 -> New > Module... -> 选择Maven Module
    2. 在Eclipse中,右键点击项目的src/main/java目录 -> New > Other... -> 选择Maven类别下的Module
  3. 填写模块信息
    1. 组织ID (groupId):与主项目相同。
    2. 艺术品ID (artifactId):模块的名称。
    3. 版本 (version):与主项目相同。
    4. 包装 (packaging):根据模块的功能选择warjarpom
  4. 完成创建:点击完成按钮,IDE将创建新的模块。

spring如何整合druid连接池?_第2张图片

3.导入相关依赖

        首先,你需要添加Druid连接池的依赖。Druid是由阿里巴巴开发的一个高性能、功能丰富的Java数据库连接池组件。在pom.xml文件中添加如下依赖:

 

       
       
            org.springframework
            spring-context
            6.1.12

       
       
       
            junit
            junit
            4.12
            test
       

       

       
            org.apache.logging.log4j
            log4j-core
            2.23.1
       

       
            org.apache.logging.log4j
            log4j-slf4j2-impl
            2.23.1
       

       
       
            mysql
            mysql-connector-java
            8.0.33
       

       
            com.alibaba
            druid
            1.2.7
       

   

注:需要刷新一下maven

4.配置log4j2.xml

        配置log4j2.xml文件是为了能够控制日志输出的格式、级别、目标等。Log4j2是一个强大的日志框架,提供了丰富的特性来帮助开发者更好地管理和调试日志信息。下面是一个基本的log4j2.xml配置示例,用于设置日志的输出到控制台和文件。

在resource文件夹下配置log4j2.xml

spring如何整合druid连接池?_第3张图片


WARN">
    
        
        Console" target="SYSTEM_OUT">
            
            
        
        
        File" fileName="d:logs/app.log">
            
        
    
    
        
        debug">
            "Console"/>
            "File"/>
        
    


5.配置druid.xml

1)xml中如何引入properties

标签中加入

xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
        http://www.springframework.org/schema/context         http://www.springframework.org/schema/context/spring-context.xsd
        "

注:上述是为了引入外部文件,需要做的准备工作

2)下面是配置文件


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

    ">
        
    

    
 
  

6.准备jdbc.properties

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8
jdbc.username=root
jdbc.password=root
JDBC 配置项解释
  1. jdbc.driver: 这个配置指定了用于连接数据库的 JDBC 驱动类名称。在这个例子中,com.mysql.jdbc.Driver 指的是 MySQL 的 JDBC 驱动(也称为 MySQL Connector/J)。需要注意的是,如果你正在使用的是 MySQL Connector/J 8.x 或更高版本,正确的驱动类名应该是 com.mysql.cj.jdbc.Driver

  2. jdbc.url: 这个配置提供了连接到数据库的具体 URL 地址。在给定的例子中:

    1. jdbc:mysql://localhost:3306/ 表示连接到本地主机上运行的 MySQL 数据库实例,端口号为 3306。
    2. test 是要连接的数据库名称。
    3. ?useUnicode=true&characterEncoding=UTF-8 是附加的查询字符串参数,用来指定客户端与数据库之间的字符编码为 UTF-8。
  3. jdbc.username: 这是用于登录数据库的用户名。在这里,用户名为 root

  4. jdbc.password: 这是与用户名对应的密码。这里的密码是 root

spring如何整合druid连接池?_第4张图片

7.配置druid




    ${jdbc.driver}"/>
    ${jdbc.url}"/>
    ${jdbc.username}"/>
    ${jdbc.password}"/>

详细解释如下


这一行的作用是在 Spring 应用上下文中定义一个属性占位符处理器,该处理器会从类路径下的 jdbc.properties 文件中加载属性值。这样,可以在 XML 配置文件中使用 ${属性名} 的形式引用这些属性值。


这一行定义了一个名为 dataSource 的 Bean,其类型为 DruidDataSource。DruidDataSource 是阿里巴巴开源的一个高性能的 Java 数据库连接池组件。init-method="init" 和 destroy-method="close" 分别指定了在 Bean 初始化和销毁时调用的方法。

init-method="init": 当 Spring 容器创建这个 Bean 时,会在构造方法执行后调用 init 方法。
destroy-method="close": 当 Spring 容器销毁这个 Bean 时,会调用 close 方法来释放资源。



这一行设置了 DruidDataSource 的 driverClassName 属性,该属性指定了 JDBC 驱动的类名。这里的值通过 ${jdbc.driver} 引用了 jdbc.properties 文件中的 jdbc.driver 属性值。


这一行设置了 DruidDataSource 的 url 属性,该属性指定了数据库连接的 URL。同样地,这里通过 ${jdbc.url} 引用了 jdbc.properties 文件中的 jdbc.url 属性值。


这一行设置了 DruidDataSource 的 username 属性,该属性指定了数据库连接的用户名。通过 ${jdbc.username} 引用了 jdbc.properties 文件中的 jdbc.username 属性值。


这一行设置了 DruidDataSource 的 password 属性,该属性指定了数据库连接的密码。通过 ${jdbc.password} 引用了 jdbc.properties 文件中的 jdbc.password 属性值。

8.测试

import com.alibaba.druid.pool.DruidDataSource;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class DruidTest {

    @Test
    public void test() {

        /**
         * 加载指定配置
         */
        ApplicationContext context = new ClassPathXmlApplicationContext("druid.xml");

        //获取druid
        DruidDataSource dataSource = context.getBean(DruidDataSource.class);

        System.out.println(dataSource);

        System.out.println(dataSource.getUrl());
        System.out.println(dataSource.getUsername());
        System.out.println(dataSource.getPassword());
        System.out.println(dataSource.getDriverClassName());
    }
}
 

spring如何整合druid连接池?_第5张图片

你可能感兴趣的:(spring,spring,junit,数据库,java,idea,后端,xml)