news 2026/5/9 5:03:18

Tomcat配置JNDI数据源的三种方式

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Tomcat配置JNDI数据源的三种方式

文章目录

  • 环境
  • 文档用途

环境

系统平台:N/A
版本:4.7.7

文档用途

Tomcat配置JNDI数据源的三种方式

第一种,单个应用独享数据源

就一步,找到Tomcat的server.xml找到工程的Context节点,添加一个私有数据源

<ContextdocBase="WebApp"path="/WebApp"reloadable="true"source="org.eclipse.jst.jee.server:WebApp"><Resourcename="jdbc/mysql"scope="Shareable"type="javax.sql.DataSource"factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"url="jdbc:mysql://localhost:3306/test"driverClassName="com.mysql.jdbc.Driver"username="root"password="root"/></Context>

优点:简单

缺点:重用性差

第二种,配置全局JNDI数据源,应用到单个应用

分两步

第一步, 找到Tomcat的server.xml中GlobalNamingResources节点,在节点下加一个全局数据源

<Resourcename="jdbc/mysql"scope="Shareable"type="javax.sql.DataSource"factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"url="jdbc:mysql://localhost:3306/test"driverClassName="com.mysql.jdbc.Driver"username="root"password="root"/>

第二步,找到要应用此JNDI数据源的工程Context节点,增加对全局数据源的引用ResourceLink

<ContextdocBase="WebApp"path="/WebApp"reloadable="true"><ResourceLinkglobal="jdbc/mysql"name="jdbc/mysql"type="javax.sql.DataSource"/></Context>

优点:重用性,可控性

缺点:配置相对第三种方法要繁琐一点,每个工程都得配

第三种,配置全局JNDI数据源,应用到所有Tomcat下部署的应用

也分两步

第一步
参考第二种的第一步

第二步,找到Tomcat的context.xml,在Context节点下加一个ResourceLink节点对第一步配置的数据源进行引用
这个XML配置文件的根节点就是

<Context><ResourceLinkglobal="jdbc/mysql"name="jdbc/mysql"type="javax.sql.DataSource"/><WatchedResource>WEB-INF/web.xml</WatchedResource><Context>

优点:重用性,一次性到位
缺点:没有可控性

Spring对JNDI数据源的引用

在applicationContext.xml中加一个bean,替代原来的dataSource

<jee:jndi-lookup id=“dataSource” jndi-name=“jdbc/mysql” />

C3P0数据源的配置

type和factory的值发生变化

username=>user url=>jdbcUrl driverClassName=>driverClass<Resourcename="jdbc/mysql_c3p0"scope="Shareable"type="com.mchange.v2.c3p0.ComboPooledDataSource"factory="org.apache.naming.factory.BeanFactory"jdbcUrl="jdbc:mysql://localhost:3306/test"driverClass="com.mysql.jdbc.Driver"user="root"password="root"/>
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/30 7:56:07

M2FP文档详解:从启动到调用的全流程操作手册

M2FP文档详解&#xff1a;从启动到调用的全流程操作手册 &#x1f9e9; M2FP 多人人体解析服务简介 在计算机视觉领域&#xff0c;人体解析&#xff08;Human Parsing&#xff09; 是一项关键任务&#xff0c;旨在对图像中的人体进行像素级语义分割&#xff0c;识别出如头发、面…

作者头像 李华
网站建设 2026/5/5 9:58:31

Thinkphp的企业员工考勤请假加班系统

目录系统概述功能模块技术架构优势与价值项目开发技术介绍PHP核心代码部分展示系统结论源码获取/同行可拿货,招校园代理系统概述 ThinkPHP企业员工考勤请假加班系统是基于ThinkPHP框架开发的一套高效、灵活的企业内部管理解决方案。系统整合了员工考勤、请假申请、加班管理三大…

作者头像 李华
网站建设 2026/5/4 13:33:30

M2FP模型在智能零售中的人流统计分析案例

M2FP模型在智能零售中的人流统计分析案例 &#x1f4cc; 引言&#xff1a;智能零售场景下的精细化运营需求 随着新零售业态的快速发展&#xff0c;线下门店对顾客行为理解和空间利用率优化的需求日益增长。传统人流统计多依赖红外传感器或简单目标检测算法&#xff0c;难以获…

作者头像 李华
网站建设 2026/5/3 17:06:31

22F板材为何成为PCB性价比之选?

作为 PCB 技术领域的常用基材&#xff0c;22F 板材始终占据中低端市场的重要份额。很多工程师在选型时会疑惑&#xff0c;22F 板材的性能到底有哪些优势&#xff1f;又能适配哪些应用场景&#xff1f;今天就从核心性能参数、性价比优势和工艺兼容性三个维度&#xff0c;为大家详…

作者头像 李华
网站建设 2026/4/20 15:47:22

虚拟主播技术揭秘:M2FP如何实现精准面部捕捉?

虚拟主播技术揭秘&#xff1a;M2FP如何实现精准面部捕捉&#xff1f; 在虚拟主播、数字人直播、AR互动等前沿应用场景中&#xff0c;高精度的面部与人体解析技术是实现沉浸式体验的核心基础。传统的动作捕捉系统依赖昂贵硬件和标记点&#xff0c;而现代AI驱动的方案正逐步实现“…

作者头像 李华
网站建设 2026/5/2 6:33:19

M2FP模型在社交媒体中的创新应用案例

M2FP模型在社交媒体中的创新应用案例 &#x1f9e9; M2FP 多人人体解析服务&#xff1a;技术背景与行业需求 在当前社交媒体内容爆炸式增长的背景下&#xff0c;用户对个性化视觉表达的需求日益增强。从短视频滤镜到虚拟试衣、从AI换装到社交互动特效&#xff0c;精准的人体理解…

作者头像 李华