- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在tomcat配置jndi数据源的三种方式
在Tomcat配置JNDI数据源的三种方式
在我过去工作的过程中,开发用服务器一般都是Tomcat
数据源的配置往往都是在applicationContext.xml中配置一个dataSource的bean
然后在部署时再修改JNDI配置
我猜是因为Tomcat的配置需要改配置文件
不像JBoss,Weblogic等服务器在管理界面可以直接添加JNDI数据源
也很少人去研究它的配置
最近做了个小项目,发布版本的时候都是通过ant编译成jar包之后丢给测试
测试是大爷,教他修改数据源了还是当没听到
周末闲来无聊,看了一些Tomcat配置的教程,下面做一些总结
?
注:如果你的工程是直接丢在webapps下面的,server.xml中就没有工程对应的Context节点
?
更新:由于之前有些配置来自网络,不太好用,作了一些更新
对每种方法作了一些个人评价
PS:以下配置在apache-tomcat-6.0.35下测试通过,可以访问数据库
?
第一种,单个应用独享数据源
就一步,找到Tomcat的server.xml找到工程的Context节点,添加一个私有数据源
Xml代码??
Context?docBase=WebApp?path=/WebApp?reloadable=true?source=org.eclipse.jst.jee.server:WebApp??
Resource??
????name=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节点,在节点下加一个全局数据源
Xml代码??
Resource??
????name=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?
Xml代码??
Context?docBase=WebApp?path=/WebApp?reloadable=true??
????ResourceLink?global=jdbc/mysql?name=jdbc/mysql?type=javax.sql.DataSource?/??
/Context??
优点:重用性,可控性
缺点:配置相对第三种方法要繁琐一点,每个工程都得配
第三种,配置全局JNDI数据源,应用到所有Tomcat下部署的应用
也分两步
第一步
? ? 参考第二种的第一步
第二步,找到Tomcat的context.xml,在Context节点下加一个ResourceLink节点对第一步配置的数据源进行引用
这个XML配置文件的根节点就是Context
Xml代码??
Context??
????ResourceLink?global=jdbc/mysql?name=jdbc/mysql?type=javax.sql.DataSource?/??
???WatchedResourceWEB-INF/web.xml/WatchedResource??
Context??
优点:重用性,一次性到位
缺点:没有可控性
Spring对JNDI数据源的引用
在applicationContext.xml中加一个bean,替代原来的dataSource
Xml代码??
jee:jndi-lookup?id=dataSource?jndi-name=jdbc/mysql?/??
C3P0数据
您可能关注的文档
最近下载
- 运动伤病的预防与紧急处理+课件+ 2025-2026学年人教版(2024)初中体育与健康八年级全一册.pptx VIP
- 养虾业养殖技术手册.doc VIP
- 标准图集-04D701-3电缆桥架安装.pdf VIP
- 医院面试康复治疗师面试问题含考察点和参考答案.docx VIP
- 讯飞翻译机中英版使用说明书.pdf VIP
- 催化化学-催化作用的化学基础.pptx VIP
- 基层常见病的诊疗与管理题库答案-2025年华医网继续教育.docx VIP
- 兴趣伴成长+课件+ 2025-2026学年人教版(2024)初中体育与健康八年级全一册.pptx VIP
- 儿童,颜色,填涂画.docx VIP
- 文件筐测试答案.docx VIP
文档评论(0)