版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
項(xiàng)目四停車場(chǎng)收費(fèi)系統(tǒng)主講:雷靜[項(xiàng)目目標(biāo)]
完成一個(gè)關(guān)于停車收費(fèi)的數(shù)據(jù)庫信息管理的設(shè)計(jì)與開發(fā)。通過該項(xiàng)目掌握使用JDBC連接數(shù)據(jù)庫的方法;掌握訪問數(shù)據(jù)庫實(shí)現(xiàn)添加、刪除、修改和查詢的方法;掌握信息管理系統(tǒng)的設(shè)計(jì)與開發(fā)的方法。
任務(wù)一系統(tǒng)分析與設(shè)計(jì)[任務(wù)描述]
完成停車收費(fèi)管理程序的系統(tǒng)分析與設(shè)計(jì)。[本節(jié)目標(biāo)]能夠進(jìn)行完備的需求分析;能夠進(jìn)行系統(tǒng)功能劃分;能夠進(jìn)行數(shù)據(jù)庫設(shè)計(jì);能夠進(jìn)行詳細(xì)設(shè)計(jì)。
1、軟件開發(fā)流程軟件開發(fā)流程(Softwaredevelopmentprocess)即軟件設(shè)計(jì)思路和方法的一般過程,包括設(shè)計(jì)軟件的功能和實(shí)現(xiàn)的算法和方法、軟件的總體結(jié)構(gòu)設(shè)計(jì)和模塊設(shè)計(jì)、編程和調(diào)試、程序聯(lián)調(diào)和測(cè)試以及編寫、提交程序。2、E-R圖E-R圖也稱實(shí)體-聯(lián)系圖(EntityRelationshipDiagram),提供了表示實(shí)體類型、屬性和聯(lián)系的方法,用來描述現(xiàn)實(shí)世界的概念模型。實(shí)體型(Entity):具有相同屬性的實(shí)體具有相同的特征和性質(zhì),用實(shí)體名及其屬性名集合來抽象和刻畫同類實(shí)體;在E-R圖中用矩形表示,矩形框內(nèi)寫明實(shí)體名屬性(Attribute):實(shí)體所具有的某一特性,一個(gè)實(shí)體可由若干個(gè)屬性來刻畫。在E-R圖中用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體連接起來聯(lián)系(Relationship):聯(lián)系也稱關(guān)系,信息世界中反映實(shí)體內(nèi)部或?qū)嶓w之間的聯(lián)系。在E-R圖中用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實(shí)體連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系的類型(1:1,1:n或m:n)。
2、E-R圖聯(lián)系可分為以下3種類型:(1)一對(duì)一聯(lián)系(1∶1)(2)一對(duì)多聯(lián)系(1∶N)(3)多對(duì)多聯(lián)系(M∶N)2、E-R圖繪制E-R圖的步驟:⑴確定所有的實(shí)體集合⑵選擇實(shí)體集應(yīng)包含的屬性⑶確定實(shí)體集之間的聯(lián)系⑷確定實(shí)體集的關(guān)鍵字,用下劃線在屬性上表明關(guān)鍵字的屬性組合⑸確定聯(lián)系的類型,在用線將表示聯(lián)系的菱形框聯(lián)系到實(shí)體集時(shí),在線旁注明是1或n(多)來表示聯(lián)系的類型任務(wù)二連接數(shù)據(jù)庫[任務(wù)描述]
編寫Java程序連接MicrosoftSQLServer數(shù)據(jù)庫。
[本節(jié)目標(biāo)]掌握使用JDBC方式連接不同數(shù)據(jù)庫的方法。
數(shù)據(jù)庫訪問技術(shù)簡介
客戶機(jī)/服務(wù)器應(yīng)用程序數(shù)據(jù)庫編程ODBCJDBC兩個(gè)常用的API數(shù)據(jù)庫執(zhí)行SQL語句檢索查詢結(jié)果數(shù)據(jù)庫ODBC客戶機(jī)/服務(wù)器GUI應(yīng)用程序ODBC(開放式數(shù)據(jù)庫連接)(Microsoft提供)插入刪除修改應(yīng)用程序編程接口查詢JDBCJDBC(Java數(shù)據(jù)庫連接)(sun公司提供)Java應(yīng)用程序編程接口Java應(yīng)用程序數(shù)據(jù)庫插入修改刪除查詢
JDBC體系結(jié)構(gòu)2-1Java程序JDBC驅(qū)動(dòng)程序數(shù)據(jù)庫SQL命令結(jié)果JDBC體系結(jié)構(gòu)2-2應(yīng)用層Driver
StatementResultSet
Connection
各接口驅(qū)動(dòng)層java.sql
包3-1接口名說明
Connection此接口表示與數(shù)據(jù)的連接PreparedStatement此接口用于執(zhí)行預(yù)編譯的SQL語句
ResultSet此接口表示了查詢出來的數(shù)據(jù)庫數(shù)據(jù)結(jié)果集Statement此接口用于執(zhí)行SQL語句并將數(shù)據(jù)檢索到ResultSet
中
java.sql
包3-2類名說明
DriverManager此類用于加載和卸載各種驅(qū)動(dòng)程序并建立與數(shù)據(jù)庫的連接Date此類包含將SQL日期格式轉(zhuǎn)換成Java
日期格式的各種方法Time此類用于表示時(shí)間TimeStamp此類通過添加納秒字段為時(shí)間提供更高的精確度
JDBC程序訪問數(shù)據(jù)庫的步驟
2-1開始導(dǎo)入java.sql包加載并注冊(cè)驅(qū)動(dòng)程序創(chuàng)建一個(gè)Connection對(duì)象創(chuàng)建一個(gè)Statement對(duì)象執(zhí)行語句關(guān)閉ResultSet
對(duì)象關(guān)閉Statement對(duì)象關(guān)閉連接結(jié)束使用ResultSet對(duì)象任務(wù)三用戶登錄功能[任務(wù)描述]
編寫程序,實(shí)現(xiàn)登錄程序的用戶和密碼的判斷。根據(jù)數(shù)據(jù)庫中的Users表,根據(jù)用戶名查找密碼,若用戶名及密碼正確,進(jìn)入主界面,若用戶名或密碼錯(cuò)誤,彈出錯(cuò)誤提示對(duì)話框。[本節(jié)目標(biāo)]掌握向數(shù)據(jù)庫發(fā)送SQL語句的方式;掌握處理數(shù)據(jù)庫回返結(jié)果的方式;掌握PreparedStatement接口的使用。
JDBC查詢2-1SQL查詢字符串executeQuery()方法作為參數(shù)傳遞ResultSet
返回查詢數(shù)據(jù)SELECTname,email,phoneFROMcolleagues;使用SQL語句,查詢可編寫為:Stringstr="SELECTemp_id,lname,fnameFROMcolleagues";Statementstmt=con.createStatement();ResultSet
rset=stmt.executeQuery(str);使用JDBC編寫此查詢,則代碼為:Statement接口PreparedStatement接口3-1PreparedStatement接口(預(yù)編譯的SQL語句)PreparedStatement
用于提高運(yùn)行時(shí)效率執(zhí)行PreparedStatement
對(duì)象比執(zhí)行Statement對(duì)象快Statement接口使用結(jié)果集3-1ResultSet
對(duì)象完全依賴于Statement對(duì)象和Connection對(duì)象每次執(zhí)行SQL語句時(shí),都會(huì)用新的結(jié)果重寫結(jié)果集當(dāng)相關(guān)的Statement關(guān)閉時(shí),ResultSet
對(duì)象會(huì)自動(dòng)關(guān)閉Next()get<Type>()此方法將光標(biāo)從當(dāng)前位置下移一行從ResultSet
對(duì)象返回?cái)?shù)據(jù)
使用結(jié)果集3-2它演示對(duì)當(dāng)前行的處理使用next()
方法時(shí),記錄是按順序處理的必須按照數(shù)據(jù)返回的順序處理每行中的數(shù)據(jù)…ResultSet
rset=stmt.getResultSet();
while(rset.next()){Stringdept_name=rset.getString(1);} …使用結(jié)果集
3-3演示對(duì)當(dāng)前列的處理使用
get<Type>()
方法可以直接訪問列…Statementstmt=con.createStatement();Stmt.executeQuery("Select
emp_id,fnamefromEmployee");ResultSet
rset=stmt.getResultSet();while(rset.next()){Stringename=rset.getString("fname");
System.out.println(ename);}……Statementstmt=con.createStatement();stmt.executeQuery("Select
emp_id,fnamefromEmployee");ResultSet
rset=stmt.getResultSet();while(rset.next()) {Stringemployeeid=rset.getString(1);}…以下代碼顯示值
1
被作為參數(shù)傳遞給
getString()方法,這實(shí)際上指列
emp_id
的索引結(jié)果集的類型可滾動(dòng)不可滾動(dòng)光標(biāo)僅向前移動(dòng)光標(biāo)可前后移動(dòng),也可移動(dòng)至與當(dāng)前位置相對(duì)的某一行如果對(duì)數(shù)據(jù)庫做了更改,則新值是可見的結(jié)果集
TYPE_SCROLL_INSENSITIVETYPE_SCROLL_SENSITIVE
TYPE_FORWARD_ONLY任務(wù)四車輛入場(chǎng)模塊實(shí)現(xiàn)[任務(wù)描述]
根據(jù)任務(wù)一中的詳細(xì)設(shè)計(jì)完成“車輛入場(chǎng)”模塊的代碼編寫。[本節(jié)目標(biāo)]掌握頁面選項(xiàng)卡的設(shè)計(jì)及創(chuàng)建;掌握將數(shù)據(jù)添加到數(shù)據(jù)庫的方法;掌握程序編寫的方法。
卡片選項(xiàng)頁面(JTabbedPane)addTdb()方法有3種結(jié)構(gòu)方式:addTab(Stringtitle,Componentcomponent);addTab(Stringtitle,Iconicon,Componentcomponent);addTab(Stringtitle,Iconicon,Coraponent
component.Stringtip);其中,title為卡片標(biāo)題,icon為卡片圖標(biāo),component為放到選項(xiàng)頁面中的面板,tip為當(dāng)鼠標(biāo)停留在該頁面標(biāo)題時(shí)顯示的提示文字。任務(wù)五車輛收費(fèi)模塊實(shí)現(xiàn)[任務(wù)描述]
根據(jù)任務(wù)一中的詳細(xì)設(shè)計(jì)完成“車輛出場(chǎng)”模塊的代碼編寫。[本節(jié)目標(biāo)]掌握日期類Date的使用及組成部分的提??;掌握修改、訪問數(shù)據(jù)庫中數(shù)據(jù)的方法;掌握程序邏輯的完成。
Date類Date類表示日期和時(shí)間提供操縱日期和時(shí)間各組成部分的方法Date類的最佳應(yīng)用之一是獲取系統(tǒng)當(dāng)前時(shí)間Date類構(gòu)造方法構(gòu)造方法說明Date()使用當(dāng)天的日期創(chuàng)建DateDate(longdt)使用自1970年1月1日以后的指定毫秒數(shù)創(chuàng)建Date
演示:示例1voiddisplay(){StringstrDate,strTime="";
System.out.println(“今天的日期是:"+objDate);longtime=objDate.getTime();
System.out.println(“自1970年1月1日起"+“以毫秒為單位的時(shí)間(GMT):"+time);
strDate=objDate.toString();//提取GMT時(shí)間
strTime=strDate.substring(11,(strDate.length()-4));//按小時(shí)、分鐘和秒提取時(shí)間
strTime=“時(shí)間:"+strTime.substring(0,8);
System.out.println(strTime);}Date對(duì)象用于輸出日期DateTimeDisplay(){
objDate=newDate();}使用getTime()
方法從Date對(duì)象獲取時(shí)間任務(wù)六程序優(yōu)化[任務(wù)描述]
優(yōu)化程序,使程序結(jié)構(gòu)更加合理。[本節(jié)目標(biāo)]掌握使用MVC模式優(yōu)化程序;掌握使用DAO模式優(yōu)化程序。
設(shè)計(jì)模式設(shè)計(jì)模式(Designpattern)是一套被反復(fù)使用、多數(shù)人知曉的、經(jīng)過分類編目的、代碼設(shè)計(jì)經(jīng)驗(yàn)的總結(jié)。使用設(shè)計(jì)模式是為了可重用代碼、讓代碼更容易被他人理解、保證代碼可靠性。下面介紹兩種常用模式:MVC模式和DAO模式。
1、MVC模式MVC模式將交互系統(tǒng)分為模型(Model),視圖(View),控制器(Controller)三個(gè)部分。模型部分,是軟件所處理問題邏輯在獨(dú)立于外在顯示內(nèi)容和形式情況下的內(nèi)在抽象,封裝了問題的核心數(shù)據(jù)、邏輯和功能的計(jì)算關(guān)系,它獨(dú)立于具體的界面表達(dá)和I/O操作。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 迪士尼樂園課件
- 租房半年鑒合同(2篇)
- 裝修類承包合同范本(2篇)
- 人教A版河北省衡水中學(xué)2023-2024學(xué)年高二下學(xué)期第二次綜合素養(yǎng)評(píng)價(jià)數(shù)學(xué)試題
- 社戲課件 圖文
- 實(shí)數(shù)課件湘教版
- 第22課《夢(mèng)回繁華》八年級(jí)語文上冊(cè)精講同步課堂(統(tǒng)編版)
- 亨利詹姆斯課件
- 幼兒園小班音樂《春天天氣真好》課件
- 轉(zhuǎn)成課件 打印
- 涉密人員脫離涉密崗位審批表此表
- 全國河流水文站坐標(biāo)
- 高考專題復(fù)習(xí):散句與整句變換(課件32張)
- 霧化吸入常見并發(fā)癥的預(yù)防與處理
- 中小學(xué)幼兒園數(shù)字化教學(xué)資源進(jìn)校園管理辦法
- 高效課堂做好筆記 課件-學(xué)習(xí)習(xí)慣的培養(yǎng)主題班會(huì)
- 鞍鋼鲅魚圈鋼鐵基地項(xiàng)目設(shè)計(jì)方案
- 人衛(wèi)版外科學(xué)小腸疾病第一、二、三節(jié)課件
- 《區(qū)塊鏈應(yīng)用技術(shù)》課程教學(xué)大綱
- 工程變更洽商記錄樣板
- 內(nèi)蒙古蒙特威生物科技有限公司3000噸酪蛋白及衍生產(chǎn)品項(xiàng)目環(huán)評(píng)報(bào)告表
評(píng)論
0/150
提交評(píng)論