項目四停車收費系統(tǒng)課件_第1頁
項目四停車收費系統(tǒng)課件_第2頁
項目四停車收費系統(tǒng)課件_第3頁
項目四停車收費系統(tǒng)課件_第4頁
項目四停車收費系統(tǒng)課件_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、項目四 停車場收費系統(tǒng)主講:雷靜項目目標完成一個關于停車收費的數(shù)據(jù)庫信息管理的設計與開發(fā)。通過該項目掌握使用JDBC連接數(shù)據(jù)庫的方法;掌握訪問數(shù)據(jù)庫實現(xiàn)添加、刪除、修改和查詢的方法;掌握信息管理系統(tǒng)的設計與開發(fā)的方法。 任務一 系統(tǒng)分析與設計 任務描述完成停車收費管理程序的系統(tǒng)分析與設計。本節(jié)目標能夠進行完備的需求分析;能夠進行系統(tǒng)功能劃分;能夠進行數(shù)據(jù)庫設計;能夠進行詳細設計。 1、軟件開發(fā)流程軟件開發(fā)流程(Software development process)即軟件設計思路和方法的一般過程,包括設計軟件的功能和實現(xiàn)的算法和方法、軟件的總體結構設計和模塊設計、編程和調(diào)試、程序聯(lián)調(diào)和測試以

2、及編寫、提交程序。 2、E-R圖E-R圖也稱實體-聯(lián)系圖(Entity Relationship Diagram),提供了表示實體類型、屬性和聯(lián)系的方法,用來描述現(xiàn)實世界的概念模型。 實體型(Entity):具有相同屬性的實體具有相同的特征和性質(zhì),用實體名及其屬性名集合來抽象和刻畫同類實體;在E-R圖中用矩形表示,矩形框內(nèi)寫明實體名屬性(Attribute):實體所具有的某一特性,一個實體可由若干個屬性來刻畫。在E-R圖中用橢圓形表示,并用無向邊將其與相應的實體連接起來 聯(lián)系(Relationship):聯(lián)系也稱關系,信息世界中反映實體內(nèi)部或?qū)嶓w之間的聯(lián)系。在E-R圖中用菱形表示,菱形框內(nèi)寫明

3、聯(lián)系名,并用無向邊分別與有關實體連接起來,同時在無向邊旁標上聯(lián)系的類型(1 : 1,1 : n或m : n)。 2、E-R圖繪制E-R圖的步驟:確定所有的實體集合 選擇實體集應包含的屬性 確定實體集之間的聯(lián)系 確定實體集的關鍵字,用下劃線在屬性上表明關鍵字的屬性組合 確定聯(lián)系的類型,在用線將表示聯(lián)系的菱形框聯(lián)系到實體集時,在線旁注明是1或n(多)來表示聯(lián)系的類型任務二 連接數(shù)據(jù)庫 任務描述編寫Java程序連接Microsoft SQL Server數(shù)據(jù)庫。 本節(jié)目標掌握使用JDBC方式連接不同數(shù)據(jù)庫的方法。 數(shù)據(jù)庫ODBC客戶機/服務器 GUI應用程序ODBC(開放式數(shù)據(jù)庫連接)(Micros

4、oft 提供)插 入刪 除修 改應用程序編程接口 查詢 JDBC JDBC(Java 數(shù)據(jù)庫連接)(sun公司提供)Java 應用程序編程接口Java應用程序數(shù)據(jù)庫 插 入修 改刪 除查詢 JDBC 體系結構 2-1Java 程序 JDBC 驅(qū)動程序數(shù)據(jù)庫SQL 命令 結果 java.sql 包 3-1 接口名 說明 Connection此接口表示與數(shù)據(jù)的連接PreparedStatement此接口用于執(zhí)行預編譯的 SQL 語句 ResultSet此接口表示了查詢出來的數(shù)據(jù)庫數(shù)據(jù)結果集Statement此接口用于執(zhí)行 SQL 語句并將數(shù)據(jù)檢索到 ResultSet 中 java.sql 包 3

5、-2類名 說明 DriverManager此類用于加載和卸載各種驅(qū)動程序并建立與數(shù)據(jù)庫的連接Date此類包含將 SQL 日期格式轉(zhuǎn)換成 Java 日期格式的各種方法Time此類用于表示時間TimeStamp此類通過添加納秒字段為時間提供更高的精確度 任務三 用戶登錄功能 任務描述 編寫程序,實現(xiàn)登錄程序的用戶和密碼的判斷。根據(jù)數(shù)據(jù)庫中的Users表,根據(jù)用戶名查找密碼,若用戶名及密碼正確,進入主界面,若用戶名或密碼錯誤,彈出錯誤提示對話框。本節(jié)目標掌握向數(shù)據(jù)庫發(fā)送SQL語句的方式;掌握處理數(shù)據(jù)庫回返結果的方式;掌握PreparedStatement接口的使用。 JDBC 查詢2-1SQL 查詢

6、字符串 executeQuery() 方法 作為參數(shù)傳遞ResultSet 返回查詢數(shù)據(jù)SELECT name, email, phone FROM colleagues;使用 SQL 語句,查詢可編寫為:String str = SELECT emp_id, lname, fname FROM colleagues;Statement stmt = con.createStatement();ResultSet rset = stmt.executeQuery(str);使用 JDBC 編寫此查詢,則代碼為:Statement接口PreparedStatement接口 3-1 Prepare

7、dStatement接口(預編譯的 SQL 語句)PreparedStatement 用于提高運行時效率執(zhí)行 PreparedStatement 對象比執(zhí)行 Statement 對象快Statement 接口使用結果集 3-1 ResultSet 對象完全依賴于 Statement 對象和 Connection 對象每次執(zhí)行 SQL 語句時,都會用新的結果重寫結果集當相關的 Statement 關閉時,ResultSet 對象會自動關閉Next( )get()此方法將光標從當前位置下移一行 從 ResultSet 對象返回數(shù)據(jù) 使用結果集 3-2 它演示對當前行的處理使用 next() 方法時

8、,記錄是按順序處理的必須按照數(shù)據(jù)返回的順序處理每行中的數(shù)據(jù)ResultSet rset = stmt.getResultSet();while(rset.next() String dept_name = rset.getString(1);使用結果集 3-3 演示對當前列的處理使用 get() 方法可以直接訪問列Statement stmt = con.createStatement();Stmt.executeQuery(Select emp_id, fname from Employee) ;ResultSet rset = stmt.getResultSet();while(rset.

9、next() String ename = rset.getString (fname); System.out.println ( ename) ;Statement stmt = con.createStatement();stmt.executeQuery(Select emp_id, fname from Employee);ResultSet rset = stmt.getResultSet();while(rset.next() String employeeid = rset.getString (1);以下代碼顯示值 1 被作為參數(shù)傳遞給 getString() 方法, 這實際

10、上指列 emp_id 的索引任務四 車輛入場模塊實現(xiàn) 任務描述 根據(jù)任務一中的詳細設計完成“車輛入場”模塊的代碼編寫。本節(jié)目標掌握頁面選項卡的設計及創(chuàng)建;掌握將數(shù)據(jù)添加到數(shù)據(jù)庫的方法;掌握程序編寫的方法。 卡片選項頁面(JTabbedPane)addTdb()方法有3種結構方式: addTab(String title,Component component); addTab(String title,Icon icon,Component component); addTab(String title,Icon icon,Coraponent component.String tip);其中

11、,title為卡片標題,icon為卡片圖標,component為放到選項頁面中的面板,tip為當鼠標停留在該頁面標題時顯示的提示文字。 Date 類Date 類表示日期和時間提供操縱日期和時間各組成部分的方法Date 類的最佳應用之一是獲取系統(tǒng)當前時間Date 類構造方法構造方法說明Date()使用當天的日期創(chuàng)建 DateDate(long dt)使用自 1970 年 1 月 1 日以后的指定毫秒數(shù)創(chuàng)建 Date 演示:示例 1void display() String strDate , strTime = ; System.out.println(“今天的日期是: + objDate);

12、long time = objDate.getTime(); System.out.println(“自 1970 年 1 月 1 日起 + “以毫秒為單位的時間 (GMT): + time); strDate = objDate.toString(); / 提取 GMT 時間 strTime = strDate.substring(11 , (strDate.length() - 4); / 按小時、分鐘和秒提取時間 strTime = “時間: + strTime.substring(0 , 8); System.out.println(strTime); Date 對象用于輸出 日期Da

13、teTimeDisplay() objDate = new Date(); 使用 getTime() 方法從 Date 對象獲取時間任務六 程序優(yōu)化 任務描述優(yōu)化程序,使程序結構更加合理。本節(jié)目標掌握使用MVC模式優(yōu)化程序;掌握使用DAO模式優(yōu)化程序。 設計模式設計模式(Design pattern)是一套被反復使用、多數(shù)人知曉的、經(jīng)過分類編目的、代碼設計經(jīng)驗的總結。使用設計模式是為了可重用代碼、讓代碼更容易被他人理解、保證代碼可靠性。下面介紹兩種常用模式:MVC模式和DAO模式。 1、MVC模式MVC模式將交互系統(tǒng)分為模型(Model),視圖(View),控制器(Controller)三個部分。模型部分,是軟件所處理問題邏輯在獨立于外在顯示內(nèi)容和形式情況下的內(nèi)在抽象,封裝了問題的核心數(shù)據(jù)、邏輯和功能的計算關系,它獨立于具體的界面表達和I/O操作。視圖部分,它使表示模型數(shù)據(jù)及邏輯關系和狀態(tài)的信息以特定形式展示給用戶。它從模型獲得顯示信息,對于像他的信息可以有多個

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論