如何在springboot中使用多个数据库呢?
首先,需要在application.property文件中配置不同的数据源。
然后,通过@Configuration标签将application.property文件中的信息加载到springboot中。
使用到的标签:
(1)@Configuration的作用:定义配置类,加载到springboot中。
(2)@ConfigurationProperties的作用:获取配置文件中的信息,并封装成实体类(可以和@Bean一起使用)。
(3)@Primary的作用:在众多相同的bean中,优先使用用@Primary注解的bean。在配置多个数据源的时候,至少要有一个@Primary修饰,否则会会报错。(具体原因我也不是很了解,参考链接https://www.liaoxuefeng.com/article/001484212576147b1f07dc0ab9147a1a97662a0bd270c20000)
最后,使用jdbcTemplate查询的时候,要用哪一个数据库,使用哪一个数据源就可以了。
GitHub地址在:https://github.com/sunjiming/spring_DataSources.git
为了保证Demo直击运行,数据库,表,数据的创建请执行下面的代码就可以,另外别忘记在application.property中,修改数据库用户名和密码。
CREATE DATABASE ds1;
CREATE TABLE `ds1` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(200) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8;
INSERT INTO ds1 VALUES(1,'sun'),(2,'li'),(3,'liang')
CREATE DATABASE ds2;
CREATE TABLE `ds2` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`age` INT(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8
INSERT INTO ds2 VALUE (2,10);
领取专属 10元无门槛券
私享最新 技术干货