`
qingyu11068
  • 浏览: 67697 次
文章分类
社区版块
存档分类
最新评论

spring cloud 配置阿里数据库连接池 druid

 
阅读更多

 1.配置pom

	    <!-- druid 数据库连接池  -->
	    <dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>druid</artifactId>
			<version>1.1.12</version>
			<exclusions>  
		        <exclusion>  
		            <groupId>com.alibaba</groupId>  
		            <artifactId>jconsole</artifactId>  
		        </exclusion>  
		        <exclusion>  
		            <groupId>com.alibaba</groupId>  
		            <artifactId>tools</artifactId>  
		        </exclusion>  
		    </exclusions>
		</dependency>

2.配置 application.properties

#druid连接池
spring.datasource.type: com.alibaba.druid.pool.DruidDataSource
#最大活跃数
spring.datasource.maxActive: 20
#初始化数量
spring.datasource.initialSize: 1
#最大连接等待超时时间
spring.datasource.maxWait: 60000
#打开PSCache,并且指定每个连接PSCache的大小
spring.datasource.poolPreparedStatements: true
spring.datasource.maxPoolPreparedStatementPerConnectionSize: 20
#通过connectionProperties属性来打开mergeSql功能;慢SQL记录
#connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
spring.datasource.minIdle: 1
spring.datasource.timeBetweenEvictionRunsMillis: 60000
spring.datasource.minEvictableIdleTimeMillis: 300000
spring.datasource.validationQuery: select 1 from dual
spring.datasource.testWhileIdle: true
spring.datasource.testOnBorrow: false
spring.datasource.testOnReturn: false
#配置监控统计拦截的filters,去掉后监控界面sql将无法统计,'wall'用于防火墙
filters: stat, wall, log4j

3.Config配置类



/**
 * 说明:第一数据源配置
 * 作者:FH
 * from:fhadmin.cn
 */
@Configuration
@MapperScan(basePackages = MasterDataSourceConfig.PACKAGE, sqlSessionFactoryRef = "masterSqlSessionFactory") //扫描 Mapper 接口并容器管理
public class MasterDataSourceConfig {

    static final String PACKAGE = "org.fh.mapper.dsno1";								//master 目录
    static final String MAPPER_LOCATION = "classpath:mybatis/dsno1/*/*.xml";			//扫描的 xml 目录
    static final String CONFIG_LOCATION = "classpath:mybatis/dsno1/mybatis-config.xml"; //自定义的mybatis config 文件位置
    static final String TYPE_ALIASES_PACKAGE = "org.fh.entity"; 						//扫描的 实体类 目录
 
    @Value("${datasource.no1.url}")
    private String url;
 
    @Value("${datasource.no1.username}")
    private String user;
 
    @Value("${datasource.no1.password}")
    private String password;
 
    @Value("${datasource.no1.driver-class-name}")
    private String driverClass;
 
    @Bean(name = "masterDataSource")
    @Primary
    public DataSource masterDataSource() {
        DruidDataSource dataSource = new DruidDataSource();
        dataSource.setDriverClassName(driverClass);
        dataSource.setUrl(url);
        dataSource.setUsername(user);
        dataSource.setPassword(password);
        return dataSource;
    }
 
    @Bean(name = "masterTransactionManager")
    @Primary
    public DataSourceTransactionManager masterTransactionManager() {
        return new DataSourceTransactionManager(masterDataSource());
    }
 
    @Bean(name = "masterSqlSessionFactory")
    @Primary
    public SqlSessionFactory masterSqlSessionFactory(@Qualifier("masterDataSource") DataSource masterDataSource)throws Exception {
        final SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
        sessionFactory.setDataSource(masterDataSource);
        sessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(MasterDataSourceConfig.MAPPER_LOCATION));
        sessionFactory.setConfigLocation(new DefaultResourceLoader().getResource(MasterDataSourceConfig.CONFIG_LOCATION));
        sessionFactory.setTypeAliasesPackage(MasterDataSourceConfig.TYPE_ALIASES_PACKAGE);
        return sessionFactory.getObject();
    }
}
wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==
0
0
分享到:
评论

相关推荐

    Druid数据库连接池及内置监控的配置和使用.zip

    Druid是一个高效、强大且灵活的数据库连接池组件,它由阿里巴巴开源并广泛应用于各种Java Web项目中。...通过阅读提供的资源“2019-6-27_Druid数据库连接池及内置监控的配置和使用”,您可以获得更详尽的实践指导。

    springcloud+druid+mybatisPlus+nacos配置中心

    `Spring Cloud`框架则提供了完整的微服务解决方案,而`Druid`是一个强大的数据库连接池,`MybatisPlus`是`Mybatis`的扩展工具,简化了对数据库的操作。接下来,我们将深入探讨这些技术及其整合。 **Spring Cloud ...

    spring cloud + vue + oAuth2.0全家桶实战

    spring cloud + vue + oAuth2.0全家桶实战,...数据库连接池:Alibaba Druid 日志管理:Logback 前端框架:Vue全家桶以及相关组件 三方服务: 邮件服务、阿里云短信服务、七牛云文件服务、钉钉机器人服务、高德地图API

    Spring Cloud 实战项目

    功能点: 模拟商城,完整的购物流程、后端运营平台对前端业务的支撑,和对项目的运维,有各项的监控指标和运维指标。 技术点: 核心技术为springcloud+vue两个... 数据库连接池:Alibaba Druid 日志管理:Logback 前

    spring cloud dubbo整合

    本项目将这两者进行了整合,同时引入了MyBatis作为持久层框架,Druid作为数据库连接池,以及Generator进行代码生成,以提高开发效率和系统的可维护性。 首先,Spring Cloud Dubbo整合的关键在于Spring Cloud ...

    Spring-Mybatis-Druid示例整合Demo

    3. **Druid数据库连接池**:Druid是阿里巴巴开源的数据库连接池,它具有优秀的性能和丰富的监控功能。Druid提供了一系列的扩展点,如StatFilter(统计过滤器)、WallFilter(防火墙过滤器)等,用于监控数据库的运行...

    springcloud技术点

    - **Druid**:高性能数据库连接池。 - **Swagger**:API文档工具。 - **Docker**:容器化技术,便于部署和隔离服务。 这些技术点涵盖了从前端展示到后端服务,从数据存储到服务治理的各个方面,为构建健壮的企业...

    springcloud全家桶(eureka+ribbon+feign+hystrix+turbine)

    spring-cloud微服务框架...mybatis, pageHelper (分页), druid (连接池) redis(序列化采用的是jdk默认序列化方案) slf4j & logback(及其配置) 国际化配置 全局错误信息catch 线程池 服务健康检查, 服务全链路健康检查

    springcloud提供者demo

    而“连接池”则指的是数据库连接池,如HikariCP、Druid或C3P0等,它们可以有效地管理数据库连接,提高系统的并发性能和资源利用率。 最后,"注册中心(eureka)"是SpringCloud生态中的重要组件,用于服务发现和服务...

    springcloud.zip

    全链路traceId追踪 velocity 前端模板 mybatis, pageHelper (分页), druid (连接池) redis(序列化采用的是jdk默认序列化方案) slf4j & logback(及其配置) 国际化配置 全局错误信息catch 线程池 服务健康检查, 服务...

    springboot+mybatis+druid.zip

    三、Druid数据库连接池 Druid是阿里巴巴开源的一个数据库连接池实现,它包含了一个强大的监控功能,能够提供包括SQL解析、执行计划可视化的全方位数据库运行状态监控。Druid在性能、功能和稳定性方面都有出色的表现...

    基于SpringBoot + Spring Cloud Alibaba的微服务.zip

    - 数据库连接池:Alibaba Druid - 数据库缓存:Redis Sentinel - 消息中间件:RocketMQ - 接口文档引擎:Swagger2 RESTful 风格 API 文档生成 - 全文检索引擎:ElasticSearch - 分布式链路追踪:SkyWalking - 分布式...

    SpringCloudSchedule定时任务

    1. 配置数据库连接池,如HikariCP或Druid,以优化数据库连接管理。 2. 考虑异常处理,确保在任务执行过程中遇到错误时能及时通知并处理。 3. 如果定时任务涉及到大量数据操作,可能需要考虑分批处理,避免一次性加载...

    基于springcloud+vue+oAuth2.0全家桶实战并实现前后端分离模拟商城.zip

    基于springcloud+vue+oAuth2.0全家桶实战... 数据库连接池:Alibaba Druid 日志管理:Logback 前端框架:Vue全家桶以及相关组件 三方服务: 邮件服务、阿里云短信服务、七牛云文件服务、钉钉机器人服务、高德地图API

    基于Spring Cloud的微服务博客系统.zip

    - **Druid**:数据库连接池 - **RabbitMQ**:消息队列 - **LogStash**:日志收集工具 ### 数据库 - **MySQL**:关系型数据库 ### 前端 - **Vue**:前端框架 - **Element**:UI组件库 ### 服务器 - **CentOS 7**:...

    springCloud.docx

    该配置文件中指定了服务端口、MyBatis 配置、数据库连接池参数以及 Eureka 服务发现客户端配置等关键信息,为微服务应用提供了基础支撑。 #### 数据访问层实现 通过提供的代码片段,我们可以看到一个简单的 DAO ...

    springboot druid maven多数据源(mysql+SqlServer)

    本项目将介绍如何在SpringBoot项目中结合Maven构建一个支持多数据源的系统,特别是如何处理MySQL和SQLServer两种不同的数据库类型,并使用Druid作为数据源连接池。 首先,我们需要理解“多数据源”这一概念。多数据...

    Springcloud-面试自整理

    -- 连接池 --&gt; &lt;groupId&gt;com.alibaba&lt;/groupId&gt; &lt;artifactId&gt;druid ${druid.version} ``` 2. **子模块开发** 在父项目的基础上,可以根据需要添加多个子模块,每个子模块负责不同的功能。例如,...

    Spring boot+druid 实现SQL监控

    本文使用Druid的连接池,然后配置Druid的相关属性,完成对Spring web工程的JDBC监控。 其实,我采用Druid替换其它连接池,最关键的一个理由是Druid有对SQL执行的监控统计功能。 druid 实现 SQL、URI 等监控

    基于SpringCloud+Oauth2+MyBatis+ES+Docker+Kubernetes的商城系统项目源码数据.rar

    基于SpringCloud+Oauth2+MyBatis+Elasticsearch+Docker+Kubernetes的商城系统项目源码+数据 ...数据库连接池: Druid 定时任务:xxl-job 对象存储: OSS、MINIO 全局事务管理框架:Seata 应用容器引擎: Docker 可视化D

Global site tag (gtag.js) - Google Analytics