Springboot多数据源+Jpa配置
随着业务复杂程度的增加,单一数据源越来越不满足具体的业务逻辑以及实现。
这里我用到了MySQL和Presto两种数据源:
多数据源配置GlobalDataSourceConfiguration:
@Configuration
public class GlobalDataSourceConfiguration {@Bean(name = "prestoDataSource")@ConfigurationProperties(prefix = "spring.datasource.presto")public DataSource prestoDataSource() {return DataSourceBuilder.create().build();}@Bean(name = "mysqlDataSource")@Primary@ConfigurationProperties(prefix = "spring.datasource.mysql")public DataSource mysqlDataSource() {return DataSourceBuilder.create().build();}@Bean(name = "prestoTemplate")public JdbcTemplate prestoJdbcTemplate(@Qualifier("prestoDataSource") DataSource prestoDataSource) {return new JdbcTemplate(prestoDataSource);}@Bean(name = "mysqlTemplate")public JdbcTemplate mysqlJdbcTemplate(@Qualifier("mysqlDataSource") DataSource mysqlDataSource) {return new JdbcTemplate(mysqlDataSource);}
}
JdbcTemplate 在使用的时候可以采用这种方式:
@Autowired
@Qualifier("prestoTemplate")
private JdbcTemplate prestoTemplate;@Autowired
@Qualifier("mysqlTemplate")
private JdbcTemplate mysqlTemplate;
因我的项目中只需要使用jpa连接MySQL,所以是单数据源的Jpa配置:
spring.jpa.database=MySQL
spring.jpa.hibernate.ddl-auto=create-drop
spring.jpa.show-sql=false
spring.jpa.open-in-view=false
spring.jpa.properties.hibernate.hbm2ddl.auto=update
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
单数据源的jpa不需要其他配置,直接开始写Repository接口即可:
@Repository
public interface JobEntityRepository extends JpaRepository<JobEntity,Long> {JobEntity getById(Integer id);Page<JobEntity> findAll(Specification<Model> sp, Pageable pageable);
}
网上有很多jpa配置多数据源的文章,例如:
https://www.cnblogs.com/ll409546297/p/10496346.html
https://blog.csdn.net/lianghecai52171314/article/details/106724531/
我使用上面文章介绍的方法,将MySQL单数据源配置了成Primary主数据源,反而出现很多报错,目前还不清楚报错的原因。
Springboot多数据源+Jpa配置相关推荐
- SpringBoot+ElasticSearch7.x+JPA配置多数据源
SpringBoot+ElasticSearch7.x+JPA配置多数据源 这里分为测试环境配置和正式环境配置,大体相差无几 ESTestConfig 1 @Configuration2 @Confi ...
- springboot多数据源如何配置驼峰映射或配置文件不起作用的问题
最近在弄java的多数据源项目,需要进行驼峰的映射,然后我在application.properties文件中加了如下配置: mybatis.configuration.map-underscore- ...
- springboot2+JPA 配置多数据源(不同类型数据库)
注意:看此篇文章之前,springboot+jpa的配置环境应搭建好,不会搭可以自行百度.本文章主要讲述配置JPA多数据源. 1.数据源配置文件 application.properties # 数据 ...
- 看完这篇,搞定SpringBoot多数据源
添加多数据源配置 spring.datasource.platform.jdbc-url=jdbc:mysql://localhost:3306/platform spring.datasource. ...
- springboot jpa 配置多数据源
jpa 多数据源配置 多个 mysql 数据库配置 springboot jpa 配置多数据源其实也并不难,只需要在 properties 或者 yml中简单配置并在项目中引入配置即可. 下面以 ym ...
- SpringBoot JPA配置多数据源(同类型库)教程
SpringBoot项目配置多数据源主要分为以下个步骤: 确定好所连接的数据库的资源(包括url username password) 将两个库的信息写入到配置文件中(application.yaml ...
- springboot jpa 配置多数据源报错解决 Consider defining a bean named ‘entityManagerFactory‘
版本 springboot 2.6.x 现象 jpa配置多数据源后启动报错 Consider defining a bean named 'entityManagerFactory' 解决 方法1:将 ...
- SpringBoot JPA 配置多个数据库
SpringBoot JPA 配置多个数据库 一.application.yml : 二.创建一个SpringBoot配置类 三.primary数据源的JPA配置 四.secondary数据源的JPA ...
- jpa 连接多个mysql 数据库_springboot环境jpa配置多个数据源流程
一 简介 开发过程中,我们都需要和数据库打交道,小项目一个数据库就可以,代码也比较简单,只要连接一个数据库,本文中,由于业务需求,我们需要连接另一个库去查询数据,因此要对旧版本(只实现连接一个库的jp ...
最新文章
- uniapp android原生,在uni-app项目中集成Android原生工程
- 【Kotlin】Kotlin 抽象类与接口 ( 接口声明 | 接口实现 | 抽象类声明与实现 )
- HDU1402 A * B Problem Plus(FFT)
- Ansible管理节点过多导致的超时问题解决方法
- eclipse自动排版JSP问题
- 改变定时器获取传感器频度_广东梅州梅县压力传感器*校对
- 如何在MyEclipse中建立一个代理服务器
- 块存储性能--阿里云ECS磁盘
- python循环三次跳出循环_Python3 跳出多重循环 for...else...
- NRF52832学习笔记
- Rtsp之rtp包解析
- java 串行化 序列化_对象串行化 对象序列化
- 怎么使用计算机操作鼠标,鼠标操作怎么用?电脑鼠标操作图文教程
- 小米平板2可以装鸿蒙系统,详细教程!教你小米平板2轻松刷Win10
- 二、【玩转 华为Atlas200 DK】之连接电脑和Atlas 200
- android 蓝牙连接rtk,基于Android手机的RTK手簿软件设计与实现
- 无人机在抢险救灾的优化运用---2017年中国研究生数学建模竞赛A题 (试题+优秀论文)
- Android内存优化总结
- 7-13 查找奥运五环色的位置 (10分)
- ROS Error: [rospack] Error: package ‘map_server‘ not found