




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
項(xiàng)目四停車場(chǎng)收費(fèi)系統(tǒng)主講:雷靜[項(xiàng)目目標(biāo)]
完成一個(gè)關(guān)于停車收費(fèi)的數(shù)據(jù)庫(kù)信息管理的設(shè)計(jì)與開發(fā)。通過該項(xiàng)目掌握使用JDBC連接數(shù)據(jù)庫(kù)的方法;掌握訪問數(shù)據(jù)庫(kù)實(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ù)庫(kù)設(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ù)庫(kù)[任務(wù)描述]
編寫Java程序連接MicrosoftSQLServer數(shù)據(jù)庫(kù)。
[本節(jié)目標(biāo)]掌握使用JDBC方式連接不同數(shù)據(jù)庫(kù)的方法。
數(shù)據(jù)庫(kù)訪問技術(shù)簡(jiǎn)介
客戶機(jī)/服務(wù)器應(yīng)用程序數(shù)據(jù)庫(kù)編程ODBCJDBC兩個(gè)常用的API數(shù)據(jù)庫(kù)執(zhí)行SQL語句檢索查詢結(jié)果數(shù)據(jù)庫(kù)ODBC客戶機(jī)/服務(wù)器GUI應(yīng)用程序ODBC(開放式數(shù)據(jù)庫(kù)連接)(Microsoft提供)插入刪除修改應(yīng)用程序編程接口查詢JDBCJDBC(Java數(shù)據(jù)庫(kù)連接)(sun公司提供)Java應(yīng)用程序編程接口Java應(yīng)用程序數(shù)據(jù)庫(kù)插入修改刪除查詢
JDBC體系結(jié)構(gòu)2-1Java程序JDBC驅(qū)動(dòng)程序數(shù)據(jù)庫(kù)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ù)庫(kù)數(shù)據(jù)結(jié)果集Statement此接口用于執(zhí)行SQL語句并將數(shù)據(jù)檢索到ResultSet
中
java.sql
包3-2類名說明
DriverManager此類用于加載和卸載各種驅(qū)動(dòng)程序并建立與數(shù)據(jù)庫(kù)的連接Date此類包含將SQL日期格式轉(zhuǎn)換成Java
日期格式的各種方法Time此類用于表示時(shí)間TimeStamp此類通過添加納秒字段為時(shí)間提供更高的精確度
JDBC程序訪問數(shù)據(jù)庫(kù)的步驟
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ù)庫(kù)中的Users表,根據(jù)用戶名查找密碼,若用戶名及密碼正確,進(jìn)入主界面,若用戶名或密碼錯(cuò)誤,彈出錯(cuò)誤提示對(duì)話框。[本節(jié)目標(biāo)]掌握向數(shù)據(jù)庫(kù)發(fā)送SQL語句的方式;掌握處理數(shù)據(jù)庫(kù)回返結(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ù)庫(kù)做了更改,則新值是可見的結(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)]掌握頁(yè)面選項(xiàng)卡的設(shè)計(jì)及創(chuàng)建;掌握將數(shù)據(jù)添加到數(shù)據(jù)庫(kù)的方法;掌握程序編寫的方法。
卡片選項(xiàng)頁(yè)面(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)頁(yè)面中的面板,tip為當(dāng)鼠標(biāo)停留在該頁(yè)面標(biāo)題時(shí)顯示的提示文字。任務(wù)五車輛收費(fèi)模塊實(shí)現(xiàn)[任務(wù)描述]
根據(jù)任務(wù)一中的詳細(xì)設(shè)計(jì)完成“車輛出場(chǎng)”模塊的代碼編寫。[本節(jié)目標(biāo)]掌握日期類Date的使用及組成部分的提??;掌握修改、訪問數(shù)據(jù)庫(kù)中數(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)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年衛(wèi)生資格(中初級(jí))-營(yíng)養(yǎng)(師)歷年參考題庫(kù)含答案解析(5套典型題)
- 2025年醫(yī)藥衛(wèi)生考試-醫(yī)院行政招聘考試歷年參考題庫(kù)含答案解析(5套典型題)
- 2025年醫(yī)學(xué)高級(jí)職稱-中醫(yī)婦科(醫(yī)學(xué)高級(jí))歷年參考題庫(kù)含答案解析(5套典型題)
- 2025年企業(yè)招聘考試-鞍山鋼鐵集團(tuán)公司招聘歷年參考題庫(kù)含答案解析(5套典型考題)
- 事故養(yǎng)傷協(xié)議書
- 鄉(xiāng)村募捐協(xié)議書
- 2025年麗水太平洋壽險(xiǎn)麗水中心支公司招聘考試筆試試卷【附答案】
- 2025年江西教育廳廳屬事業(yè)單位考試筆試試卷【附答案】
- 2025年濟(jì)南高新區(qū)教育系統(tǒng)所屬事業(yè)單位引進(jìn)教育人才考試試卷【附答案】
- 古代醫(yī)藥與藥物專利許可備案考古合同
- 2025-2030中國(guó)氨基胍碳酸鹽行業(yè)產(chǎn)銷狀況及應(yīng)用前景預(yù)測(cè)報(bào)告
- 影刀RPA(競(jìng)品)分析報(bào)告
- 威視數(shù)字化轉(zhuǎn)型的軌跡與成效研究
- 小學(xué)語文教師招聘考試試題(含答案)2025
- 醫(yī)院信息安全管理制度
- 催收公司成本管理制度
- DB34T 4940-2024食用菌種植智慧方艙及物聯(lián)網(wǎng)技術(shù)指南
- 閱讀 第6課《怎么都快樂》(教學(xué)課件)-2024-2025學(xué)年一年級(jí)語文下冊(cè)同步課堂系列(統(tǒng)編版)
- JT-T 329-2025 公路橋梁預(yù)應(yīng)力鋼絞線用錨具、夾具和連接器
- 供應(yīng)商盡職調(diào)查報(bào)告(模板)
- 三通四通尺寸數(shù)據(jù)及標(biāo)準(zhǔn)表
評(píng)論
0/150
提交評(píng)論