?? 應用java技術實現數據庫應用系統.txt
字號:
if(i<numColumns)
System.out.print(rmeta.getColumnName(i)+" | ");
else
System.out.println(rmeta.getColumnName(i));
}
while(r.next()){
for(int i=1;i<=numColumns;++i) {
if(i<numColumns)
System.out.print(r.getString(i)+" | ");
else
System.out.println(r.getString(i).trim());
}
}
}
4.執行SQL語句
SQL代表著結構化查詢語言,即 Structured Query Language的縮寫。SQL是用來同數據庫服務器交互的一種語言。SQL被IBM在70-80年代開發,80年代后進行了標準化。但標準已經更新,現已出現好幾個版本。另外一些數據庫廠商也增加擴展了一些特殊的功能語句等。JDBC需要與JDBC兼容的SQL驅動支持,即支持ANSI SQL72標準。SQL有很多用途,當SQL語句被用來創建、設計數據庫時,它是一個數據定義語言;當用來向數據庫插入信息、更新或刪除已經存在的信息時,它是一個數據維護語言;當從數據庫中查詢提取信息時,它是數據查詢語言。有關SQL語句的一些語法規則,請參考有關書籍,在此略。Java語言設計java.sql 包的目的就是讓你執行符合Java的SQL語句。java.sql中的Statement 接口定義了一些方法,這些方法通過SQL語句的執行來與數據庫交互,也支持通過ResultSet對象返回查詢結果集合的處理和提供查詢處理機制的控制。execute()、 executeQuery() 和executeUpdate() 方法是Statement接口的主要方法。executeQuery() 方法執行一個 SQL語句(如SELECT語句等)并查詢返回一個ResultSet對象。executeUpdate() 方法執行一個SQL 語句 (如INSERT、UPDATE、DELETE 語句等)并更新數據庫、返回SQL查詢結果集合的行數(記錄數),如果結果集合為空則行數為0。
Java中有關SQL語句的程序片段如下:
import java.sql.*;
import java.util.*;
class ResultApp {
public static void main(String args[]) {
try{
// Load the JDBC-ODBC bridge driver方式
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url="jdbc:odbc:tend";
// 連接到數據庫
Connection connection=DriverManager.getConnection(url);
Statement statement = connection.createStatement();
String sql="SELECT * FROM courses";
// 執行SQL 語句得到結果集合
ResultSet result = statement.executeQuery(sql);
displayResults(result);
// 關閉數據庫連接
connection.close();
}catch(Exception ex){
System.out.println(ex);
System.exit(0);
}
}
5.數據庫安全性
數據庫的安全性問題是很多機構非常關心的問題。因為數據庫中可能包含一些比較敏感的信息需要加以限制訪問范圍;數據的完整性也是極為重要的,未授權的肆意修改數據庫信息可能造成公司巨大的損失;數據的有效提供也是重要的,Internet/Intranet用戶隨時需要信息,這就常常需要提供每天24小時、每周7天的可訪問。JDBC支持數據庫安全嗎?答案不是非常滿意。當前JDBC要依靠數據庫服務器自身提供安全保護。企業范圍的數據庫服務器,如微軟的SQL Server提供用戶ID和口令,然而,即使是口令保護也不是非常安全的,如果口令在客戶與服務器之間未加密,它們能很容易被截獲而危及安全。
Java的安全機制很高,Java2改進了沙箱,為用戶和程序人員提供了靈活的安全管理及配置工具。Applet程序安全性更加靈活,建議利用Java的安全機制及提供的一些工具來進行數據庫應用系統的開發。
Java2(JDK1.2)提供的安全工具如下:
用jar工具打包你的applets成為Java 存檔文件 (JAR);
用jarsigner對JAR文件進行數字簽名;
用policytool對信任applets的Java運行環境Java Runtime Environment (JRE)配置;
用keytool進行數字證書的簽證;
三、 Java 的數據庫應用開發展望
至此,你已知道:要進行Java 數據庫應用程序的設計,需要具備多方面的技能,包括了解或熟練數據庫驅動程序、SQL( 結構化查詢語言)以及java.sql包所包含的類、接口等。JavaSoft 已經注意到了Java 在數據庫程序設計方面的棘手而復雜,他們現在正在開發新的同Java一樣容易使用的產品JavaBlend ,該產品將大大簡化利用JDBC構建數據庫應用系統的過程。JavaBlend 將自動鏡像Java 對象成為存儲在數據庫中的信息。所有對對象的操作,都將產生與之鏡像的數據庫的動作,包括對存儲在數據庫中信息的自動查詢、更新等。一旦Java 的對象到數據庫鏡像(Java object-to-database mapping)被成功建立,JavaBlend 將免費發放給Java 程序員,以使Java 程序員從利用繁瑣SQL語句、結果集合解決方案過渡到利用JavaBlend 把對Java 對象的方法調用相應地自動轉化成SQL語句和結果集合這一簡單方案。這將使JDBC和SQL知識在數據庫開發時不必考慮過多,而使程序員專心于用戶業務方案的提供解決。JavaBlend目前并不包含在JDK 1.2中。
Java 語言及其技術是當今世界程序設計語言的主流。應用Java 技術實現數據庫應用系統是未來的發展方向,Java 的數據庫應用現已成功地應用于商業、政府及大學等領域,應用才剛剛起步。相信不久的將來,Java 技術將更加完善成熟。Java的數據庫應用也將遍地開花。
參考文獻:
[1] 《Java 1.2 unleashed》 Jamie Jaworski 1998,Macmillan Computer publishing
[2] 《Java 教程-Internet 面向對象程序設計》 Mary Campione 等著
[3] 《Java語言程序設計》 姜剛等著 1998,人民郵電出版社
[4] 《Web網站的創建、規劃、管理及信息發布》 1999,作者
作者簡介:
張姝,工程師,畢業于東北大學計算機及其應用專業。現主要從事工程CAD設計及管理信息系統開發工作,是中國電機工程學會會員,曾發表過《網絡環境下管理信息系統設計的幾點考慮》、《Intranet 環境下事物處理系統的解決方案》、《Web網站的創建、規劃、管理及信息發布》等論文。
本欄文章均來自于互聯網,版權歸原作者和各發布網站所有,本站收集這些文章僅供學習參考之用。任何人都不能將這些文章用于商業或者其他目的。( ProgramFan.Com )
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -