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