由于项目中多个小应用(类似插件)需要使用数据库连接池,不能为每一个应用中配置连接池。故采用JNDI的模式进行配置。

我们使用的web服务器有tomcat和jboss两种。分别介绍其在这两种服务器下并且在两种应用模式spring+hebernat与quartz下的配置。

tomcat下:

1)在tomcat 6.0下配置JNDI及在Spring中的使用 (引用1)已经详细介绍了其往spring应用中添加的详细过程。(引用3)

2)quartz中添加tomcat jndi datasource很简单,只需要调用org.quartz.dataSource.myDS.jndiURL设置即可。

3)tomcat下quartz中出现 not bound in context的问题是要写完整的jndi名字。必须加上“java:comp/env/XXX“,查看intialcontext源代码可知,与spring中名字格式保持一致即可。markmail网站上可以搜到很多这种问题的解决方案(引用2)。

4)(这一点我也不知道为什么。)有时我的jndi名字就是不能绑定下来,但是当我把名字尽量缩短就不会出现问题。测试许多次都出现不知道何原因。我的命名是”jndi/abcd“。

5)我尝试将我的tomcat6.0添加admin模块(引用5),并使用其添加jndi服务,但是不成功。未曾找到admin配置jndi修改的文件,明显不是引用1,3中的config目录下的context文件。

jboss下:

1)jboss下部署配置spring jndi(引用4)详细介绍jboss下的spring配置。

2)quartz类似tomcat。

3)我曾经尝试在spring中配置使用跨jvm的jndi的datasource,进行远程调用。

注意使用<use-java-context>false</use-java-context>可以进行跨jvm调用(引用6)。但是在spring直接进行bean配置会出现问题javax.naming.Resource  javax.sql.DataSource typemismatch。需要手写一个bean进行这种转换(强制转换),可以参考引用6中的例子。(引用7)但是,这里有一点提醒:Using Datasources from remote is not recommended and might lead into trouble easily because the app server looses control over the connections. Be warned!Once the maximum connection in the pool are reached no other connections can be obtained. For the reason that the server does not manage the connections anymore, he is not aware that you close the connection.考虑到实际情况,最终我放弃了跨JVM的jndi的调用。

--------------------------------------------

现在JNDI工作正常,要进行观察,适当调整参数,优化服务器性能。

--------------------------------------------------

引用1:在tomcat 6.0下配置JNDI及在Spring中的使用 http://karidyang.javaeye.com/blog/216125

引用2:markmail网站

http://markmail.org/search/?q=quartz+tomcat+jndi

引用3:tomcat+jndi+spring配置

http://apps.hi.baidu.com/share/detail/31393331

引用4:jboss下部署配置spring jndi

http://www.blogjava.net/sxyx2008/archive/2010/09/08/331382.html

引用5:apache-tomcat-6.0.18下配置Tomcat Administration Web Application Tool

http://hi.baidu.com/%B9%C2%B6%C0%5F%CE%E8%D5%DF/blog/item/33c11703785902713812bb49.html

引用6:Access JBoss DataSource Remotely from Java Applications

http://javahowto.blogspot.com/2006/08/access-jboss-datasource-remotely-from.html

引用7:Using JBoss DataSource from standalone client

http://forum.springsource.org/showthread.php?16076-Using-JBoss-DataSource-from-standalone-client

转载于:https://blog.51cto.com/caols0621/610581

JNDI(datasource)在tomcat,JBOSS下的spring+quartz配置相关推荐

  1. Nginx + Tomcat Windows下的负载均衡配置

    一.为什么需要对Tomcat服务器做负载均衡?     Tomcat服务器作为一个Web服务器,其并发数在300-500之间,如果超过500的并发数会出现Tomcat不能响应新的请求的情况,严重影响网 ...

  2. 使用spring+quartz配置多个定时任务

    首先引入 quartz jar包: 创建java类: package com.tcwl.vsmp.loanmgt.message;import com.tcwl.vsmp.external.const ...

  3. eclipse下的spring环境配置

    1) 工具: (1) jdk (2) spring.jar  .commons-logging-1.1.1.jar (因为只是做的简单的demo,所以就只用这两个jar包) spring.jar 是包 ...

  4. 在linux下安卸载tomcat,Linux下卸载与安装配置Tomcat

    1.卸载 找到tomcat的安装目录 rm -rf /usr/local/tomcat/apache-tomcat-7.0.96 2.安装 Tomcat下载地址:http://tomcat.apach ...

  5. spring quartz 配置

    quartz简介 各种企业应用几乎都会碰到任务调度的需求,就拿论坛来说:每隔半个小时生成精华文章的RSS文件,每天凌晨统计论坛用户的积分排名,每隔30分钟执行锁定用户解锁任务.任务调度本身涉及到多线程 ...

  6. java配置jndi连接数_JavaWeb:Tomcat下配置数据源(JNDI)连接数据库 | 学步园

    ---------------------------------------------------------------------------------------------------- ...

  7. Hibernate Tomcat JNDI DataSource示例教程

    Hibernate Tomcat JNDI DataSource示例教程 欢迎来到Hibernate Tomcat JNDI DataSource示例教程.我们已经看到如何在独立的Java应用程序中使 ...

  8. Tomcat 6.0.32 +Spring dbcp datasource关闭Tomcat出现严重异常

    异常如下: 信息: Pausing Coyote HTTP/1.1 on http-8080 2014-3-6 14:52:50 org.apache.catalina.core.StandardSe ...

  9. Spring中配置DataSource数据源的几种选择

    Spring中配置DataSource数据源的几种选择 在Spring框架中有如下3种获得DataSource对象的方法: 从JNDI获得DataSource. 从第三方的连接池获得DataSourc ...

最新文章

  1. HDOJ 1143 Tri Tiling
  2. PowerShell 2.0 实践(四)管理Windows进程
  3. Java动态编译执行
  4. 【HDU - 5475】An easy problem(线段树,思维)
  5. NFS 故障排错指南
  6. java布尔类型比较器_浅谈Java中几种常见的比较器的实现方法
  7. 【Redis 开发与运维】初识 Redis
  8. 最新的windows xp sp3序列号(绝对可通过正版验证)
  9. Android测试点和测试工具介绍
  10. ros pppoe服务器性能,ROS软路由中最详细的PPPOE服务器设置教程
  11. 电视html接口,HDMI是什么接口?
  12. 两台电脑用一根网线组建局域网
  13. 基于tesseract的文字识别
  14. 超酷震撼 HTML5/CSS3动画应用及源码
  15. Web与排版学上的字体问题
  16. 前端实现文件上传的断点续传
  17. 【渝粤题库】陕西师范大学203001证据法作业(专升本)
  18. FastReport——打印和打印设置
  19. 路飞学城1之课程与课程详细
  20. Ubuntu20.04 通过deb包方式安装微信

热门文章

  1. Centos 7 配置 NFS
  2. Java数据类型(基本数据类型)学习
  3. 【翻译】在Ext JS和Sencha Touch中创建自己定义布局
  4. 【朴灵评注】JavaScript 运行机制详解:再谈Event Loop
  5. [摘记]数值方法04——函数求值
  6. “Word.Tables”并不包含“Item”的定义的解决办法
  7. 函数声明指令(stdcall, cdecl,pascal,register)
  8. Java:控制台输入车辆信息,将信息保存至数据库中
  9. Mybaits插入记录返回主键值
  10. Manacher算法学习笔记 | LeetCode#5