spring boot 整合多数据源JDBC、多数据源mybatis、多数据源springdata jpa
目录
代码地址:(spring-boot github地址)
1、springboot整合JDBC
2、springboot整合mybatis
3、springboot整合springdata jpa
1、springboot整合jdbc
在application.properties中配置数据库链接信息
#数据源1 spring.datasource.one.type = com.alibaba.druid.pool.DruidDataSource spring.datasource.one.username = root spring.datasource.one.password = root spring.datasource.one.url = jdbc:mysql://localhost/chapter01?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC#数据源2 spring.datasource.two.type = com.alibaba.druid.pool.DruidDataSource spring.datasource.two.username = root spring.datasource.two.password = root spring.datasource.two.url = jdbc:mysql://localhost/chapter02?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
配置Datasource
@Configuration public class DataSourceConfig {@Bean("dataSourceOne")@ConfigurationProperties("spring.datasource.one")public DataSource dataSourceOne() {return DruidDataSourceBuilder.create().build();}@Bean("dataSourceTwo")@ConfigurationProperties("spring.datasource.two")public DataSource dataSourceTwo() {return DruidDataSourceBuilder.create().build();} }
配置JdbcTemplate
@Configuration public class JdbcConfiguration {@Bean("jdbcTemplateOne")public JdbcTemplate jdbcTemplateOne(@Qualifier("dataSourceOne") DataSource dataSource) {return new JdbcTemplate(dataSource);}@Bean("jdbcTemplateTwo")public JdbcTemplate jdbcTemplateTwo(@Qualifier("dataSourceTwo") DataSource dataSource) {return new JdbcTemplate(dataSource);} }
创建实体
public class User {private String id;private String name;private String age;public String getId() {return id;}public void setId(String id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getAge() {return age;}public void setAge(String age) {this.age = age;} }
创建dao层
@Repository public class UserDao {@Resource(name = "jdbcTemplateOne")private JdbcTemplate jdbcTemplateOne;@Resource(name = "jdbcTemplateTwo")private JdbcTemplate jdbcTemplateTwo;public void save(User user) {jdbcTemplateOne.update("insert into user (name,age) values (?,?)",user.getName(),user.getAge());jdbcTemplateTwo.update("insert into user (name,age) values (?,?)",user.getName(),user.getAge());}public void getList() {List<User> user1 = jdbcTemplateOne.query("select * from user",new BeanPropertyRowMapper<>(User.class));List<User> user2 = jdbcTemplateTwo.query("select * from user",new BeanPropertyRowMapper<>(User.class));System.out.println("user1:" + user1);System.out.println("user2:" + user2);} }
创建 controller
@RestController public class UserController {@Autowiredprivate UserDao userDao;@GetMapping("/save")public void save() {User user = new User();user.setName("张三");user.setAge("20");userDao.save(user);user = new User();user.setName("李四");user.setAge("20");userDao.save(user);}@GetMapping("/get")public void get() {userDao.getList();} }
以上就是jdbc多数据源配置。mybatis、springdata jpa多数据源配置与其类似。
我的github地址上都有单独的工程讲解,可以去参考:https://github.com/FadeHub/spring-boot-learn
spring boot 整合多数据源JDBC、多数据源mybatis、多数据源springdata jpa相关推荐
- Spring Boot整合Jpa多数据源
Spring Boot整合Jpa多数据源 本文是Spring Boot整合数据持久化方案的最后一篇,主要和大伙来聊聊Spring Boot整合Jpa多数据源问题.在Spring Boot整合JbdcT ...
- Spring Boot 整合 MyBatis Plus实现多数据源的两种方式
第一种:使用配置类的方式: 项目结构 xml依赖: <?xml version="1.0" encoding="UTF-8"?> <proje ...
- Spring Boot 整合Redis 实现缓存
本文提纲 一.缓存的应用场景 二.更新缓存的策略 三.运行 springboot-mybatis-redis 工程案例 四.springboot-mybatis-redis 工程代码配置详解 运行环境 ...
- spring boot 系列之四:spring boot 整合JPA
上一篇我们讲了spring boot 整合JdbcTemplate来进行数据的持久化, 这篇我们来说下怎么通过spring boot 整合JPA来实现数据的持久化. 一.代码实现 修改pom,引入依赖 ...
- spring boot整合mybatis步骤
spring boot整合mybatis步骤 官方说明:MyBatis-Spring-Boot-Starter will help you use MyBatis with Spring Boot 其 ...
- Spring Boot 整合 Redis 实现缓存操作
摘要: 原创出处 www.bysocket.com 「泥瓦匠BYSocket 」欢迎转载,保留摘要,谢谢! 『 产品没有价值,开发团队再优秀也无济于事 – <启示录> 』 本文提纲 一.缓 ...
- Spring Boot(十四):spring boot整合shiro-登录认证和权限管理
Spring Boot(十四):spring boot整合shiro-登录认证和权限管理 使用Spring Boot集成Apache Shiro.安全应该是互联网公司的一道生命线,几乎任何的公司都会涉 ...
- druid监控页面_Spring boot学习(四)Spring boot整合Druid
前言 在上一篇博客中我们介绍了Spring boot配置Mybatis,但是并没有配置连接池,这在实际开发过程中肯定是不切实际的,多次的数据库连接会给程序和数据库都带来没必要的负担,这一篇博客我将介绍 ...
- Spring Boot整合Shiro + Springboot +vue
目录 02 Spring Boot整合Shiro p1.shiro概述 1 什么是Shiro 2 Shiro核心组件 p2.Shiro实现登录认证 AccountRealm.java QueryWra ...
- Spring Boot 整合MyBatis(23)
Spring Boot 整合MyBatis Spring Boot 整合 Druid 引入依赖 配置 application.yml pring Boot 整合 tk.mybatis 引入依赖 配置 ...
最新文章
- 错误消息“禁止您没有访问此服务器上的权限/”(关闭)
- (转)Unity3D研究院之手游开发中所有特殊的文件夹(assetbundle与Application.persistentDataPath)...
- 用浏览器管理 Docker
- Microsoft MVC Preview 2 ActionFilterAttribute实际开发中的应用
- .net core中使用autofac进行IOC
- [重磅,建议收藏]JAVA集合框架中的常用集合及其特点、适用场景、实现原理简介...
- PAT乙级.1013.数素数
- android 中国市场份额 2015,2015年安卓芯片市场分析:不再一家独大
- html5网页设计作业代码 大学生校园网站制作 学校官网制作html
- 网站、手机验证码开发(手机注册验证)
- python应用体系_Python金融应用之基金业绩评价体系构建
- 【EduCoder答案】HTML——表单类的标签
- Ansible最佳实践之委派任务和事实
- axios.post发送小数据可以,但发送大数据出现Cross origin requests are only supported for protocol schemes: http, data,
- MTK MT6771处理器,helio P60芯片参考资料
- Web前端学习第四周
- 图片情感分析(1):图像数据预处理
- 【最大似然估计】详解概率论之最大似然估计
- C#中什么是类,类和对象的关系,类的访问修饰符?
- strip和stripe
热门文章
- mybatis foreach 错误_MyBatis高级结果映射之一对一映射
- 音高和基频(Pitch and F0)
- FPGA笔记(1)-逻辑代数与逻辑电路基础
- mxnet基础到提高(43)-编译安装
- 新书首发 | 《机器学习 公式推导与代码实现》正式出版!(文末送书)
- 深度强化学习入门介绍
- 【论文解读】​YOLOX: Exceeding YOLO Series in 2021
- 【NLP】关于Transformer的常见问题及解答
- 【论文解读】这篇顶会paper,讲述了疫情期间憋疯的你和我
- 【深度学习】Github上标星1.1W的PyTorch教程,我们给您搬来了