`
yuanlanxiaup
  • 浏览: 859126 次
文章分类
社区版块
存档分类
最新评论

J2EE核心技术-JMS和JDBC

 
阅读更多
J2EE核心技术--JSP和Servlet》和《J2EE核心技术--EJB分类》两片博文从比较浅层次的阐述了MVC架构中,包含各自核心组件的功能,但是要实现J2EE所说的分布式架构,还需一个非常重要的东西,就是三层之间的服务调用和信息交换,这就扯出了下面要写的东西:JMS、RMS、JDBC和JNDI。

JMS、RMS、JDBC及JNDI都是为了满足在远程或本地不同的服务调用和信息交换而产生的,按照老规矩还是一个一个的来解析他们各自的用途和范围。

JMS:在说JMS前要先提一下相关的背景,jms既Java消息服务(Java Message Service),何为消息,是指动态的、可流动或者说是可传递的,这个过程就是Messaging,jms的消息传递和常用的通信协议适用的场景是不一样的。Jms有着自己定义的消息格式和消息传递的模式,消息的格式由10个头字段、property的可选头字段和消息体组成,如下图:

Header和properties都是键值对,body是具体要传递的内容,properties可以放一些自定义的附加信息。消息需要由生产者产生,同样的道理,消息也需要传递到需要它的消息消费者手中,其实,这其中还有一个叫jms Server的东西,也称为Destination,它专门在生产者和消费者中间中转和保存消息,这样就构成了3点结构,和咱们学过的MVC非常相似。

消息传递的模式分为两种point to point(点对点),意思就是生产者产生一条消息,只能传递给一个消费者,就好像一个苹果只能给一人一样,前提当然是苹果不可再分了。

但是ptp的传递方式不能达到消息的共享,因此publish/subscribe模式出现了,他可以达到多人共享消息,消息的发送者叫发布者,拿到消息的人叫订阅者,发布者发出消息后,暂存在中间服务器上,供订阅者接收,达到了消息的异步,就好像我说了一句,XXX是泡妞高手被大家听到了一样。

除了传递消息,还要保障消息的可靠性和高效性。因此,JMS引入了确认和事务,就像JDBC那样,一次会话过程,可以手动完成事务,处理完成后,提交,确认所有的消息,但是发送不支持事务,这只能交给消息中间件来完成了。

JDBC:有些编程基础的童鞋一看JDBC就基本明白它是干什么的,怎么干的,下面简单介绍一下,JDBC是sun公司的一个商标,但外界大多数人不这么认为,仍然认为JDBC是Java Database Connectivity的首字母简写,它不仅和微软的ODBC形似还有几分神似,用来完成应用程序和数据的交互,也就是MVC中M层和数据库之间的联系。

从下图可以看出JDBC的体系结构,他也是利用MVC的思想,JDBC API给上层应用(也就是程序员)提供统一的接口,下层再各自去管理不同的数据库。

JDBC工作流程:

1.注册JDBC驱动程序:JDBC-ODBC桥驱动模式、本地接口与Java驱动程序相结合的驱动模式、面向数据库中间件的驱动模式、直接连接的驱动模式。

2.获取数据库连接:DataSource和DriverManager

3.生成数据库语句:Statement、prepareStatement和CallableStatement。

4.在数据库语句中嵌入SQL语句并执行

5.关闭数据库语句和数据库连接

(接下篇)
分享到:
评论

相关推荐

    J2EE的13 种核心技术

    本文解释支撑J2EE的13种核心技术:JDBC, JNDI, EJBs, RMI, JSP, Java servlets, XML, JMS, Java IDL, JTS, JTA, JavaMail 和 JAF,同时还将描述在何时、何处需要使用这些技术。当然,还介绍这些不同的技术之间是如何...

    J2EE的13种核心技术简介.doc

    在本文中将解释支撑J2EE的13种核心技术:JDBC,JNDI,EJBs,RMI,JSP,Javaservlets,XML,JMS,JavaIDL, JTS,JTA,JavaMail和JAF,同时还将描述在何时、何处需要使用这些技术。当然,我还要介绍这些不同的技术之间是如何交互...

    J2EE的13种核心技术简介

    支撑J2EE的13种核心技术:JDBC, JNDI, EJBs, RMI, JSP, Java servlets, XML, JMS, Java IDL, JTS, JTA, JavaMail 和 JAF.

    深入掌握J2EE编程技术

    《深入掌握J2EE编程技术》全面介绍了JSP层,EJB层和EIS层的设计思想与编程技术,涉及的内容包括:JDBC,JNDI,LDAP,Servlet,JSP,Taglib,EJB,J2EE,Connector,SAX与DOM,RMI,CORBA,JavaMail和JMS。...

    J2EE的13种核心技术

    在本文中我将解释支撑J2EE的13种核心技术:JDBC, JNDI, EJBs, RMI, JSP, Java servlets, XML, JMS, Java IDL, JTS, JTA, JavaMail 和 JAF,同时还将描述在何时、何处需要使用这些技术。当然,我还要介绍这些不同的...

    深入掌握J2EE编程技术(卷一)

    本书全面介绍了JSP层,EJB层和EIS层的设计思想与编程技术,涉及的内容包括:JDBC,JNDI,LDAP,Servlet,JSP,Taglib,EJB,J2EE Connector,SAX与DOM,RMI,CORBA,JavaMail和JMS。这些内容基本覆盖了J2EE平台开发...

    J2EE_的_13_种核心技术.doc

     在本文中我将解释支撑J2EE的13种核心技术:JDBC, JNDI, EJBs, RMI, JSP, Java servlets, XML, JMS, Java IDL, JTS, JTA, JavaMail 和 JAF,同时还将描述在何时、何处需要使用这些技术。当然,我还要介绍这些不同的...

    深入掌握J2EE编程技术(卷二)

    本书全面介绍了JSP层,EJB层和EIS层的设计思想与编程技术,涉及的内容包括:JDBC,JNDI,LDAP,Servlet,JSP,Taglib,EJB,J2EE Connector,SAX与DOM,RMI,CORBA,JavaMail和JMS。这些内容基本覆盖了J2EE平台开发...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (1)

    1.4 J2EE核心技术 1.4.1 Servlet 1.4.2 JSP(Java服务页面) 1.4.3 EJB(企业JavaBean) 1.4.4 JDBC(Java数据库连接) 1.4.5 JTA/JTS(Java事务) 1.4.6 JNDI(Java命名和目录服务) 1.4.7 JavaMail(Java邮件服务...

    j2ee的13种核心技术

    在本文中我将解释支撑J2EE的13种核心技术:JDBC, JNDI, EJBS, RMI, JSP, JAVA SERVLETS, XML, JMS, JAVA IDL, JTS, JTA, JAVAMAIL 和 JAF,同时还将描述在何时、何处需要使用这些技术。当然,我还要介绍这些不同的...

    J2EE 的 13 种核心技术(转).doc

    在本文中我将解释支撑J2EE的13种核心技术:JDBC, JNDI, EJBs, RMI, JSP, Java servlets, XML, JMS, Java IDL, JTS, JTA, JavaMail 和 JAF,同时还将描述在何时、何处需要使用这些技术。当然,我还要介绍这些不同的...

Global site tag (gtag.js) - Google Analytics