數據庫與java的幾個概念

MDAC、DAO、ADO、OLE DB、ODBC是什麼關係

MDAC(Microsoft Data Access Components)是微軟數據庫訪問組件,Netpise和許多利用數據庫的軟件都需要操作系統安裝MDAC。很多用戶的操作系統中已經存在了MDAC,有些是操作系統內置的、有些是其它應用程序安裝的。

在 MDAC 中有三種主要技術:
  (1)ActiveX 數據對象 (ADO): 是一個高級的、易於使用的與 OLE DB 的接口。
  (2)OLE DB: 是一個低級的、高性能的接口,用來實現與各種數據存儲的連接。ADO 和 OLE DB 均可處理關係(表格)和非關係(分級或流)數據。
  (3)開放式數據庫互連 (ODBC) 是另一個專門爲關係數據存儲設計的低級的、高性能的接口。

數據訪問方式所走過的幾個階段:

ODBC – (Open Database Connectivity)是第一個使用SQL訪問不同關係數據庫的數據訪問技術。使用ODBC應用程序能夠通過單一的命令操縱不同的數據庫,而開發人員需要做的僅僅只是針對不同的應用加入相應的ODBC驅動。開放數據庫互連(ODBC)是Microsoft引進的一種早期數據庫接口技術。它實際上是我們要在本章後面加以討論的ADO的前身。
DAO - (Data Access Objects)不像ODBC那樣是面向C/C++程序員的,它是微軟提供給Visual Basic開發人員的一種簡單的數據訪問方法,用於操縱Access數據庫。

RDO – 在使用DAO訪問不同的關係型數據庫的時候,Jet引擎不得不在DAO和ODBC之間進行命令的轉化,導致了性能的下降,而RDO(Remote Data Objects)的出現就順理成章了。

OLE DB – 隨着越來越多的數據以非關係型格式存儲,需要一種新的架構來提供這種應用和數據源之間的無縫連接,基於COM(Component Object Model)的OLE DB應運而生了。
Java DataBase Connectivity(Java數據庫連接),用於訪問關係型數據庫的Java技術,僅僅是一種技術標準,訪問不同的關係型數據庫需要相應的JDBC規範的實現包。
Java 2 Standard Edition(JAVA2標準版),用來開發Java程序的基礎,包括編譯器、小工具、運行環境,SUN發佈的標準版本中還包括核心類庫的所有源代碼。
 
Java Foundation Classes(JAVA基礎類),集合了GUI組件以及其他能簡化開發和展開桌面和Internet/Intranet應用的服務,其核心就是Swing。
Java 2 Enterprise Edition(JAVA2企業版),使用Java進行企業開發的一套擴展標準,必須基於J2SE,提供一個基於組件設計、開發、集合、展開企業應用的途徑。J2EE 平臺提供了多層、分佈式的應用模型,重新利用組件的能力,統一安全的模式以及靈活的處理控制能力。J2EE包括EJB, JTA, JDBC, JCA, JMX, JNDI, JMS, JavaMail, Servlet, JSP等規範
Java 2 Micro Edition(JAVA2精簡版)API規格基於J2SE ,但是被修改爲可以適合某種產品的單一要求。J2ME使JAVA程序可以很方便的應用於電話卡、尋呼機等小型設備,它包括兩種類型的組件,即配置(configuration)和描述(profile)。
Java Development Kit(Java開發工具包):包括運行環境、編譯工具及其它工具、源代碼等,基本上和J2SE等同。
Java Software Development Kit,和JDK以及J2SE等同。
容器:充當中間件的角色
  WEB容器:給處於其中的應用程序組件(JSP,SERVLET)提供一個環境,使JSP,SERVLET直接與容器中的環境變量接口交互,不必關注其它系統問題。主要由WEB服務器來實現。例如:TOMCAT,WEBLOGIC,WEBSPHERE等。該容器提供的接口嚴格遵守J2EE規範中的WEB APPLICATION 標準。我們把遵守以上標準的WEB服務器就叫做J2EE中的WEB容器。
  容器:Enterprise java bean 容器。更具有行業領域特色。他提供給運行在其中的組件EJB各種管理功能。只要滿足J2EE規範的EJB放入該容器,馬上就會被容器進行高效率的管理。並且可以通過現成的接口來獲得系統級別的服務。例如郵件服務、事務管理。
  WEB容器和EJB容器在原理上是大體相同的,更多的區別是被隔離的外界環境。WEB容器更多的是跟基於HTTP的請求打交道。而EJB容器不是。它是更多的跟數據庫、其它服務打交道。但他們都是把與外界的交互實現從而減輕應用程序的負擔。例如SERVLET不用關心HTTP的細節,直接引用環境變量session,request,response就行、EJB不用關心數據庫連接速度、各種事務控制,直接由容器來完成。
  RMI/IIOP:遠程方法調用internet對象請求中介協議,他們主要用於通過遠程調用服務。例如,遠程有一臺計算機上運行一個程序,它提供股票分析服務,我們可以在本地計算機上實現對其直接調用。當然這是要通過一定的規範才能在異構的系統之間進行通信。RMI是JAVA特有的。
  JNDI:JAVA命名目錄服務。主要提供的功能是:提供一個目錄系統,讓其它各地的應用程序在其上面留下自己的索引,從而滿足快速查找和定位分佈式應用程序的功能。
  JMS:JAVA消息服務。主要實現各個應用程序之間的通訊。包括點對點和廣播。
  JAVAMAIL:JAVA郵件服務。提供郵件的存儲、傳輸功能。他是編程中實現郵件功能的核心。相當MS中的EXCHANGE開發包。
  JTA:JAVA事務服務。提供各種分佈式事務服務。應用程序只需調用其提供的接口即可。
  JAF:JAVA安全認證框架。提供一些安全控制方面的框架。讓開發者通過各種部署和自定義實現自己的個性安全控制策略。
  EAI:企業應用集成。是一種概念,從而牽涉到好多技術。J2EE技術是一種很好的集成實現。
發佈了209 篇原創文章 · 獲贊 6 · 訪問量 41萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章