1. 需求
要实现一个MES系统的web-API接口,MES系统是购买的商业软件,厂商的接口报价过高,因此由内部IT团队开发实现这个接口。考虑到系统的追溯性,因此设计一个中间库,第三方报工系统传过来的数据同时存放在中间库和MES系统里。
2. 设计实现
搜索查阅了很多博文及实验后,终于实现了多数据库的访问,调试时遇到了几个问题,在搜索后也找到了解决方案并修正。
实现思路是采用JavaConfig配合项目目录的方式,通过@EnableJpaRepositories注解的basePackages来指定对应的数据源
2 1. 项目目录结构如下
--src\项目基础目录
----JPA (对应数据库的Entities与Repositories)
------config
------DB1 (数据源1)
--------config
--------entities
--------repositories
------DB2 (数据源2)
--------config
--------entities
--------repositories
2.2. application.yml 或 application.properties
Spring:
datasource:
db1:
jdbc-url: <数据源url>
user: <数据库用户>
password: <数据库密码>
driver-class-name: <数据库驱动类名>
db2:
jdbc-url: <数据源url>
user: <数据库用户>