電量監(jiān)視系統(tǒng)——畢業(yè)論文
《電量監(jiān)視系統(tǒng)——畢業(yè)論文》由會(huì)員分享,可在線閱讀,更多相關(guān)《電量監(jiān)視系統(tǒng)——畢業(yè)論文(27頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、電 量 監(jiān) 視 系 統(tǒng)延邊大學(xué)本科畢業(yè)論文電量監(jiān)視系統(tǒng)目 錄摘要3第一章緒論5第一節(jié) Jbuilder6概述5第二節(jié) Jbuilder6的新特征5第三節(jié) 電力監(jiān)測系統(tǒng)的必然性7第二章 可行性研究8第三章 需求分析9第四章 總體設(shè)計(jì)10第一節(jié) 數(shù)據(jù)庫設(shè)計(jì)10第二節(jié) 程序設(shè)計(jì)12第三節(jié)各表之間的關(guān)系14第四節(jié)總體設(shè)計(jì)14第五章詳細(xì)設(shè)計(jì)15第六章測試報(bào)告21第七章關(guān)鍵技術(shù)分析22第八章學(xué)習(xí)心得25摘要 電腦界常有一股又一股的風(fēng)潮,在這風(fēng)潮中,JBuilder 是使用最廣泛的工具之一。JBuilder6 提供了可視化集成開發(fā)工具,支持開發(fā)人員構(gòu)建標(biāo)準(zhǔn)的爪哇應(yīng)用系統(tǒng)。其開放的環(huán)境、基于組建的開發(fā)方式和豐
2、富的爪哇開發(fā)向?qū)O大的簡化了開發(fā)人員的工作,使開發(fā)更為快捷、方便。本次的畢業(yè)設(shè)計(jì)以Jbuilder6 作為開發(fā)工具,操作平臺(tái)是 Windows2000服務(wù)器版,后臺(tái)數(shù)據(jù)庫選用Microsoft Sqlserver 2000,選用的語言為JavaServerPage與Applet.畢業(yè)設(shè)計(jì)題目是“電量監(jiān)視系統(tǒng)”,該系統(tǒng)方便的查詢校內(nèi)各辦公樓的用電情況的實(shí)時(shí)監(jiān)控以及日統(tǒng)計(jì),月統(tǒng)計(jì)功能等。本論文用1111111111111111111111等幾個(gè)步驟,并附有流程圖、層次圖和數(shù)據(jù)流圖。關(guān)鍵字:JBuilder6 JavaServerPage SQL serverAbstractWiththepopul
3、arizationofcomputerandrapiddevelopmentofnewtechnologyincomputerscience,Peoplebeingtousethecomputertosolvethepracticalproblems.第一章 緒論第一節(jié) Jbuilder6概述Jbuilder6是美國Borland公司最近推出的遵循Sun公司J2EE標(biāo)準(zhǔn)的可視化集成開發(fā)工具,是目前使用最廣泛的Java開發(fā)工具之一。 Jbuilder6提供了可視化的集成開發(fā)工具,支持開發(fā)人員構(gòu)建標(biāo)準(zhǔn)的Java應(yīng)用系統(tǒng)。其開放的環(huán)境,基于組建的開發(fā)方式和豐富的Java開發(fā)向?qū)O大的簡化了開放人員的
4、工作,使開放更為快捷、方便。Borland JBuilder 是業(yè)界領(lǐng)先的Java 可視化開發(fā)環(huán)境,可用于構(gòu)建基于Java 2 平臺(tái)的應(yīng)用程序、Applets、JSP/Serverlets、JavaBeansTM、Enterprise JavaBeans,以及分布式J2EE 應(yīng)用。Jbuilder6 是一組全方面的高效率工具,使用Java編程語言創(chuàng)建可伸縮的、高興能的和具有不依賴與平臺(tái)性能的應(yīng)用程序。由于可伸縮性和基于組件,Jbuilder 可以開發(fā)所有級(jí)別的應(yīng)用工程,從Applet 到連接企業(yè)級(jí)的、分布式的、多層解決方案的網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用。Jbuilder6環(huán)境是用純Java編寫。任何Java
5、編寫的程序都可以在Jbuilder上運(yùn)行、調(diào)試和工作。Jbuilder6為開發(fā)程序提供了很多工具,它使用了多項(xiàng)Java技術(shù),其中包括:? JavaBeans? Java2? Java Development Kit (JDK)? JFC/Swing? OpenTools Development? Open Database Connectivity (ODBC)? Structured Query Language (SOL)? 所有數(shù)據(jù)庫服務(wù)器Jbuilder6企業(yè)版還為下面技術(shù)提供了便利的工具:? EnterPrise Java Beans (EJB)? Version Control S
6、ystems? Extensible Markup Language (XML)? Java server pages (JSP)? Common Object Request Broker Architecture (CORBA)Jbuilder6也為開發(fā)者提供了一個(gè)靈活的、開放的構(gòu)架,這得整合新版本的JDK、第三方工具、插件以及JavaBeans組件的工作變得更容易,對OpenTools資源如擴(kuò)展JavaDoc注釋和概念性文檔也有幫助。第二節(jié) Jbuilder6的新特征 Jbuilder6新增了幾個(gè)功能,并對已有的功能進(jìn)行了改進(jìn),包括一個(gè)單步產(chǎn)品安裝過程,以及自動(dòng)卸載功能。其他的功能還有:
7、? 對XML的支持XML文檔的創(chuàng)建和確認(rèn)XML文檔的發(fā)達(dá)? Web應(yīng)用開發(fā) Jbuilder6支持Web應(yīng)用,可以使用Web Application向?qū)?chuàng)建一個(gè)新的Web 應(yīng)用或者引入一個(gè)已有的Web應(yīng)用。? Enterprise Java Beans (EJB) 即支持新的應(yīng)用服務(wù)器? JMS和EAR向?qū)?Jbuilder6又一個(gè)新的JMS向?qū)?,它能幫助您建立生產(chǎn)商和用戶所使用的Java 消息服務(wù)(Java Message Service,簡稱JMS)。Jbuilder6也有一個(gè)新的EAR向?qū)?,它可以?chuàng)建Enterprise Archive(EAR)文件。EAR文件包含了其他檔案文件,他們以
8、建造了企業(yè)級(jí)應(yīng)用。 ? 團(tuán)隊(duì)開發(fā) ? 編譯器的增強(qiáng)功能bmj和bcj是Jbuilder6專業(yè)版和企業(yè)版的功能。 ? 工程屬性編輯器頁、構(gòu)造頁、資源標(biāo)簽。 ? 配置JDK ? 部署Archive Buider有幾個(gè)新的歸檔類型:*Applet JAR為使用較新的Web瀏覽器而創(chuàng)建一個(gè)壓縮的JAR文件。*Appler ZIP為使用不支持JAR文件的舊Web瀏覽器而創(chuàng)建一個(gè)壓縮ZIP文件。壓縮文件沒有一個(gè)明顯的文件。*J2EE Application Client它包含了部署描述符,應(yīng)用于一個(gè)容器來提供系統(tǒng)服務(wù)。 ? IDE的增強(qiáng)功能對Jbuilder6的集成開發(fā)IDE的改進(jìn)包括以下內(nèi)容。*聲音反饋
9、*結(jié)構(gòu)窗口*樣列圖標(biāo)*文件名框*資源屬性*工具菜單 ? 語言的支持Jbuilder6的Java語言支持包括:*適合于可再用組件的Java Beans*適合于Java用戶界面開發(fā)的JFC/Swings組件第三節(jié) 電力監(jiān)測系統(tǒng)的必然性計(jì)算機(jī)已經(jīng)成為我們生活方面的不可缺少的一部分:今天,計(jì)算機(jī)的價(jià)格已經(jīng)十分低廉,性能卻長足的進(jìn)化。它已經(jīng)被應(yīng)用于許多領(lǐng)域,計(jì)算機(jī)之所以如此流行的原因主要有以下幾個(gè)放面:首先,計(jì)算機(jī)可以代替人工進(jìn)行許多復(fù)雜的勞動(dòng):其次,計(jì)算機(jī)可以節(jié)省許多資源:第三,計(jì)算機(jī)可以大大的提高人們的工作效率:第四,計(jì)算機(jī)可以使敏感文檔更加完全,等等。編程環(huán)境的選擇 Jbuilder6是美國Bor
10、land公司最近推出的遵循Sun公司J2EE標(biāo)準(zhǔn)的可視化集成開發(fā)工具,是目前使用最廣泛的Java開發(fā)工具之一。 Borland JBuilder 是業(yè)界領(lǐng)先的Java 可視化開發(fā)環(huán)境,可用于構(gòu)建基于Java 2 平臺(tái)的應(yīng)用程序、Applets、JSP/Serverlets、JavaBeansTM、Enterprise JavaBeans,以及分布式J2EE 應(yīng)用。Jbuilder6 是一組全方面的高效率工具,使用Java編程語言創(chuàng)建可伸縮的、高興能的和具有不依賴與平臺(tái)性能的應(yīng)用程序。由于可伸縮性和基于組件,Jbuilder 可以開發(fā)所有級(jí)別的應(yīng)用工程,從Applet 到連接企業(yè)級(jí)的、分布式的、
11、多層解決方案的網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用。使目前最為廣泛的、易學(xué)易用的面向?qū)ο蟮拈_發(fā)工具。使用JAVA語言編程可以創(chuàng)建可伸縮的、高興能的和具有不一賴于平臺(tái)性能的應(yīng)用程序。由于可伸縮性和基于組建,Jbuilder上運(yùn)行、調(diào)試和工作。減少了編程人員的工作量,也簡化了業(yè)面設(shè)計(jì)過程,從而有效的提高了應(yīng)用程序的運(yùn)行效率和可靠性。故而,對于實(shí)現(xiàn)本系統(tǒng) Jbuilder是一個(gè)相對較好的選擇。JSP環(huán)境 使用JSP技術(shù),Web頁面開發(fā)人員可以使用HTML或者XML標(biāo)識(shí)來設(shè)計(jì)和格式化最終頁面。使用JSP標(biāo)識(shí)或者小腳本來生成頁面上的動(dòng)態(tài)內(nèi)容(內(nèi)容是根據(jù)請求來變化的,例如請求帳戶信息或者特定的一瓶酒的價(jià)格)。生成內(nèi)容的邏輯被封
12、裝在標(biāo)識(shí)和JavaBeans組件中,并且捆綁在小腳本中,所有的腳本在服務(wù)器端運(yùn)行。如果核心邏輯被封裝在標(biāo)識(shí)和Beans中,那么其他人,如Web管理人員和頁面設(shè)計(jì)者,能夠編輯和使用JSP頁面,而不影響內(nèi)容的生成。 在服務(wù)器端,JSP引擎解釋JSP標(biāo)識(shí)和小腳本,生成所請求的內(nèi)容(例如,通過訪問JavaBeans組件,使用JDBCTM技術(shù)訪問數(shù)據(jù)庫,或者包含文件),并且將結(jié)果以HTML(或者XML)頁面的形式發(fā)送回瀏覽器。這有助于作者保護(hù)自己的代碼,而又保證任何基于HTML的Web瀏覽器的完全可用性。Applet環(huán)境Java的設(shè)計(jì)目標(biāo)之一便是開發(fā)applet。所謂applet是一種執(zhí)行于Web瀏覽器
13、上的小程序。Applet能做什么?通常你可以先看看它被期望的運(yùn)用范圍,再來回答這個(gè)問題。Applet的目標(biāo)是擴(kuò)充瀏覽器中的網(wǎng)頁功能。Applet的優(yōu)點(diǎn): 不再有安裝問題。Applet擁有真正的平臺(tái)無關(guān)性。 不需要擔(dān)心錯(cuò)誤的程序代碼破壞他人系統(tǒng),因?yàn)榘踩珯C(jī)制已內(nèi)置于核心的Java語言和applet結(jié)構(gòu)中。功能簡介該電量監(jiān)視系統(tǒng)利用一種名為4PI的電力監(jiān)測計(jì)來檢測電量然后將檢測值實(shí)時(shí)更新到數(shù)據(jù)庫里。軟件部分的功能是只要有一臺(tái)計(jì)算機(jī)便可以通過客戶端的瀏覽器來查看所在大樓各個(gè)辦公樓的用電情況及其變化情況,用戶可以通過圖表和表格的方式查看,并且提供當(dāng)前時(shí)刻的用電情況,日報(bào),月報(bào)等多種形式。第二章 可行性
14、研究為了確定問題是否能夠以最小的代價(jià)在盡可能短的時(shí)間里確定問題是否能夠得到解決,在軟件開發(fā)初期進(jìn)行可行性分析是必不可少的。隨著電力時(shí)代的今日,電力以成為我們生活中不可缺少的一部分。怎樣能管理好、便節(jié)約電能保護(hù)是必不可少的。所以建立電量監(jiān)視系統(tǒng)是必要的。該系統(tǒng)主要由(1) 服務(wù)器端安裝完該系統(tǒng)。(2) 通過服務(wù)器用戶便可以輸入電力計(jì)名稱。(3) 用戶在客戶端通過瀏覽器來動(dòng)態(tài)的查詢用電量值情況。(4) 該系統(tǒng)查詢部分用動(dòng)態(tài)網(wǎng)頁編程語言來完成,本人選用目前較為流行的JSP,而圖例輸出部分則用與JSP一樣同為Java家族一部分的Applet來實(shí)現(xiàn),毫無疑問這是最好的選擇。數(shù)據(jù)流圖如下:更新電力計(jì)名稱表
15、 電量數(shù)據(jù) 滿足條件產(chǎn)生表格設(shè)置電力計(jì)名稱查詢數(shù)據(jù)庫用戶設(shè)置/修改電力計(jì)名 產(chǎn)生圖例 用戶選擇電力計(jì)與日期重定向到要查詢方式的頁面選擇查詢方式 滿足條件的電量數(shù)據(jù)Client-Server 模式第三章 需求分析隨著電力時(shí)代的今日,電力以成為我們生活中不可缺少的一部分。怎樣能管理好、便節(jié)約電能為廣大的教職工的工作效率以及教學(xué)效率明顯得到提高,開發(fā)一種電量監(jiān)測系統(tǒng)來統(tǒng)計(jì)各個(gè)辦公樓的電力使用情況是正確的。根據(jù)上一章可行性研究我們可以得知電量監(jiān)視系統(tǒng)主要完成一下幾部分工作::1. 設(shè)置電力計(jì)名稱(即登記電力計(jì)) 服務(wù)器端安裝完該系統(tǒng)之后用戶必須在第一次使用該系統(tǒng)時(shí)設(shè)置電力計(jì)名稱,如果沒有設(shè)置名稱電力計(jì)
16、就不可以使用,設(shè)置完成的電力計(jì)可以修改名稱。2. 查詢部分每當(dāng)根據(jù)用戶選擇電力計(jì)的情況和選擇時(shí)間的情況來對數(shù)據(jù)庫進(jìn)行數(shù)據(jù)查詢,將查詢結(jié)果返回給客戶端,分別以表格和圖例兩種方式表示。第四章 總體設(shè)計(jì)本次畢業(yè)設(shè)計(jì)選擇JBUILDER6.0作為開發(fā)工具,Microsoft SQLServer2000作為后臺(tái)數(shù)據(jù)庫的管理工具,Windows2000 作為操作平臺(tái)。下面我將分兩部分介紹一下總體設(shè)計(jì)第一節(jié) 數(shù)據(jù)庫設(shè)計(jì)本課題采用 Microsoft SQL Server2000 作為后臺(tái)。Microsoft SQL Server2000功能豐富、靈活。SQL Server2000繼承了SQL Server
17、7.0的高性能,可靠性和可擴(kuò)充性的優(yōu)點(diǎn),同時(shí)又引進(jìn)了數(shù)據(jù)庫和服務(wù)器增強(qiáng)功能,以及其他一些新的特性,使它成為一個(gè)杰出的數(shù)據(jù)庫平臺(tái),可用于大型聯(lián)機(jī)事務(wù)處理,數(shù)據(jù)倉庫及電子商務(wù)等。具有很好的伸縮性,可跨越從運(yùn)行Windows 95/98的膝上型電腦到運(yùn)行Windows2000的大型多處理器等多種平臺(tái)使用。對Web技術(shù)的支持,使用戶能夠很容易地將數(shù)據(jù)庫中的數(shù)據(jù)發(fā)布到Web頁面上。SQL Server提供數(shù)據(jù)倉庫功能,這個(gè)功能只在Oracle和其他更昂貴的DBMS中才有。真正的客戶機(jī)/服務(wù)器體系結(jié)構(gòu)。圖形化用戶界面,使系統(tǒng)管理和數(shù)據(jù)庫管理更加直觀,簡單。豐富的編程接口工具,為用戶進(jìn)行程序設(shè)計(jì)提供了更大的
18、選擇余地。SQL Server與Windows NT 完全集成,利用了NT的許多功能,如發(fā)送和接受消息,管理登錄安全性等。SQL Server也可以很好地與Microsoft BackOffice產(chǎn)品集成電量監(jiān)視系統(tǒng)數(shù)據(jù)庫包括以下4個(gè)表: LOG_DATA_MINUTE; LOG_DATA_HOUR; LOG_DATA_DAY; PC_LOG;1 鐘為單位的電量數(shù)據(jù)表LOG_DATA_MINUT字段名數(shù)據(jù)類型長度主鍵是否允許空值電力計(jì)號(hào)碼varchar4YesNo時(shí)間varchar32YesNo電量值int4NoYes2小時(shí)為單位的電量數(shù)據(jù)表LOG_DATA_HOUR字段名數(shù)據(jù)類型長度主鍵是否
19、允許空值電力計(jì)號(hào)碼varchar4YesNo時(shí)間varchar32YesNo電量值int6NoYes說明: a.電力計(jì)號(hào)碼和時(shí)間作為主碼,輸入時(shí)會(huì)自動(dòng)生成的,所以,應(yīng)設(shè)置為不可改寫的。b. 電力計(jì)號(hào)碼和時(shí)間是以下拉列表形式顯示,由用戶在制定范圍內(nèi)進(jìn)行選擇。3日為單位的電量數(shù)據(jù)表LOG_DATA_DAY字段名數(shù)據(jù)類型長度主鍵是否允許空值電力計(jì)號(hào)碼varchar4YesNo時(shí)間varchar32YesNo電量值int8NoYes4 電力計(jì)登錄表PC_LOG字段名數(shù)據(jù)類型長度主鍵是否允許空值4PI號(hào)碼varchar4NoNo4PI名稱varchar16NoYes電力計(jì)號(hào)碼varchar4YesNo電
20、力計(jì)名稱Varchar16NoYes說明:a.其中4PI號(hào)碼為2位數(shù),共有10個(gè)4PI,每個(gè)4PI有4個(gè)電力計(jì).b.電力計(jì)號(hào)碼形式為:4pi號(hào)碼+電力計(jì)號(hào)碼,如選擇第一個(gè)4PI的第4個(gè)電力計(jì)則為0104.第二節(jié) 程序設(shè)計(jì)根據(jù)第3章的需求分析,將電量監(jiān)視系統(tǒng)程序設(shè)計(jì)分為兩個(gè)大模塊,如圖所示:電量監(jiān)視系統(tǒng)查詢模塊設(shè)置/修改模塊設(shè)置和修改電力計(jì)名稱月報(bào)畫面監(jiān)視畫面 日報(bào)畫面對整個(gè)系統(tǒng)功能有了總體上的認(rèn)識(shí)之后,應(yīng)對每一個(gè)模塊的任務(wù)有一個(gè)清晰的認(rèn)識(shí),以防代碼重復(fù),浪費(fèi)不必要的工作量.下面談一談我對每一個(gè)模塊的總體認(rèn)識(shí).(1) 設(shè)置/修改電力計(jì)名稱:a.用戶在第一個(gè)使用本系統(tǒng)時(shí),必須先設(shè)置電力計(jì)名稱,數(shù)據(jù)
21、庫會(huì)根據(jù)用戶輸入的情況生成相應(yīng)的電力計(jì)登錄表PC_LOG.b.用戶在使用本系統(tǒng)時(shí)可以隨時(shí)修改電力計(jì)名稱.(2) 查詢模塊:a. 用戶查詢方式共有三種:監(jiān)視畫面,日報(bào)畫面,月報(bào)畫面.b. 監(jiān)視畫面提供最新的數(shù)據(jù),而且是實(shí)時(shí)更新的.c. 日報(bào)畫面提供每一天的用電情況.第三節(jié)各表之間的關(guān)系LOG_DATA_MINUTE電力計(jì)號(hào)碼時(shí)間電量值電力計(jì)登錄表4pi號(hào)碼4pi名稱電力計(jì)號(hào)碼電力計(jì)名稱LOG_DATA_DAY電力計(jì)號(hào)碼時(shí)間電量值LOG_DATA_MONTH電力計(jì)號(hào)碼時(shí)間電量值aaaaaaaaaa第四節(jié) 總體設(shè)計(jì)小結(jié)通過總體設(shè)計(jì)對整個(gè)系統(tǒng)各個(gè)模塊之間的關(guān)系與功能有了比較清晰的認(rèn)識(shí),數(shù)據(jù)庫表與表之間
22、的關(guān)系也已經(jīng)明確.現(xiàn)在我們可以根據(jù)總體設(shè)計(jì)里的設(shè)計(jì)思想,針對每個(gè)模塊的功能進(jìn)行詳細(xì)設(shè)計(jì). 第五章 詳細(xì)設(shè)計(jì)Denglu.jspIndex.jsp客戶端本章對各個(gè)模塊的功能進(jìn)行分解和剖析,包括程序的各個(gè)組成頁面之間的關(guān)系.首先讓我們來看一下各個(gè)頁面之間的調(diào)用關(guān)系.Insertdb.jsp輸入名稱Jianhi.jspYuebao.jspRibao.jsp調(diào)用數(shù)據(jù)庫操作頁面Jianshi.classYuebao.classRibao.classJianshihuamian.jspYuebaohuamian.jspRibaohuamian.jsp更新數(shù)據(jù)庫1. 初始畫面如果是第一次使用必須選擇登錄名稱
23、畫面,該畫面用于登錄電力計(jì),或者修改已登錄的電力計(jì)名稱。1. 登錄名稱畫面 選擇登錄名稱畫面之后下拉4PI番號(hào)選項(xiàng)選擇4PI號(hào)碼,然后設(shè)置相應(yīng)的電力計(jì).2. 確認(rèn)頁面選擇確定后就會(huì)轉(zhuǎn)到確認(rèn)頁面,顯示你輸入的數(shù)據(jù),同時(shí)該頁面也是執(zhí)行數(shù)據(jù)庫插入操作的頁面.開始設(shè)置電力計(jì)名稱程序流程圖: 輸入名稱判斷是否超過規(guī)定長度提示錯(cuò)誤 Y執(zhí)行數(shù)據(jù)庫更新結(jié)束4 日期選擇頁面返回到首頁再選擇日報(bào)畫面會(huì)跳轉(zhuǎn)到日報(bào)日期選擇頁面.選擇要查詢的日期和電力計(jì)名稱。5月報(bào)畫面該頁面根據(jù)用戶輸入條件查詢數(shù)據(jù)庫,并把它傳給Applet,以曲線圖的方式顯示。Applet的程序流程圖:開 始 讀取數(shù)據(jù)I=0,I 電力計(jì)個(gè)數(shù) Y I+
24、 NJ=0, j 當(dāng)前月數(shù) Y執(zhí)行畫線操作,J+結(jié) 束表格畫面5監(jiān)視畫面監(jiān)視畫面返回?cái)?shù)據(jù)庫中最新的一分鐘的數(shù)據(jù)。第六章 測試報(bào)告軟件測試在開發(fā)過程中是一個(gè)不可缺少的部分。因?yàn)樵陂_發(fā)軟件系統(tǒng)的漫長過程中,面對著極其錯(cuò)綜復(fù)雜的問題,人的主觀認(rèn)識(shí)不可能完全符合客觀現(xiàn)實(shí),與工程密切相關(guān)的各類人員之間的通信和配合也不可能完全無缺,因此,在軟件生命周期的各個(gè)階段都不可能避免的產(chǎn)生差錯(cuò)。我們力求在每個(gè)階段結(jié)束之前通過嚴(yán)格的技術(shù)審查,盡可能早的發(fā)現(xiàn)并糾正錯(cuò)誤;但是,經(jīng)驗(yàn)表明審查并不能發(fā)現(xiàn)所有的差錯(cuò),此處在編碼過程中還不可避免地會(huì)引起一些新的錯(cuò)誤。如果在軟件投入生產(chǎn)性運(yùn)行之前,沒有發(fā)現(xiàn)并糾正軟件中的大部分差錯(cuò),
25、則這些差錯(cuò)遲早會(huì)在生產(chǎn)過程中暴露出來,那時(shí)不僅改正這些錯(cuò)誤的代價(jià)更高,而且往往會(huì)造成很惡劣的后果。測試的目的就是在軟件投入生產(chǎn)性運(yùn)行之前,盡可能多地發(fā)現(xiàn)軟件中的錯(cuò)誤。目前軟件測試仍然是保證軟件質(zhì)量的關(guān)鍵步驟,它是對軟件規(guī)格說明,設(shè)計(jì)和編碼的最后復(fù)審?;谏鲜龅脑?,我在編碼過程中進(jìn)行了模塊測試,編碼結(jié)束后進(jìn)行了系統(tǒng)測試和驗(yàn)收測試。下面將介紹測試方案,測試過程和測試結(jié)果。一 模塊測試1 測試方案 采用了白盒測試,即按照程序內(nèi)部的邏輯結(jié)構(gòu),檢驗(yàn)程序中的每條通路是否都按預(yù)定要求正確工作。2 測試過程:檢驗(yàn)?zāi)K之間的接口。A. 每個(gè)被調(diào)用模塊是否正確接受參數(shù)。B. 每個(gè)調(diào)用模塊是否能調(diào)用每個(gè)自己想要調(diào)
26、用的模塊。3 測試結(jié)果 測試結(jié)果表明,每個(gè)模塊之間的接口都吻合,即被叫用模塊都能正確接受參數(shù),調(diào)用模塊能調(diào)用自己想要調(diào)用的每個(gè)模塊。二. 系統(tǒng)測試和驗(yàn)收測試1 測試方案采用了黑盒測試,即檢查程序功能是否能按照規(guī)格說明書的規(guī)定正確使用,程序是否適當(dāng)?shù)慕邮蛰斎霐?shù)據(jù)產(chǎn)生正確的輸出信息,并且保持外部信息的完整性。2 測試過程:主要檢驗(yàn)是否能正確實(shí)現(xiàn)每個(gè)功能。A. 每個(gè)功能是否按照規(guī)格說明書的要求正確使用。功能包括:設(shè)定電力計(jì)名稱功能,查詢特定記錄功能和按條件顯示圖例。B. 用戶界面是否友好。3 測試結(jié)果結(jié)果表明,每個(gè)功能都能按照規(guī)格說明書里的要求正常使用且速度達(dá)到了預(yù)期的標(biāo)準(zhǔn),用戶界面較友好。當(dāng)然,整
27、個(gè)系統(tǒng)在測試過程中仍發(fā)現(xiàn)了不少的錯(cuò)誤,但在指導(dǎo)老師的指導(dǎo)下改正并完善了所發(fā)現(xiàn)的錯(cuò)誤和不足知處,達(dá)到了測試要求。第七章 關(guān)鍵技術(shù)分析JDBC在設(shè)計(jì)過程中由于要多次調(diào)用數(shù)據(jù)庫,如何在JSP頁面靈活調(diào)用數(shù)據(jù)庫成為設(shè)計(jì)該系統(tǒng)的核心問題。幸運(yùn)的是Java語言為我們提供了可以訪問不同數(shù)據(jù)庫的通用的API,稱為JDBC?,F(xiàn)在來簡單介紹一下JDBC。什么是JDBC?JDBC是曾經(jīng)是一組首字母縮寫(Java DataBase Connectivity),但現(xiàn)在它已是自己的注冊商標(biāo)符號(hào) 。作為一種面向?qū)ο蟮姆庋b和對ODBC API的重新設(shè)計(jì),它易于掌握而且確實(shí)允許你編寫?yīng)毩⒂谔峁┥痰拇a來查詢和處理數(shù)據(jù)庫。如同所
28、有的Java API,JDBC是面向?qū)ο蟮模皇且唤M很高級(jí)別的對象,大多數(shù)數(shù)據(jù)庫提供商都擁護(hù)JDBC并對他們的數(shù)據(jù)庫提供JDBC驅(qū)動(dòng)程序。這使得編寫完全獨(dú)立于數(shù)據(jù)庫的代碼相當(dāng)容易。另外,JavaSoft和Intersolv共同開發(fā)了一個(gè)名為JDBC-ODBC Bridge的產(chǎn)品,它可以在沒有直接的JDBC驅(qū)動(dòng)程序的情況下與數(shù)據(jù)庫相連。所有支持JDBC的數(shù)據(jù)庫都至少應(yīng)支持SQL-92標(biāo)準(zhǔn),只有這樣才能在不同的數(shù)據(jù)庫和平臺(tái)間實(shí)現(xiàn)最大程度的可移植性。2 JSP中顯示漢字。我們開發(fā)該系統(tǒng)時(shí),不可避免地要處理中文。因此很好地解決JSP中顯示漢字的問題也是成功開發(fā)該系統(tǒng)的關(guān)鍵問題。Java 編程語言默認(rèn)
29、的編碼方式是 UNICODE,而我們通常使用的數(shù)據(jù)庫及文件都是基于 GB2312 編碼的,我們經(jīng)常碰到這樣的情況:瀏覽基于 JSP 技術(shù)的網(wǎng)站看到的是亂碼,文件打開后看到的也是亂碼,被 Java 修改過的數(shù)據(jù)庫的內(nèi)容在別的場合應(yīng)用時(shí)無法繼續(xù)正確地提供信息。為了解決以上問題我們必須手動(dòng)進(jìn)行編碼轉(zhuǎn)換。如:String s1 = request.getParameter(“keyword”); String s2 = new String(s1.getBytes(“ISO-8859-1”),”GBK”);getBytes 方法用于將中文字符以“ISO-8859-1”編碼方式轉(zhuǎn)化成字節(jié)數(shù)組,而“GBK
30、” 是目標(biāo)編碼方式。我們從以ISO-8859-1方式編碼的數(shù)據(jù)庫中讀出中文字符串 s1 ,經(jīng)過上述轉(zhuǎn)換過程,在支持 GBK 字符集的操作系統(tǒng)和應(yīng)用軟件中就能夠正確顯示中文字符串 s2 。 JAVA概述由于我們采用Jbuilder6作為開發(fā)工具,因此采用的語言為 JAVA,JAVA是一種面向?qū)ο蟮恼Z言設(shè)計(jì),專門用來設(shè)計(jì)多平臺(tái)和多操作系統(tǒng)間的可移植程序。JAVA是由SUN公司開發(fā),JAVA語言是隨著InterNet的WWW(worldwideweb 萬維網(wǎng))出現(xiàn)而走紅的,但一開始JAVA不是為了WWW而設(shè)計(jì)的,使用與家電編程方面的,于是很不成工,在經(jīng)歷幾番波折后,JAVA終于成為了一種簡單的面向?qū)?/p>
31、象的,可視的、與平臺(tái)無關(guān)的、安全的解譯性編程語言。JAVA語言在語法上同C+很類似,但是JAVA為了實(shí)現(xiàn)其簡單、健壯、安全等特性,同時(shí),對于變量生名、參數(shù)傳遞、操作符、流控制等,JAVA集成了和C、C+相同的傳統(tǒng),似的熟悉C、C+的程序員很容易的進(jìn)行學(xué)習(xí)、編程。JAVA語言特性(1) 面向?qū)ο螅篔AVA吸取了C+面向?qū)ο蟮母拍?,將?shù)據(jù)封裝于類中,利用類的優(yōu)點(diǎn),實(shí)現(xiàn)了程序的簡潔性和便于維護(hù)性、繼承性等有關(guān)對象的特性,使程序代碼只需一次編譯,然后 通過上述特性反復(fù)利用。程序員只需把主要經(jīng)歷用在類和接口的設(shè)計(jì)和應(yīng)用上。JAVA提供了眾多的一般對象的類,通過繼承即可使用父類的方法。在JAVA中,類的繼
32、承關(guān)系是單一的非多重的,一個(gè)子類只有一個(gè)父類,子類的父類又有一個(gè)父類。JAVA 提供的OBJEECT 類及其子類的繼承關(guān)系如同一的倒立的樹形,根類為Object 類,Object類功能強(qiáng)大,經(jīng)常會(huì)使用到它及其它派生的子類,是JAVA語言的最終要特征之一。(2) 分布式:Java包括一個(gè)支持HTTP和FTP等基于TCP/IP協(xié)議的子 庫。因此JAVA應(yīng)用程序可憑借URL打開訪問網(wǎng)上的對象,象本地一樣。(3) 結(jié)構(gòu)中立:為了建立JAVA 作為網(wǎng)絡(luò)的一個(gè)整體,可以在所有提供JAVA虛擬機(jī)(JVM)的多種不同主機(jī)、不同處理器上運(yùn)行。(4) 垃圾收集器:虛擬機(jī)自動(dòng)啟動(dòng)的一個(gè)線程來完成不用內(nèi)存的回收,免去
33、delete.(5) 平臺(tái)無關(guān)性:平臺(tái)無關(guān)性是指JAVA能運(yùn)行于不同平臺(tái)。JAVA引進(jìn)虛擬機(jī)原理,并運(yùn)行于虛擬機(jī),實(shí)現(xiàn)不同平臺(tái)的JAVA接口之間。使用JAVA編寫的程序能在世界范圍內(nèi)享。JAVA的數(shù)據(jù)類型與機(jī)器無關(guān),JAVA虛擬機(jī)(JAVA Virtual Machine)是建在硬件和操作系統(tǒng)上,實(shí)現(xiàn)JAVA二進(jìn)子代碼的解譯執(zhí)行功能,提供與不同平臺(tái)的接口。(6) 安全性:JAVA的編程類似于C+,學(xué)習(xí)過C+的讀者將很快掌握J(rèn)AVA的精髓。JAVA舍棄了C+的指針對存儲(chǔ)器的地址的指針操作,程序運(yùn)行時(shí),內(nèi)存有操作系統(tǒng)分配,這樣可以避免病毒通過指針侵入系統(tǒng)。JAVA對程序提供了安全管理器,防止程序的
34、非法訪問。(7) 健壯性:JAVA致力于檢查程序在編譯和運(yùn)行錯(cuò)誤。類型檢查幫助檢查許多開發(fā)早期出現(xiàn)的錯(cuò)誤。JAVA自己操眾內(nèi)存減少了內(nèi)存出錯(cuò)的可能性。JAVA還實(shí)現(xiàn)了真數(shù)組,避免了覆蓋數(shù)據(jù)的可能。這些功能特征大大提高了開發(fā)JAVA應(yīng)用程序的周期。JAVA提供:NULL指針檢測、數(shù)組邊界檢測、異常出口、Byte code校驗(yàn)。(8) 多線程:JAVA是一個(gè)多線程 Multithreaded 的語言,它可以同時(shí)運(yùn)行多個(gè)線程,處理幾多個(gè)任務(wù)。JAVA的多線程機(jī)制是使可以并行運(yùn)行程序,實(shí)現(xiàn)網(wǎng)絡(luò)上的實(shí)時(shí)交互行為。(9) 只動(dòng)內(nèi)存整理:JAVA語言的自動(dòng)內(nèi)存會(huì)收集(Auto Garbage Collect
35、ion)實(shí)現(xiàn)了內(nèi)存的自動(dòng)整理,因此簡化了JAVA程序的開發(fā)工作,提高了程序的穩(wěn)定性和可靠性。在這里 簡單化比較以下 JAVA與C/C+ 語言不同之處JAVA去掉了C+語言許多功能,但幾乎沒有一點(diǎn)含混特征。C+ 安全性不好,但C和C+ 被大家接受,所以JAVA 設(shè)計(jì)成C+ 形式,讓大家很容易學(xué)習(xí)。JAVA去掉了C+ 語言的許多功能,讓JAVA的語言功能很精練,并增加了一些很有用的功能。需要釋放內(nèi)存 這將減少了平常出錯(cuò)的50%。而且,JAVA很小,整個(gè)解釋器只需215K的RAM。面向?qū)ο螅篔AVA實(shí)現(xiàn)了C+的基本面向?qū)ο蟮募夹g(shù)并有一些增強(qiáng),(為了語言簡單,刪除了一些功能)。JAVA處理數(shù)據(jù)方式和用
36、對象接口處理對象數(shù)據(jù)方式一樣。我們知道,早先的WWW 進(jìn)可以傳送文本和圖片,JAVA的出現(xiàn)實(shí)現(xiàn)了互動(dòng)的頁面,是一次偉大的革命。 通過UML代碼的可視化和重構(gòu)來利用現(xiàn)有的項(xiàng)目快速生成一個(gè)對象的UML模塊,供用戶將代碼可視化,從而輕松地檢查、分析和交流設(shè)計(jì)信息。通過鼠標(biāo)點(diǎn)擊在圖解中導(dǎo)航并查看聯(lián)合和從屬關(guān)系。利用代碼重構(gòu)的優(yōu)勢,有效地對類別、方法、區(qū)域和數(shù)據(jù)包重命名,自動(dòng)移動(dòng)類別和數(shù)據(jù)包。查找參考功能無論在類別、方法還是區(qū)域中都可以輕松定位所有的參考項(xiàng),從而節(jié)省在代碼中進(jìn)行搜索的時(shí)間。使用全新的文件工具從代碼中自動(dòng)搜集信息, 減少添加Javadoc注釋所需的時(shí)間。運(yùn)用UML代碼可視化,JBuilde
37、r幫助用戶迅速而有效的了解未知代碼的結(jié)構(gòu)。 使用單元檢測和遠(yuǎn)端調(diào)試交付高質(zhì)量的應(yīng)用程序JBuilder包括與JUnit框架的緊密集成,該框架用于編寫、運(yùn)行和分析單元檢測并將其組織成測試組。使用向?qū)蓹z測框架,并迅速建立檢測組。使用已包含的、預(yù)定義的JNDL,JDBC和比較測試設(shè)備可以節(jié)省時(shí)間。通過同步運(yùn)行在多個(gè)Java虛擬機(jī)和操作系統(tǒng)上的單一而統(tǒng)一的過程視圖進(jìn)行遠(yuǎn)程調(diào)試。設(shè)定有條件斷點(diǎn),檢測并更改變量并查看多個(gè)線程。借助為本地或遠(yuǎn)程服務(wù)器進(jìn)程設(shè)計(jì)的智能步驟控制實(shí)現(xiàn)單一步驟。有效減少線程死鎖、延時(shí)和急流的情況。使用集成的、可升級(jí)的和可擴(kuò)展的團(tuán)隊(duì)開發(fā)環(huán)境提高團(tuán)隊(duì)產(chǎn)效率通過與Rational Cl
38、earCase、CVS和微軟的Visual SourceSafe的緊密集成,JBuilder可以對簡化大型分布式團(tuán)隊(duì)而言的源代碼并發(fā)管理。使用歷史修訂瀏覽器,通過統(tǒng)一工作空間和存儲(chǔ)器之間的變更,可視化地更新和解決修訂沖突。這些特性包括在來源級(jí)上的差別顯示,在源編輯器中顯示明顯的源修訂和沖突導(dǎo)航。任務(wù)表和Javadoc注釋任務(wù)表有助于跟蹤工作進(jìn)程。通過高產(chǎn)出的工作流模塊和對團(tuán)隊(duì)開發(fā)的集成支持,Jbuilder帶給用戶競爭的優(yōu)勢。 通過使用XML對公布和交換的數(shù)據(jù)的支持開發(fā)Java/XML應(yīng)用程序轉(zhuǎn)換XML文件的時(shí)候,同時(shí)顯示XML和HTML輸出的源代碼和瀏覽器視圖。驗(yàn)證XML文檔結(jié)構(gòu)并跟蹤錯(cuò)誤。
39、通過能夠定義結(jié)構(gòu)和規(guī)則、數(shù)據(jù)捆綁和XML文件的編程操作的工具,Jbuilder使得在XML和數(shù)據(jù)庫文件間傳輸數(shù)據(jù)變得簡單。 APPLET 介紹什么是APPLET ? APPLET 可以翻譯為小程序,JAVA APPLET 就是用 JAVA 語言編寫的這樣的一些小應(yīng)用程序,它們可以直接嵌入到網(wǎng)頁中,并能產(chǎn)生特殊的效果。包含APPLET的網(wǎng)頁被成為JAVA-POWERED 頁,可以成其為JAVA支持的網(wǎng)頁。當(dāng)用戶訪問這樣的網(wǎng)頁時(shí),APPLET被下載到用戶的計(jì)算機(jī)上執(zhí)行,但前提是用戶使用的是支持JAVA的網(wǎng)絡(luò)1瀏覽器。由于APPLET是在用戶的計(jì)算機(jī)上執(zhí)行的,因此他的執(zhí)行速度不受網(wǎng)絡(luò)帶寬或者M(jìn)ODE
40、M存取速度的限制。用戶可以更好的欣賞網(wǎng)頁上APPLET產(chǎn)生的媒體效果。在JAVA APPLET中,可以實(shí)現(xiàn)圖形繪制,字體和顏色控制,動(dòng)畫和聲音的插入,人機(jī)交互及網(wǎng)絡(luò)交流等功能。 APPLET還提供了名為抽象窗口工具箱(Abstract window Toolkit, AWT)的窗口環(huán)境開發(fā)工具。AWT利用用戶計(jì)算機(jī)的GUI元素,可以建立標(biāo)準(zhǔn)的圖形用戶界面,如窗口、安鈕、滾動(dòng)條等等。目前,在網(wǎng)絡(luò)上有非常多的APPLET 范列來生動(dòng)的展現(xiàn)這種功能,讀者可以去掉用相應(yīng)的網(wǎng)頁以觀看它們的效果。JAVA 第八章 學(xué)習(xí)心得通過本次畢業(yè)設(shè)計(jì), 我們中獲益匪淺。不但對Jbuilder6這個(gè)開發(fā)環(huán)境應(yīng)有了較深的
41、認(rèn)識(shí)和掌握,而且在進(jìn)行軟件設(shè)計(jì)中,對軟件設(shè)計(jì)的整體設(shè)計(jì)流程及思維方法有了更進(jìn)一步的了解,同時(shí)也對大學(xué)四所學(xué)的專業(yè)知識(shí)有了更深刻的認(rèn)識(shí)和鞏固,使自己具有了一定的開發(fā)軟件方面的技術(shù)和技能。在測試過程中,發(fā)現(xiàn)了許多問題都是源于在設(shè)計(jì)過程中,沒有認(rèn)真的按步驟去進(jìn)行設(shè)計(jì),不重視軟件設(shè)計(jì)的需求分析、總體設(shè)計(jì)等過程,對設(shè)計(jì)的各個(gè)方面即可能出現(xiàn)得問題沒有進(jìn)行細(xì)致周到的考慮。這在以后的工作和學(xué)習(xí)中引以為戒,使自己不斷提高。和幾為同學(xué)合作設(shè)計(jì)了電量監(jiān)視系統(tǒng),由于時(shí)間和個(gè)人能力問題,有些功能實(shí)現(xiàn)的不是很好, 使系統(tǒng)不太完美,很遺憾,但在指導(dǎo)老師的幫助下同學(xué)門的努力認(rèn)真周密的考慮了各方面可能出現(xiàn)的問題,并給予即使有效
42、的解決。在解決這些問題的過程中,盡管花費(fèi)了不少時(shí)間和經(jīng)歷,但我從中也學(xué)到了恨多知識(shí),得到了許多寶貴的經(jīng)驗(yàn),從中也發(fā)現(xiàn)了自己在設(shè)計(jì)方面的不足??傊?,在整個(gè)軟件設(shè)計(jì)過程中,我學(xué)到了在書本中學(xué)不到的知識(shí),體會(huì)到在進(jìn)行軟件設(shè)計(jì)中,中提把握系統(tǒng)的流程和為實(shí)現(xiàn)某個(gè)功能的各個(gè)程序的流程是很重要的。 大學(xué)生活即將結(jié)束,我也要步入社會(huì)這個(gè)大學(xué)堂,深深知道前方的路漫長與坎坷,但我不會(huì)放棄心中的那分心念。面對人生的挑戰(zhàn),我將以更勝信心和頑強(qiáng)的毅力去接受挑戰(zhàn)。 最后,非常感謝崔麗老師的指導(dǎo)和幫助!參 考 資 料SQLServer2000中國鐵道出版社J A V A 2 中國鐵道出版社JAVA APLLET中國鐵道出版社JAVA 高級(jí)程序設(shè)計(jì)中國鐵道出版社27
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 腎臟病的診療思路
- PICC維護(hù)流程專題知識(shí)
- 液氯生產(chǎn)與氫氣處理
- 鑫享至尊高端銷售理念之穩(wěn)健理財(cái)篇課件
- 管理流程會(huì)計(jì)
- 人教版七年級(jí)下冊《從百草園到三味書屋》課件_22頁(教育精品)
- 6sigma培訓(xùn)-基本統(tǒng)計(jì)概念PPT課件
- 七座高級(jí)商務(wù)車推薦
- 比例的基本性質(zhì)80651
- 53已更改的《動(dòng)物兒歌》
- 金華的雙龍洞課件文講
- 《古詩三首》完整課件——語文教育S版四年級(jí)下冊
- 唯物辯證法的聯(lián)系觀和發(fā)展觀網(wǎng)課課件
- 青島版體積和體積單位課件
- 嬰兒沐浴撫觸及護(hù)理