- 浏览: 3507295 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (1491)
- Hibernate (28)
- spring (37)
- struts2 (19)
- jsp (12)
- servlet (2)
- mysql (24)
- tomcat (3)
- weblogic (1)
- ajax (36)
- jquery (47)
- html (43)
- JS (32)
- ibatis (0)
- DWR (3)
- EXTJS (43)
- Linux (15)
- Maven (3)
- python (8)
- 其他 (8)
- JAVASE (6)
- java javase string (0)
- JAVA 语法 (3)
- juddiv3 (15)
- Mule (1)
- jquery easyui (2)
- mule esb (1)
- java (644)
- log4j (4)
- weka (12)
- android (257)
- web services (4)
- PHP (1)
- 算法 (18)
- 数据结构 算法 (7)
- 数据挖掘 (4)
- 期刊 (6)
- 面试 (5)
- C++ (1)
- 论文 (10)
- 工作 (1)
- 数据结构 (6)
- JAVA配置 (1)
- JAVA垃圾回收 (2)
- SVM (13)
- web st (1)
- jvm (7)
- weka libsvm (1)
- weka屈伟 (1)
- job (2)
- 排序 算法 面试 (3)
- spss (2)
- 搜索引擎 (6)
- java 爬虫 (6)
- 分布式 (1)
- data ming (1)
- eclipse (6)
- 正则表达式 (1)
- 分词器 (2)
- 张孝祥 (1)
- solr (3)
- nutch (1)
- 爬虫 (4)
- lucene (3)
- 狗日的腾讯 (1)
- 我的收藏网址 (13)
- 网络 (1)
- java 数据结构 (22)
- ACM (7)
- jboss (0)
- 大纸 (10)
- maven2 (0)
- elipse (0)
- SVN使用 (2)
- office (1)
- .net (14)
- extjs4 (2)
- zhaopin (0)
- C (2)
- spring mvc (5)
- JPA (9)
- iphone (3)
- css (3)
- 前端框架 (2)
- jui (1)
- dwz (1)
- joomla (1)
- im (1)
- web (2)
- 1 (0)
- 移动UI (1)
- java (1)
- jsoup (1)
- 管理模板 (2)
- javajava (1)
- kali (7)
- 单片机 (1)
- 嵌入式 (1)
- mybatis (2)
- layui (7)
- asp (12)
- asp.net (1)
- sql (1)
- c# (4)
- andorid (1)
- 地价 (1)
- yihuo (1)
- oracle (1)
最新评论
-
endual:
https://blog.csdn.net/chenxbxh2 ...
IE6 bug -
ice86rain:
你好,ES跑起来了吗?我的在tomcat启动时卡在这里Hibe ...
ES架构技术介绍 -
TopLongMan:
...
java public ,protect,friendly,private的方法权限(转) -
贝塔ZQ:
java实现操作word中的表格内容,用插件实现的话,可以试试 ...
java 读取 doc poi读取word中的表格(转) -
ysj570440569:
Maven多模块spring + springMVC + JP ...
Spring+SpringMVC+JPA
java支持多数据源
- 博客分类:
- java
spxcms是否支持多数据源?
文档 > 二次开发 2019-04-30 12:56 阅读855
首先要确定多数据源是指什么。
如果多数据源是指系统中的表分别放到不同数据库里(比如,栏目表cms_node放到A数据库,文章表cms_info放到B数据库),这种情况是不支持的。
如果是系统中的表放到一个数据库里,但还希望通过二次开发从其它数据库里读取一些数据,这种情况是可以的。
Jspxcms系统中使用的框架是spring-boot、spring-data-jpa。本质上说,是否支持多数据源只和这些框架有关,和系统本身无关。spring-boot官方文档里有介绍多个数据源的配置方法 https://docs.spring.io/spring-boot/docs/1.5.20.RELEASE/reference/htmlsingle/#howto-two-datasources ,网上也有大量的教程。
修改数据库连接配置
配置文件src/main/resources/application.properties。
将默认数据库配置的spring.datasource前缀改为app.datasource.first,另外再创建第二个数据源app.datasource.second。
#spring.datasource.url=jdbc:mysql://localhost/jspxcms?characterEncoding=utf8
#spring.datasource.username=root
#spring.datasource.password=password
#spring.datasource.driver-class-name=com.mysql.jdbc.Driver
app.datasource.first.url=jdbc:mysql://localhost/jspxcms?characterEncoding=utf8
app.datasource.first.username=root
app.datasource.first.password=password
app.datasource.first.driver-class-name=com.mysql.jdbc.Driver
app.datasource.second.url=jdbc:mysql://localhost/second_database?characterEncoding=utf8
app.datasource.second.username=root
app.datasource.second.password=password
app.datasource.second.driver-class-name=com.mysql.jdbc.Driver
增加数据源配置代码
在Java配置文件中增加数据源配置代码com.jspxcms.core.Application。第二个数据源使用JdbcTemplate访问数据。
@Bean
@Primary
@ConfigurationProperties("app.datasource.first")
public DataSourceProperties dataSourceProperties() {
return new DataSourceProperties();
}
@Bean
@Primary
@ConfigurationProperties("app.datasource.first")
public DataSource dataSource() {
return dataSourceProperties().initializeDataSourceBuilder().build();
}
@Bean
@ConfigurationProperties("app.datasource.second")
public DataSourceProperties secondDataSourceProperties() {
return new DataSourceProperties();
}
@Bean
@ConfigurationProperties("app.datasource.second")
public DataSource secondDataSource() {
return secondDataSourceProperties().initializeDataSourceBuilder().build();
}
@Bean
public JdbcTemplate jdbcTemplate() {
return new JdbcTemplate(secondDataSource());
}
使用范例
至此多个数据源配置完成。使用范例如下:
@Controller
public class MyController {
@GetMapping("/second_data_source")
public String index(HttpServletRequest request, org.springframework.ui.Model modelMap) {
List<Map<String, Object>> data = jdbcTemplate.queryForList("select * from my_table");
for (Map<String, Object> d : data) {
System.out.println(d.get("my_field"));
}
}
@Autowired
private JdbcTemplate jdbcTemplate;
}
文档 > 二次开发 2019-04-30 12:56 阅读855
首先要确定多数据源是指什么。
如果多数据源是指系统中的表分别放到不同数据库里(比如,栏目表cms_node放到A数据库,文章表cms_info放到B数据库),这种情况是不支持的。
如果是系统中的表放到一个数据库里,但还希望通过二次开发从其它数据库里读取一些数据,这种情况是可以的。
Jspxcms系统中使用的框架是spring-boot、spring-data-jpa。本质上说,是否支持多数据源只和这些框架有关,和系统本身无关。spring-boot官方文档里有介绍多个数据源的配置方法 https://docs.spring.io/spring-boot/docs/1.5.20.RELEASE/reference/htmlsingle/#howto-two-datasources ,网上也有大量的教程。
修改数据库连接配置
配置文件src/main/resources/application.properties。
将默认数据库配置的spring.datasource前缀改为app.datasource.first,另外再创建第二个数据源app.datasource.second。
#spring.datasource.url=jdbc:mysql://localhost/jspxcms?characterEncoding=utf8
#spring.datasource.username=root
#spring.datasource.password=password
#spring.datasource.driver-class-name=com.mysql.jdbc.Driver
app.datasource.first.url=jdbc:mysql://localhost/jspxcms?characterEncoding=utf8
app.datasource.first.username=root
app.datasource.first.password=password
app.datasource.first.driver-class-name=com.mysql.jdbc.Driver
app.datasource.second.url=jdbc:mysql://localhost/second_database?characterEncoding=utf8
app.datasource.second.username=root
app.datasource.second.password=password
app.datasource.second.driver-class-name=com.mysql.jdbc.Driver
增加数据源配置代码
在Java配置文件中增加数据源配置代码com.jspxcms.core.Application。第二个数据源使用JdbcTemplate访问数据。
@Bean
@Primary
@ConfigurationProperties("app.datasource.first")
public DataSourceProperties dataSourceProperties() {
return new DataSourceProperties();
}
@Bean
@Primary
@ConfigurationProperties("app.datasource.first")
public DataSource dataSource() {
return dataSourceProperties().initializeDataSourceBuilder().build();
}
@Bean
@ConfigurationProperties("app.datasource.second")
public DataSourceProperties secondDataSourceProperties() {
return new DataSourceProperties();
}
@Bean
@ConfigurationProperties("app.datasource.second")
public DataSource secondDataSource() {
return secondDataSourceProperties().initializeDataSourceBuilder().build();
}
@Bean
public JdbcTemplate jdbcTemplate() {
return new JdbcTemplate(secondDataSource());
}
使用范例
至此多个数据源配置完成。使用范例如下:
@Controller
public class MyController {
@GetMapping("/second_data_source")
public String index(HttpServletRequest request, org.springframework.ui.Model modelMap) {
List<Map<String, Object>> data = jdbcTemplate.queryForList("select * from my_table");
for (Map<String, Object> d : data) {
System.out.println(d.get("my_field"));
}
}
@Autowired
private JdbcTemplate jdbcTemplate;
}
发表评论
-
snmp
2020-04-13 11:07 395https://www.iteye.com/blog/zhan ... -
snmp
2020-04-10 21:33 523https://blog.csdn.net/qq_333141 ... -
服务器监控软件
2019-12-31 11:07 469[ERROR] org.hyperic.sigar.Sigar ... -
多数据源
2019-12-23 22:09 413https://gitee.com/baomidou/dyna ... -
mybatis多数据源
2019-12-23 18:09 407https://blog.csdn.net/qq_288042 ... -
springboot ueditor
2019-12-17 18:26 347https://blog.csdn.net/u01216982 ... -
java日志
2019-12-10 12:01 259https://blog.csdn.net/peng_wei_ ... -
spring 多数据源
2019-12-06 09:55 391https://www.jb51.net/article/10 ... -
idea
2019-12-04 17:13 363https://blog.csdn.net/dengachao ... -
手机大屏
2019-11-30 16:02 304http://demo.demohuo.top/modals/ ... -
quarz配置
2019-11-08 11:48 420https://blog.csdn.net/BryantLmm ... -
mysql同步
2019-11-06 12:20 311https://blog.csdn.net/baidu_418 ... -
nginx配置多个服务
2019-11-04 20:35 711https://blog.csdn.net/everljs/a ... -
h5 加壳
2019-11-04 16:05 581https://jingyan.baidu.com/artic ... -
jeui 前端框架
2019-10-22 14:30 1121http://www.jemui.com/demo/ http ... -
jeui 维护
2019-10-22 14:29 2http://www.jemui.com/demo/ htt ... -
jeui 维护
2019-10-22 14:29 2http://www.jemui.com/demo/ -
jeui 维护
2019-10-22 14:29 2http://www.jemui.com/demo/ -
jeui 维护
2019-10-22 14:29 2http://www.jemui.com/demo/ -
打印机插件
2019-10-18 16:44 280http://www.jq22.com/jquery-info ...
相关推荐
java多数据源—源码(支持sqlserver,mysql,oracle等等);解压后,直接使用idea导入项目,默认是打开了多数据源的,项目里面有现成的sql文件,执行sql文件;多数据源的开关在application-local.yml文件里面的guns:...
spring+springmvc+mybatis多数据源,spring+springmvc+mybatis多数据源
用springboot 集成mybatis多数据源,用aop实现的动态切换,支持事务,不会使aop动态切换失效。注意:此代码不涉及分布式事务,如果需要分布式事务 需要采取其他方案。
读写分离插,多数据源,数据库记录合并,支持事物。spring mybatis
Spring Boot+Jpa多数据源配置Demo,可同时支持多种数据库,不同数据库,同时支持不同数据库的JdbcTemplate
基于 SpringBoot 多数据源 动态数据源 主从分离 快速启动器 支持分布式事务。一个基于springboot的快速集成多数据源的启动器。支持 数据源分组 ,适用于多种场景 纯粹多库 读写分离 一主多从 混合模式。支持数据库...
多数据源支持Oracle、Mysql、Sql Server 等数据库夸库操作,使用 @DS 切换数据源。, 可设置多主多从 、纯粹多库(记得设置primary) 、混合配置等; Hutool工具类库,降低相关API的学习成本,提高工作效率;
非常小巧的基于c3p0数据源和纯java的jdbc原生写的数据源框架,支持多数据源连接,mysql,oracle,sqlserver等等。方便小巧,侵入性低,与任何框架都易于集成和使用。
spring-boot2.0多数据源 下载直接可以使用。支持扩展多个数据库。动态切换数据库
springboot整合shiro目前只配置了一个数据源 按照方式再加上一个再加主从标识就OK了,shiro的权限有流程还需完善
使用Atomikos支持分布式事务,Spring+Mybatis+Druid+AtomikosDataSource 使用手册: https://www.yuque.com/itman/wosfkn/mreame
spring-boot jdbc的一个demo,资源分应该是免费的,没看到,很抱歉。
*Routing4DB* 是由Java实现的基于接口代理策略实现的数据源路由框架,实现了读写分离, 数据拆分。 通过数据源路由实现以下功能: 一、Master-Slave读写分离实现 1.1写Master,读多个Slaves 1.2写...
Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...
支持集群,支持多数据源。 #主要特性 完全响应式布局(支持电脑、平板、手机等所有主流设备) 强大的一键生成功能(包括控制器、模型、视图、菜单等) 支持多数据源,简单配置即可实现切换。 支持按钮及数据权限,可...
java swing 多选下拉框 支持动态加载数据 (优化了网上的下拉框代码)
https://docs.taosdata.com/connector/java/#hikaricp 参考官方文档即可。
实现多数据源路由选择 基于MyBatis拦截器实现主从数据源的动态切换 支持类、方法级别添加注解 SwitchDataSource 来手动切换目标数据源 可实现 DynamicDataSourceStrategy 接口并自定义动态数据源选择策略。默认提供...
springboot2.0整合mabits,支持国际化,mabits代码自动生成,mabits分页插件,Log4j2日志,以及druid配置多数据源,前端页面请根据自己需要添加
支持多数据源、分库分表和分布式事务。支持 Dubbo RPC 的完整功能,有超过 1亿+ 用户产品正在使用。完整的单点限流和分布式限流功能。支持基于 Apollo 和 Nacos 的分布式配置中心。完整的分布式缓存、分布式session...