本文目錄一覽:
JCOM是什麼意思
是一種Java/COM互操作系統的簡稱
jCOM,即Java/COM橋,它是一種用軟件實現的橋接機制,可以幫助Java應用程序快速訪問微軟的COM/DCOM組件。而且,微軟的COM應用程序也可以通過這個機制訪問基於Java的對象。jCOM不僅具有實現相對簡單的特點,而且其最吸人的部分在於它的透明性。對Java程序員來說,COM對象看起來與其他Java對象沒有什麼不同。而對COM開發人員來說,遠程Java對象看起來就象是本機COM組件。在這些對象中可以找到jCOM運行時刻引擎進行動態類型映射,因此從表面上屏蔽了數據類型間的差異。遠程對象的數據類型被動態地轉換成調用程序所使用的基元類型。對Java開發人員來說,COM數據類型表現得就象Java基元類型;而對COM開發人員來說,Java數據類型看起來就象是COM數據類型。
jCOM聲稱以雙向方式工作,實際只是允許在Java和COM組件之間,在任意一個方向上通信—Java對象可以調用COM組件,COM組件又可以調用Java對象。當然,在這兩種不同的分布式組件框架之間,有着兩種截然不同的底層體系結構負責線路級通信。在運行時,jCOM內部設置了一個雙協議棧環境,實現對底層兩個彼此獨立的基礎結構的支持(參考圖1)。對於COM組件,有一個在DCE遠程過程調用之上的COM/DCOM實現。對於Java對象,有一個在Java遠程方法IIOP(Internet Inter-ORB)之上的遠程方法調用(RMI)實現。調用要通過這些協議棧,並通過內部的協議轉換進行處理,內部的協議轉換能夠有效地屏蔽掉低一級的協議。對於EJB來說,來自COM客戶的調用看起來就好像是來自Java客戶的調用。對於COM組件來說,來自Java客戶的調用看起來就好象是來自一個普通的COM客戶。
jCOM提供了能夠自動生成更高級別COM/DCOM代理以及RMI存根的工具。客戶程序用COM/DCOM代理以及RMI存根在這兩個不同的基礎結構間封裝並傳送調用。jCOM可以設置成本機模式,這樣就可以利用本機操作系統的動態鏈接庫,從而減輕DCOM的網絡負荷,並極大地提高系統性能。
怎樣JAVA通過JDBC-ODBC橋訪問數據源,配置數據源
導入java.sql包
一、加載要連接數據庫的驅動程序
//Jdbc-Odbc橋 和 Microsoft Access 數據庫
Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);
// SQL Server 驅動程序:
Class.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver”);
註:Class.forName()方法將給定的類加載到JVM,如果系統中不存在給定的類,則會引發異常
二、通過驅動程序管理器得到連接實例
Connection conn=null;
//1.
//1.1建立數據源
conn=DriverManager.getConnection(“jdbc:odbc:MyDataSource”); //MyDataSource是數據源名稱
//1-2、不建立數據源
conn=DriverManager.getConnection(“jdbc:odbc:;Driver=Microsoft Access Driver (*.mdb);DBQ=C:\\VBTest.mdb”);
//2.SQL Server
conn=DriverManager.getConnection(“jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=mydb”,”sa”,””);
註:DriverManager類跟蹤已註冊的驅動程序,通過getConnection(URL)方法, 找到一個能夠連接至URL中指定的數據庫驅動程序
它接收三個參數, 分別表示1 數據源的名稱、類型 2 用戶名(可選) 3 密碼(可選)
三、基於連接對象建立處理器對象
Statement stmt=conn.createStatement();
四、準備sql命令
String sql=”select * from Student”;
五、執行命令返回結果集
ResultSet rs=stmt.executeQuery(sql);
六、顯示結果集
while(rs.next())//只要後面有記錄
{
//對當前行的所有字段遍歷
for(int i=1;i=rs.getMetaData().getColumnCount();i++)
{
System.out.print(rs.getMetaData().getColumnName(i)+”: “);//顯示字段名
System.out.println(rs.getString(i));//顯示字段當前值
}
System.out.println();
}
七、關閉資源
rs.close(); //關閉記錄集
stmt.close(); //關閉處理器對象
conn.close(); //關閉連接對象
預處理器的應用:
//3.基於連接對象建立預處理器對象
PreparedStatement pstmt=conn.prepareStatement(“insert into student values(?,?,?,?)”);
//4.給預處理對象的參數賦值
pstmt.setString(1,”8888″);
pstmt.setString(2,”nemo”);
pstmt.setString(3,”accp”);
pstmt.setString(4,”sanxianglu”);
//5.執行預處理命令
int i=pstmt.executeUpdate();
System.out.println(i+”條記錄已成功插入!”);
java直連和橋連的區別
我認為的區別: 1、橋連 優點:通用,只要直至ODBC的都可以,即使更換了數據庫種類,只要表結構相同,代碼不需要修改 確定:速度慢,應為經過了ODBC中轉,只能使用標準的SQL,不能使用T-SQL或P-SQL 2、直連 優點:速度優化,可以使用廠商對於標準SQL的擴展 確定:專用,有些數據庫沒有直連的JAVA實現
滿意請採納
請問有關java連接數據庫中的直連和橋連問題
橋接,需要在控制面班-〉管理工具-〉odbc數據源中進行配置。
直連就是在類中直接用url的方式指定驅動器和數據源,不用上面的手工配置步驟,直接操作數據庫,當然直連要方便得多。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/154152.html