mysql jdbc 多数据源_springboot多数据源(oracle、mysql)

2023-11-13

1、application.properties配置:

server.port=8085

server.tomcat.uri-encoding=utf-8

#MySQL

spring.datasource.primary.driver-class-name=com.mysql.jdbc.Driver

spring.datasource.primary.jdbc-url=jdbc:mysql://localhost:3306/test_spboot?characterEncoding=utf8

spring.datasource.primary.username=root

spring.datasource.primary.password=123456

#oracle

spring.datasource.secondary.driver-class-name=oracle.jdbc.driver.OracleDriver

spring.datasource.secondary.jdbc-url=jdbc:oracle:thin:@127.0.0.1:1521:XE

spring.datasource.secondary.username=user01

spring.datasource.secondary.password=user01

#视图层控制

spring.mvc.view.prefix=classpath:/templates/

spring.mvc.view.suffix=.html

spring.mvc.static-path-pattern=/static/**

2DataSourceConfig.java

package com.configuration;

import org.springframework.beans.factory.annotation.Qualifier;

import org.springframework.boot.context.properties.ConfigurationProperties;

import org.springframework.boot.jdbc.DataSourceBuilder;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

import org.springframework.context.annotation.Primary;

import org.springframework.jdbc.core.JdbcTemplate;

import javax.sql.DataSource;

@Configuration

public class DataSourceConfig {

@Bean(name = "primaryDataSource")

// @Qualifier("primaryDataSource")//原博主这里加上@Qualify 没有必要 删了也没有影响

@ConfigurationProperties("spring.datasource.primary")

public DataSource primaryDataSource() {

return DataSourceBuilder.create().build();

}

@Primary

@Bean(name = "secondaryDataSource")

// @Qualifier("secondaryDataSource") //原博主这里加上@Qualify 没有必要 删了也没有影响

@ConfigurationProperties("spring.datasource.secondary")

public DataSource secondaryDataSource() {

return DataSourceBuilder.create().build();

}

/**

* @param dataSource

* @return

* @Bean明确地指示了一种方法,什么方法呢——产生一个bean的方法, 并且交给Spring容器管理;从这我们就明白了为啥@Bean是放在方法的注释上了,

* 因为它很明确地告诉被注释的方法,你给我产生一个Bean,然后交给Spring容器,

* 实现依赖注入

*/

@Bean(name = "primaryJdbcTemplate")

public JdbcTemplate primaryTemplate(@Qualifier("primaryDataSource") DataSource dataSource) {

return new JdbcTemplate(dataSource);

}

@Bean(name = "secondaryJdbcTemplate")

public JdbcTemplate secondaryTemplate(@Qualifier("secondaryDataSource") DataSource dataSource) {

return new JdbcTemplate(dataSource);

}

}

3使用:

@Autowired

private JdbcTemplate secondaryJdbcTemplate

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mysql jdbc 多数据源_springboot多数据源(oracle、mysql) 的相关文章

  • 性能测试总结

    性能调优是什么 我们为什么要进行性能调优 主要是由以下几个点来考虑 1 编写的新应用上线前在性能上无法满足需求 这个时候需要对系统进行性能调优 2 应用系统在线上运行后随着系统数据量的不断增长 访问量的不断上升 系统的响应速度通常越来越慢
  • object-fit和object-position实现图片原比例裁剪不拉伸适应

    img标签的图片设置width 100 height 211px 默认图片拉伸或压缩以适应此宽高 原有 但是这样太丑了 所以我们需要把图片裁剪一下 让它不拉伸以原有比例填充屏幕 首先使用到object fit这个属性 objtct fit
  • 【统计模拟及其R实现】逆变换 / 筛选法 / 合成法 上机习题答案(超详细)

    课本 统计模拟及其R实现 肖枝红 朱强 武汉大学出版社 参考课件 第三章 随机数 浙江大学数学科学学院 目录 1 逆变换法 2 筛选法 3 合成法 1 逆变换法 题目1 用逆变换方法生成如下密度函数的随机变量 要求写出R程序 Cauchy概
  • 基于python的端口扫描(升级版)

    今天给大家带来一个用python写的端口扫描小程序 需要借助一个python的库 Scapy是一个强大的Python库 用于构建和发送网络数据包 以及对网络进行各种类型的分析和操作 pip install scapy 通过Scapy 您可以
  • modbus详尽中文资料、软件、代码

    modbus详尽中文资料 软件 代码
  • linux bootarg 数组,Linux启动bootargs参数分析

    Linux启动bootargs参数分析 Written by leeming 这几天刚好在看linux c语言启动 现在就顺便把内核在启动时解析bootargs这一块单独拎出来讲解下 内核对于bootargs的解析分为几块 1 setup
  • linux下使用C语言操作MYSQL数据库(API使用libmysqlclient-dev)

    文章目录 运行环境 一 准备工作 1 在Ubuntu上准备mysql开发环境 2 创建测试数据库与表 二 建立与mysql的连接 1 在C文件中引入头文件 2 初始化mysql与数据库的通道 3 与mysql建立真实连接 三 添加操作 CR
  • java - 锁粒度

    最近工作有个需求 需要加锁保证操作的原子性 但在一定程度上我想着可以根据业务类型对锁进行细化 于是简单的写了一个demo进行验证 先来看看synchronized的demo import java util concurrent Concu
  • 光敏传感器实验报告_光敏传感器光电特性研究实验报告.docx

    光敏传感器光电特性研究实验报告 光敏电阻光敏特性的研究 一 实验设计方案 实验目的 1 了解光敏电阻的基本特性 测出它的光照特性曲线 2 学习使用电脑实测 3 学习使用DataStudio软件 4 学习了解设计性实验的基本方法 实验原理 光
  • tkinter美化窗口

    今天 小编给大家带来一个很常见的问题 如何美化tkinter窗口 相信用过IDLE的小伙伴都深有感受 IDLE同样使用Tcl Tk写的 别人写的是这样 我们写的却是这样 大家对比一下 tkinter写英文还算可以 但是一写中文 他的问题就凸
  • 速通AOSP,成功编译调试Android源码

    今日科技快讯 近日据不少网友反馈 爱奇艺App开始对投屏功能作出限制 之前黄金VIP会员支持最高4K清晰度投屏 现在只能选最低的480P清晰度 要想进行4K投屏必须购买白金VIP会员 不少网友表示 480P清晰度太低 几乎无法观看 作者简介
  • 初代AIGC明星独角兽,停摆在大模型元年

    唏嘘 AIGC方兴未艾 但国内AIGC领域的昔日龙头独角兽 正站在风雨飘摇的悬崖边 影谱科技 初代目AIGC明星公司 被爆已经面临经营不善 运营停摆的窘境 这家成立于2009年的AI影像公司 一直专注大文娱产业 曾在D轮融资时以13 6亿人
  • 计算机网络(六)-传输介质

    一 传输介质 1 1 传输介质也称传输媒体 传输媒介 它就是数据传输系统中在发送设备和接收设备之间的物理通路 1 2 传输媒体并不是物理层 传输媒体在物理层的下面 因为物理层是体系结构的第一层 因此有时称传输媒体为第0层 1 3 传输媒体中
  • Unity3d目录Resources与StreamingAssets文件夹的区别

    1 Resources文件夹 Resources文件夹是一个只读的文件夹 通过Resources Load 来读取对象 因为这个文件夹下的所有资源都可以运行时来加载 所以Resources文件夹下的所有东西都会被无条件的打到发布包中 建议这
  • 炸裂了!3分钟用GPT4做一个PPT!

    GPT4有多强了 相信体验过的同学都知道 一个字爽 无论是速度 还是数据集还是功能都比3 5要强大很多 现在越来越多的人开始用GPT4了 可以大幅的提高我们的工作和学习的效率 今天小编就用GPT4快速做一个PPT 分享给大家 分分钟搞定 1
  • cobra 开启自动补全功能

    cobra 开启自动补全功能 因工作原因 需要将一个由 cobra 写的命令行工具 支持在 bash 和 zsh 环境开启命令行自动补全功能 网上搜了一圈 大部分都是把 cobra github 的介绍翻译一下就完了 而且没有对命令行补全的
  • 关于JAVA毕业设计三个选题推荐

    毕业设计是大学生学习生涯的最后一课 对未来职业发展有重要影响 因此 选题是一个需要慎重考虑的问题 本文将为大家推荐三个相关的JAVA毕业设计选题 希望能够给大家提供一定的参考和帮助 基于SSH框架的学生管理系统 学生管理系统是一个常见而且非
  • JsonView插件的使用

    由于谷歌浏览器经常打不开应用商店 还有就是安装第三方插件的办法 方法就如下 由于最近做和json相关的东西 所以 以jsonView插件为例分享一下 1 打开https github com 2 搜索 jsonView 链接 https g
  • class组件使用静态变量 并且通过react编译

    ok 这种情况直接使用 babelrc 然后 npm start 会出现下面err 我试着通过 babelrc 配置 presets babel preset env babel preset react plugins babel plu

随机推荐

  • Mysql学习笔记九--子查询

    1 mysql表子查询 子查询是指嵌入在其他sql语句中的select语句 也叫嵌套查询 单行子查询 指只返回一行数据的子查询语句 多行子查询 指返回多行数据的子查询 使用关键字 in 如何查询和部门10的工作相同的但是不包含10号部门自己
  • 多输入多输出

    多输入多输出 MATLAB实现BP神经网络多输入多输出预测 目录 多输入多输出 MATLAB实现BP神经网络多输入多输出预测 预测效果 基本介绍 程序设计 参考资料 预测效果
  • 服务的边界

    服务边界是服务拆分和集成的前提 1 识别业务领域及边界 当前主要方法论 领域驱动设计 领域可简单理解为特定的业务系统 其中主要的设计维度为策略维度和技术维度 待完善 2 界限上下文 就是根据界限 边界 确定上下文 具体的业务场景 3 服务边
  • css3 transform + deviceorientation实现图片旋转效果

    1 陀螺仪deviceorientation的使用 参考 关于陀螺仪deviceorientation https segmentfault com a 1190000007183883 2 transform各属性的具体使用 参考 深入理
  • 计算机组成原理——单周期CPU

    单周期CPU 项目代码 实验原理 MIPS指令 rom coe文件 代码 顶层模块SingleCycleCPU display外围模块 PC instructionMemory Alu模块 DataMemory ControlUnit 旧的
  • 排序(六):归并排序

    排序算法系列文章 排序 一 冒泡排序 排序 二 选择排序 排序 三 堆排序 排序 四 插入排序 排序 五 二分搜索 排序 六 归并排序 排序 七 快速排序 排序 八 希尔排序 目录 排序算法系列文章 归并排序 Merge Sort 基本思想
  • Python之文件的读写

    文章目录 前言 一 打开和关闭文件 open和close 1 打开文件 2 关闭文件 mode的方式 几种读取文件的函数 写入文件的函数 二 with open as操作文件 1 with open as与open close的区别 总结
  • Ubuntu部署OpenStack zed版本neutron报错:Feature ‘linuxbridge‘ is experimental and has to be explicitly enab

    系统版本 Ubuntu 22 04 1 LTS OpenStack版本 zed 组件 Neutron 组件报错内容 Feature linuxbridge is experimental and has to be explicitly e
  • GLSL中texture3D获得的值大小

    使用OpenGL的glTexImage3D 获得纹理数据 再在片元着色器对数据进行处理texture3D 得到的数据已被压缩到0 1 openGL函数glTexImage3D导入数据后 在GLSL中 数据被进行了压缩 glTexImage3
  • python3GUI--音乐播放器(精简版)By:PyQt5(附下载地址)

    文章目录 一 前言 二 预览 1 主界面 2 歌单页 3 歌词页 4 播放列表 5 mini 6 设置 三 心得 1 解耦 2 体验优化 3 歌词显示 4 双击歌曲后发生什么 四 总结 一 前言 传送门 1 python3GUI 打造一款音
  • 关于Linux下的pid文件

    1 pid文件的内容 用cat命令查看 可以看到内容只有一行 记录了该进程的ID 2 pid文件的作用防止启动多个进程副本 3 pid文件的原理进程运行后会给 pid文件加一个文件锁 只有获得pid文件 固定路径固定文件名 写入权限 F W
  • Elasticsearch聚合分析、mget批量查询、bulk批量更新

    Elasticsearch分组集合 一 分组聚合操作 开启fielddata属性 1 在ElasticSearch中默认fielddata默认是false的 因为开启Text的fielddata后对内存的占用很高 如果进行聚合查询时候就需要
  • Redfish协议测试工具–Postman

    1 工具和资料获取 2 简单使用说明 1 GET类举例 2 PATCH类举例 3 常见命令 1 工具和资料获取 Postman工具获取 服务器Redfish接口说明文档 使用前必读接口文档中 适用的产品 查看自己的服务器是否支持此协议 2
  • 简单sql注入

    报错注入找列数 确定为16 联合查询找回显点 查询数据库和数据库版本 版本为5 0以上 需要对查询的内容加密否则报错 结果不是需要的 查询所有的表 获得表名cms users 获得字段usename password 得到账号密码
  • 用java代码验证char类型数据占几个字节

    char为字符型数据 储存单个字符 但阿拉伯数字 英文字母 标点符号等皆为字符型数据 占用字节看似错综复杂 但是char也为脱离计算机基本 二进制储存机制 char本质上内存中皆存储字符编码 1 127为ASCII码 也就是常用的字符 但在
  • 关于iOS9中的App Transport Security(ATS)相关说明及适配

    iOS9中新增App Transport Security 简称ATS 特性 主要使到原来请求的时候用到的HTTP 都转向TLS1 2协议进行传输 这也意味着所有的HTTP协议都强制使用了HTTPS协议进行传输 原文如下 App Trans
  • VS2010:error C2061: 语法错误

    实例 类名 类中包含的头文件 point iostream line point flat flat line 输出错误 error C2061 语法错误 标识符 flat 解决办法 前置声明 line h class flat
  • 区块链读书笔记04 - 以太坊

    区块链读书笔记04 以太坊 以太坊 Ethereum 以太坊关键概念 账户 Account 交易 Transaction 消息 Messsage Gas 合约 contract 以太坊虚拟机 EVM DApp 去中心化应用 以太坊架构 以太
  • 网站域名服务器加密,网站域名利用https防劫持方法

    原标题 网站域名利用https防劫持方法 公共 DNS HttpDNS 的部署成本过高 并且具有一定的技术门槛 在面对无孔不入的 DNS 劫持时有时候其实有点力不从心 那么如何简单有效低成本的加强域名防劫持呢 只需要给网站开启 HTTPS
  • mysql jdbc 多数据源_springboot多数据源(oracle、mysql)

    1 application properties配置 server port 8085 server tomcat uri encoding utf 8 MySQL spring datasource primary driver clas