ssm项目配置多个数据源(看到最后,最后是重点)

SSM项目搭建的主要步骤 SSM项目搭建的主要步骤一、说明二、配置springMVC1、前端控制器(DispatcherServlet)2、拦截器(HandlerInterceptor)3、视图解析器(ViewResolver,全称为InternalResourceViewResolver(内部资源的视图解析器))4、后端控制器(Controller)5、url映射处理器(HanlderMapping)扩展配置6、全站乱码... 阅读详情

在项目中到一些问题,一些查询模块需要链接另一个数据库,这时,就可以配置两个数据源进行操作。

1.创建jdbc.properties

jdbc.url = jdbc:mysql://localhost:3306/test1?useUnicode=true&characterEncoding=utf8
jdbc.driver = com.mysql.jdbc.Driver
jdbc.username= root
jdbc.password= 123


##第二个数据链接
jdbc.url2 = jdbc:mysql://192.168.1.57:3306/test?useUnicode=true&characterEncoding=utf8
jdbc.driver2 = com.mysql.jdbc.Driver
jdbc.username2 = root
jdbc.password2 = 123

2.获取当前使用的数据源

import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;
/**
 * <p>desc:配置多个数据源 </p>
 * <p>类名:DynamicDataSource </p>
 * <p>创建时间:2018-7-10 上午9:38:42 </p>
 * <p>@author:mmy</p>
 */
public class DynamicDataSource extends AbstractRoutingDataSource {

	protected Object determineCurrentLookupKey() {
		return DBContextHolder.getDbType();
	}

}

3.切换数据源的工具类:

/**
 * <p>desc: 数据源的切换</p>
 * <p>类名:DBContextHolder </p>
 * <p>创建时间:2018-7-10 上午9:39:24 </p>
 * <p>@author:mmy</p>
 */
public class DBContextHolder {
	
 	private static final ThreadLocal<String> contextHolder = new ThreadLocal<String>();
    public static void setDbType(String dbType) {
        contextHolder.set(dbType);
    }
    
    public static String getDbType() {
        return ((String) contextHolder.get());
    }
    
    public static void clearDbType() {
        contextHolder.
基于SSM框架的多数据源配置实战 SSM(Spring + Spring MVC + MyBatis)是当前Java Web开发中最主流的轻量级框架组合。Spring作为核心容器,通过IoC(控制反转)管理对象生命周期与依赖关系,通过AOP(面向切面编程)实现日志、事务等横切关注点的解耦;Spring MVC则负责Web层的请求调度,具备灵活的控制器、视图解析和数据绑定机制;MyBatis作为持久层框架,采用ORM(对象关系映射)方式,将Java对象与数据库记录进行映射,简化数据库操作。 阅读详情

相关推荐

SSM框架连接MySQL 8数据源配置与实践

在Spring框架中配置MySQL数据源是构建企业级Java应用的一个基础步骤。随着MySQL 8的发布,配置细节与先前版本有所不同。正确配置数据源不仅包括连接信息的基本设置,还涉及到性能优化和安全配置。本章将介绍如何在Spring项目中配置MySQL 8的数据源。通过本节的分析与案例,可以看出解决SSM与MySQL 8的兼容性问题需要综合考虑多个方面的调整。开发者需要对MySQL的新特性和变更保持敏感,并准备好对应用程序进行相应的调整。

weixin_28729843的博客 1152

ssm实现多数据源配置

ssm实现多数据源配置ssm实现多数据源配置ssm实现多数据源配置ssm实现多数据源配置,

Spring MVC配置双数据源实现一个java项目同时连接两个数据库的方法

主要给大家介绍了关于Spring MVC如何配置双数据源实现一个java项目同时连接两个数据库的相关资料,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。

当知识图谱遇见多模态:突破文本界限的智能认知革命

本文探讨了知识图谱与多模态技术的融合,揭示了其在医疗诊断、文化保护等领域的革命性应用。通过图神经网络、对比学习框架和跨模态注意力机制等技术,实现了文本、图像和音频数据的智能关联与认知。文章还分享了在Neo4j等图数据库中的实践案例和优化策略,为构建下一代智能认知系统提供了技术参考。

weixin_29197835的博客 464

GD32 TLI+IPA实战:5分钟搞定RGB888屏幕显示,并开启2D图形加速

本文详细介绍了如何使用GD32微控制器的TLI和IPA功能快速驱动RGB888屏幕并开启2D图形加速。通过硬件配置、时序设置和显存管理,开发者可以高效实现图形界面渲染,并利用IPA加速器提升性能,适用于嵌入式GUI开发等场景。

weixin_29163797的博客 230

CentOS 7.9安装python3.11

CentOS 7.9安装python3.11

leafseelight的专栏 1342

LabVIEW多界面应用开发:从启动器到主界面的切换架构与实现

在图形化编程领域,模块化与界面管理是构建复杂应用程序的核心。其原理在于通过清晰的程序架构,实现不同功能模块间的独立运行与协同工作,从而提升代码的可维护性和可扩展性。这种架构的技术价值在于能够有效管理应用程序的生命周期与资源,避免内存泄漏,并确保流畅的用户体验。在测控系统、自动化测试等工程实践中,常需实现如启动界面选择语言或模式后,无缝切换至主功能界面的场景。本文聚焦于LabVIEW环境,深入探讨如何利用动态调用、状态机等机制,并结合功能全局变量(FGV)与队列消息处理器(QMH)等热词技术,构建健壮的多界面

weixin_30802819的博客 263

网口通信实战(C#完整版):基于TCP协议的工业仪表数据采集系统开发

工业现场中80%的智能仪表(压力/温度/液位/流量/数显仪表)、采集模块、测控终端均支持TCP网口通信,这类设备的TCP通信有鲜明的工业特性:基于字节流的自定义二进制协议、一问一答的主从通信模式、对数据完整性/稳定性要求极高。本次实战是纯工业级落地项目,基于C# WinForm + .NET Framework 4.8(工业上位机标配)✅纯原生无依赖:零第三方类库/控件,仅用C#原生,源码可100%复用、无引用冲突、工控机完美兼容;✅双采集模式完美适配:同时实现「单次手动采集」+「连续自动采集」

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1800

实战神器指标解析 篇四:主力吸筹指标及其分析和使用说明

主力可能会进行多次吸筹,因此需要根据黄色趋势线来判断是否有转强的变化。一旦出现转强的迹象,这通常意味着吸筹已经接近尾声,即将进入拉升前期。此时可以介入进行建仓。该股票指标通过分析价格变动的方式,能够精确跟踪并标识主力的吸筹行为。当底部出现多根洋红色柱子时,这通常表示出现了主力吸筹的指示。这段代码主要用于分析股票的底部吸筹情况、趋势和涨跌情况。

生活在别处 6218

【从零到一】Jetson Nano上YOLOv5部署完全攻略:零基础小白也能玩转边缘AI推理

文章摘要: 本文详细介绍了在Jetson Nano边缘设备上部署YOLOv5目标检测模型的完整流程。从硬件准备、系统镜像烧录、基础环境配置,到CUDA/cuDNN验证、Python虚拟环境搭建及PyTorch安装,逐步指导开发者完成部署准备。教程兼顾理论原理与实践操作,提供Python和C++两种实现方案,并涵盖TensorRT优化、实时检测等生产级应用场景,帮助零基础开发者快速掌握边缘AI推理技术,实现高性能目标检测应用。

LXY_LOVE36的博客 367

ansys 求解过程中出现未知错误。检查“求解信息”对象上的“求解器输出”,查找可能的原因。-静力学分析遇到的,这是什么原因——An unknown error occurred ——未找到解决方法

点击“确定”关闭弹窗后,进入Workbench的‌“求解信息”对象‌,查看‌“求解器输出”‌,搜索“Error”“Fatal”“Warning”等关键词,找到具体的错误描述,比如材料未定义、网格质量问题、内存不足等,这是精准解决问题的关键。进入“工具-选项-mechanical APDL”,取消勾选“分布式”,GPU加速器选择“none”。在“求解进程设置-高级”中调整内存分配参数,或切换为迭代求解器(如PCG求解器),它更省内存。尝试简化模型,比如删除非关键细节、合并重复部件,分步验证模型,定位问题源。

qq_15963745的博客 603

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

上一篇: 利用QRCode生成二维码
下一篇: ajax利用formData上传文件
阿波罗AP
博客等级 码龄9年 14粉丝 39原创
评论 16
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值