




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
課堂作業安裝MySql數據庫,啟動數據庫服務。編寫Java程序,通過純Java數據庫驅動程序連接Oracle查詢test數據庫dept表中的所有信息課堂練習創建一個名叫student的表,包含三個屬性:學號:sno,長為20的字符串,主鍵;姓名:sname,長為10的字符串,非空;年齡:sage,長為3的整數(1-200);在表中插入三個合法記錄(內容隨意)在表中執行查詢、修改和刪除操作;刪除表課堂練習創建一個名叫loginuser的表,包含三個屬性:用戶名:uname,長為20的字符串,主鍵;密碼:upass,長為10的字符串,非空;年齡:uage,長為3的整數(1-200);在表中插入三個合法記錄(內容隨意)在表中執行查詢、修改和刪除操作;7.1JDBC簡介什么是JDBC?Java數據庫連接(JavaDataBaseConnectivity)Sun公司開發的一種用于執行SQL語句的JavaAPI由一組用Java語言編寫的類和接口組成,可以為多種關系數據庫提供統一訪問通用性:只需用JDBCAPI編寫一個程序,就可以向相應數據庫發送SQL語句,進而訪問多種不同的數據庫7.1JDBC簡介JDBCAPI中的類和接口java.sql.DriverManager類java.sql.Connection接口java.sql.Statement接口java.sql.PreparedStatement接口java.sql.ResultSet接口
7.1JDBC簡介與數據庫建立連接的兩種方式。1)建立JDBC-ODBC橋接器:由Sun公司本身開發出來的軟件模塊性能不高(通常在教學中使用)2)加載純Java數據庫驅動程序所有驅動程序由各個數據庫生產廠商按照JDBC標準提供性能較高(通常在軟件開發中使用)7.2Java驅動程序連接數據庫加載純Java驅動程序連接數據庫的步驟:1)加載Java數據庫驅動程序2)創建連接(Connection)對象,連接到數據庫3)創建預處理語句(Statement)對象4)執行SQL語句,得到查詢結果(ResultSet)5)對結果操作后,釋放連接賈璉欲執事7.2Java驅動程序連接數據庫1)加載Java數據庫驅動程序先將mysql-connector-java-5.0.8-bin文件加入到當前項目的類庫中具體添加方法請看圖示。選擇properties7.2Java驅動程序連接數據庫1)加載Java數據庫驅動程序Class.forName("com.mysql.jdbc.Driver");Class是包java.lang中的一個類;Class類通過調用靜態方法forName加載com.mysql.jdbc包中的Driver類連接數據庫;加載類時,可能會發生異常,需要捕捉7.2Java驅動程序連接數據庫2)創建連接(Connection)對象 Connectioncon=DriverManager.getConnection(“jdbc:mysql://
主機:端口號:數據庫名","用戶名","密碼");jdbc:mysql://表示通過jdbc連接MySql數據庫主機:端口:數據庫名一般為localhost:3306:test用戶名/密碼常用的是root/1234創建連接時,可能會發生異常,需要捕捉。7.2Java驅動程序連接數據庫3)創建預處理語句(Statement)對象 PrepareStatementps=con.prepareStatement("SQL語句");預編譯處理后,會生成該數據庫底層的內部命令,并將該命令封裝在PreparedStatement對象中;預處理的方式不僅減輕了數據庫的負擔,而且也提高了訪問數據庫的速度。7.2Java驅動程序連接數據庫4)執行SQL語句 ResultSetrs=ps.executeQuery();//執行查詢命令
ps.executeUpdate(); //執行增刪改命令編譯好PreparedStatement對象之后,可令其執行操作。如果預編譯中的SQL語句是查詢命令,則執行executeQuery()方法如果預編譯中的SQL語句是增刪改命令,則執行executeUpdate()方法7.2Java驅動程序連接數據庫5)釋放連接 con.close() //關閉數據庫連接為了不浪費系統資源,數據庫每次使用后都必須關閉。關閉數據庫的順序與打開數據庫的順序相反1)先關閉結果集(ResultSet)2)再關閉操作(Statement)3)最后關閉連接(Connection)排序查詢可以在SQL語句中使用ORDERBY子語句,對記錄排序。例如:按總成績排序查詢的SQL語句 SELECT*FROMstudentORDERBYsno;升序:ASC(默認)降序:DESC模糊查詢可以用SQL語句操作符LIKE進行模式般配:使用“%”代替0個或多個字符;用一個下劃線“_”代替1個字符;比如:下述語句查詢姓氏是“王”的記錄:SELECT*FROMstudentsWHEREsnameLIKE‘王%’;更新、添加、刪除預處理對象(PrepareStatement)執行如下方法:publicintexecuteUpdate();SQL更新操作常用命令:UPDATE:UPDATEstudentSETsage=88WHEREsno=‘002’;INSERT:INSERTINTOstudentVALUES(‘004',‘xuliu',29);DELETE:DELETEFROMstudentWHEREsno=‘004’;在對SQL進行預處理的時候,可以使用通配符“?”來代替字段的值,在預處理語句執行之前,需調用相關方法設置通配符所代表的具體值。普通查詢:sql=con.prepareStatement("SELECT*FROM成績表WHEREmath<89");通配符查詢:sql=con.prepareStatement("SELECT*FROM成績表WHEREmath<?");sql.setInt(1,89);優點:使用通配符可以使得應用程序更容易動態的改變SQL語句中關于字段值的條件7.3通配符7.4在JSP中使用數據庫JSP頁面可以在JAVA程序片中添加連接數據庫的代碼,完成對數據庫的操作但這種方式寫出的代碼太混亂!!!無法將數據的顯示與數據的處理分離。7.4在JSP中使用數據庫解決方案:采用JSP+JavaBean模式。即:JSP頁面調用bean來完成對數據庫的操作課堂練習:制作一個簡易的客戶登陸頁面:由login.jsp、server.jsp、success.jsp和fail.jsp四個頁面構成;在submit.jsp中輸入用戶名和密碼,點擊提交鍵后將信息提交給server.jsp處理server.jsp通過JavaBean連接Oracle數據庫,查詢在User表中是否存在輸入的用戶名和密碼,是則顯示成功,跳轉至success.jsp,否則跳轉至fail.jsp,顯示失敗練習:順序查詢練習:排序查詢練習:模糊查詢練習:更新、添加與刪除操作
Statement對象調用方法:intexecuteUpdate(StringsqlStatement);通過參數sqlStatement指定的方式實現對數據庫表中記錄的更新、添加和刪除操作。練習:更新操作
練習:添加操作
練習:刪除操作
練習:更新、添加與刪除操作
7.基于CachedRowSet分頁顯示記錄CachedRowSetImpl對象可以保存ResultSet對象中的數據,而且CachedRowSetImpl對象不依賴Connnection對象這意味著一旦把ResultSet對象中的數據保存到CachedRowSetImpl對象后,就可以關閉和數據庫的連接如何連接Oracle1.加載Java驅動程序Class.forName("oracle.jdbc.driver.OracleDriver");2.建立連接con=DriverManager.getConnection("jdbc:oracle:thin:@主機:端口號:數據庫名","用戶名","密碼");看例子8.連接Oracle數據庫加載驅動程序:Class.forName("oracle.jdbc.driver.OracleDriver");建立連接:Connectionconn=DriverManager.getConnection("jdbc:oracle:thin:@主機host:端口號:數據庫名","用戶名","密碼");
9.連接MySq
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 設備設施的安全評估與造價咨詢協議
- 拍賣物品歸屬未確定協議
- 《Python程序設計基礎》課件 第1、2章 Python 概述;Python 基礎語法
- 舞臺地板施工方案
- 提問我國遠洋重大件貨物標準是重長寬討論冷藏貨物要保證哪兩方
- 中醫中藥課件
- 個人消費貸款合同利率調整協議
- 建設項目合同糾紛處理實務案例
- 【課件】二項式系數的性質+課件高二下學期數學人教A版(2019)選擇性必修第三冊
- 2025年度設備維修保養服務合作協議
- 三人成人心肺復蘇標準流程
- 口腔頜面外科多選判斷題
- 基于plc的輸電線路自動重合閘系統設計
- 光伏電站作業危險點分析及預控措施手冊
- 2022年新高考山東政治高考真題(含答案)
- 新能源電力設備項目立項報告(模板范本)
- 萬能外圓磨床作業指導書
- SAP-BASIS-常維護手冊
- 乙炔氣柜施工方案
- 兒童故事小壁虎借尾巴ppt課件
- 《春日》PPT課件
評論
0/150
提交評論