news 2026/3/26 9:07:56

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/3/25 22:42:11

乐鑫ESP32-S3-BOX-3,面向AIoT与边缘智能的新一代开发套件

乐鑫信息科技推出的ESP32-S3-BOX-3&#xff0c;是一款旨在服务于人工智能物联网&#xff08;AIoT&#xff09;、边缘AI及工业物联网&#xff08;IIoT&#xff09;领域的开发套件。它基于高性能的ESP32-S3系统级芯片构建&#xff0c;并通过集成丰富的硬件接口与模块化配件系统&a…

作者头像 李华
网站建设 2026/3/26 0:46:24

使用M2FP开发虚拟服装定制系统

使用M2FP开发虚拟服装定制系统 &#x1f9e9; M2FP 多人人体解析服务&#xff1a;构建虚拟试衣的视觉基石 在虚拟服装定制系统中&#xff0c;精准的人体结构理解是实现“所见即所得”体验的核心前提。传统图像分割技术往往局限于单人场景或粗粒度分类&#xff0c;难以应对真实用…

作者头像 李华
网站建设 2026/3/25 10:02:35

Thinkphp的校园招聘求职平台

目录校园招聘求职平台摘要项目开发技术介绍PHP核心代码部分展示系统结论源码获取/同行可拿货,招校园代理校园招聘求职平台摘要 ThinkPHP开发的校园招聘求职平台旨在为高校学生与企业搭建高效、便捷的对接桥梁。平台采用B/S架构&#xff0c;基于ThinkPHP框架实现快速开发与稳定…

作者头像 李华
网站建设 2026/3/25 2:38:14

中南大学让AI像苏格拉底一样思考,破解遥感图像“假推理“难题

这项由中南大学地球科学与信息物理学院邵润教授团队联合百度公司和浙江大学共同完成的研究发表于2025年11月27日的arXiv预印本平台&#xff08;编号&#xff1a;arXiv:2511.22396v1&#xff09;&#xff0c;为解决人工智能在遥感图像理解中的"假推理"问题提出了创新性…

作者头像 李华
网站建设 2026/3/20 18:55:39

开源可部署的优势:自主可控,告别第三方API依赖

开源可部署的优势&#xff1a;自主可控&#xff0c;告别第三方API依赖 &#x1f310; AI 智能中英翻译服务 (WebUI API) 在当前全球化背景下&#xff0c;高质量的中英翻译能力已成为众多开发者、内容创作者和企业出海业务的核心需求。然而&#xff0c;依赖第三方云服务商提供…

作者头像 李华
网站建设 2026/3/22 6:34:19

基于M2FP的智能瑜伽课程推荐系统

基于M2FP的智能瑜伽课程推荐系统 在现代健康管理与个性化健身服务中&#xff0c;如何精准理解用户的身体状态并提供定制化训练方案&#xff0c;已成为智能健身系统的核心挑战。传统推荐系统多依赖用户输入的静态信息&#xff08;如年龄、体重、目标&#xff09;&#xff0c;缺乏…

作者头像 李华