JNDI+JMS+JDBC的一个理解_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
2
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 4578 | 回复: 1   主题: JNDI+JMS+JDBC的一个理解        下一篇 
    本主题由 hui.chen 于 2014-11-11 15:06:54 移动
yunpeng.xian
注册用户
等级:少校
经验:993
发帖:34
精华:0
注册:1970-1-1
状态:离线
发送短消息息给yunpeng.xian 加好友    发送短消息息给yunpeng.xian 发消息
发表于: IP:您无权察看 2014-8-6 17:17:05 | [全部帖] [楼主帖] 楼主

看了这么多天关于JNDI的东西,觉得JNDI可以说是weblogic中使用其他功能的一个基础。JNDI不是很难理解,用大白话讲就是讲一个java对象用一个名字绑定起来。同样他可以连接成树。也就是说他不一定绑定java对象。下面是一个JNDI树:

北京联动北方科技有限公司

我们可以通过JNDI中的名字来查找相应的对象。

举个列子把,比如我们要建立一个实现JMS的小程序。下面是JMS的一个流程

北京联动北方科技有限公司

看图JNDI树,我们将数据连接池,和目的地(Destination)隐藏起来,具体的工作是由weblogic来完成的,同样将数据连接池,和目的地(Destination)绑定在JNDI树上面并给他提供一个名字。那么我们就可以通过lookup()方法来得到这个连接,如上图第一步。

下面介绍一下JMS的流程:

消息产生者向JMS发送消息的步骤 

(1)创建连接使用的工厂类JMS ConnectionFactory(通过JNDI) 

(2)使用管理对象JMS ConnectionFactory建立连接Connection 

(3)使用连接Connection 建立会话Session 

(4)使用会话Session和管理对象Destination创建消息生产者MessageSender (通过JNDI创建Destination)

(5)使用消息生产者MessageSender发送消息 

从上面你就会感觉到使用JNDI后将很多的东西都简化的,他将你从繁复的类中解脱出来,构建自己的标识来管理你常用的类或是将一系列相关的类苟建成JNDI树。

JMS将接受到的消息有两种保存的方式,一种是保存在文件中,另外一种呢是保存在数据中。这些只需要在weblogic控制台中进行相关的配置就好了。而在发送和接受消息时如果是将消息存储在数据库中那么需要定义相应的bean来作为数据的临时存放点,在传递消息和接受消息时都使用对象形式的传送和接受。

下面来介绍一下关于JDBC的相关知识,jDBC分为四种,如下图:

北京联动北方科技有限公司

每种都有不同的作用,我就不一一说明了,下面我来介绍一下数据连接池。

下面两张图分别是数据连接池的图解,和数据源的结构:

北京联动北方科技有限公司

北京联动北方科技有限公司

Weblogic给了我们一个建立数据连接池和数据源的特别方便的平台,并结合JNDI树开发人员完全不需要考虑数据连接的问题。

数据连接池是服务器预先定义了一定数量的数据连接,在开发人员手中,这个数据连接与普通的JDBC直接连接数据库没有任何区别,但在服务器中这些连接当应用程序不需要此连接时,连接不会被销毁,而是使此连接空闲下来,等待下一个应用程序来调用。同样数据连接池可以动态的增加和减少数据库连接的个数。

该贴由hui.chen转至本版2014-11-11 15:06:54

该贴由hui.chen转至本版2014-11-11 15:08:04




赞(0)    操作        顶端 
koei
版主
等级:大校
经验:4186
发帖:7
精华:0
注册:2011-7-21
状态:离线
发送短消息息给koei 加好友    发送短消息息给koei 发消息
发表于: IP:您无权察看 2014-8-20 16:16:42 | [全部帖] [楼主帖] 2  楼

楼主,最好有个JDBC的实际例子,就直观了



赞(0)    操作        顶端 
总帖数
2
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论