tomcat配置jmx监控(Tomcat配置JNDI数据源的三种方式)
tomcat配置jmx监控
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节点,添加一个私有数据源
<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节点,在节点下加一个全局数据源
<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" /> <script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
第二步,找到要应用此JNDI数据源的工程Context节点,增加对全局数据源的引用ResourceLink
<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>
<Context> <ResourceLink global="jdbc/mysql" name="jdbc/mysql" type="javax.sql.DataSource" /> <WatchedResource>WEB-INF/web.xml</WatchedResource> <Context>
优点:重用性,一次性到位
缺点:没有可控性
在applicationContext.xml中加一个bean,替代原来的dataSource
<jee:jndi-lookup id="dataSource" jndi-name="jdbc/mysql" />
C3P0数据源的配置
type和factory的值发生变化
username=>user
url=>jdbcUrl
driverClassName=>driverClass
<Resource name="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" />
到此这篇关于Tomcat配置JNDI数据源的三种方式的文章就介绍到这了,更多相关Tomcat配置JNDI数据源内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!
- maven默认插件配置(Maven使用tomcat8-maven-plugin插件的详细教程)
- tomcat服务页面打开超慢(Web服务器Tomcat高级优化)
- tomcat反向代理单(阿里云安全组规则配置及Tomcat外网访问)
- tomcat运行警告(tomcat异常解决Invalid character found in the request target. The valid characters are defined in)
- docker运行tomcat服务(使用 docker部署tomcat并接入skywalking的使用)
- linux下启动tomcat服务(Linux系统安装Tomcat并配置Service启动关闭)
- idea社区版使用tomcat部署项目(基于IDEA部署Tomcat服务器的步骤详解)
- idea怎么在tomcat部署项目(IDEA 配置Tomcat服务器和发布web项目的图文教程)
- tomcat配置jmx监控(Tomcat配置JNDI数据源的三种方式)
- tomcatcpu配置(Tomcat进程占用CPU过高的解决方法)
- dockertomcat多开实例(Docker tomcat的设置内存大小配置方式)
- idea项目中tomcat的配置(tomcat部署项目以及与IDEA集成的实现)
- tomcat 多线程并发cpu(Tomcat使用线程池处理远程并发请求的方法)
- idea的tomcat怎么关闭(解决Idea的tomcat启动报多个listener的错误问题)
- 如何将tomcat源码以maven方式运行(如何将tomcat源码以maven方式运行)
- idea如何运行tomcat项目(在IDEA 2020.3.1中部署Tomcat并且创建第一个web项目的过程详解)
- 泪目 这位 刷屏 的英雄,是全椒人的骄傲(泪目这位刷屏)
- 人从众 火炎焱 全椒再现 正月十六走太平 的魅力(人从众火炎焱全椒再现)
- 官宣 全椒籍明星许海峰 奚秀兰 方芳 王璐瑶携手回家 走太平(全椒籍明星许海峰)
- 以前全椒人是怎么过冬的 满满都是回忆(以前全椒人是怎么过冬的)
- NVIDIA显卡份额冲上88 A饭发愁 游戏优化恐没A卡份了(NVIDIA显卡份额冲上88A饭发愁)
- AMD YES A卡还是N卡 A卡和N卡的区别(AMDYESA卡还是N卡)
热门推荐
- display和visibility的用法和区别
- js网站前端效果(JS如何让你的移动端交互体验更加优秀)
- python列表的循环遍历使用教程(Python中使用遍历在列表中添加字典遇到的坑)
- 宝塔部署ssl证书(宝塔面板设置SSL并开启HTTPS的方法)
- python 字典按key值排序(Python 按字典dict的键排序,并取出相应的键值放于list中的实例)
- 面试前的几分钟应该注意什么
- php一直提示错误(关于php开启错误提示的总结)
- docker部署go项目(Gogs+Jenkins+Docker 自动化部署.NetCore的方法步骤)
- mysql数据库与表的基本操作总结(Mysql、Oracle中常用的多表修改语句总结)
- js的三种使用方法(JS带你深入领略Proxy的世界)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9