版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 本科畢業(yè)設(shè)計(jì)(論文)</p><p><b> ?。?0 屆)</b></p><p> 勤工儉學(xué)管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b> 摘 要</b></p><p> 隨著各大高校不斷加強(qiáng)勤工助學(xué)的力度,范圍不斷擴(kuò)大,如何有效地幫助學(xué)生做好勤工助學(xué)
2、工作,管理勤工助學(xué)的信息,成為各大高校的一個(gè)難題。由于信息化快速發(fā)展,傳統(tǒng)手工管理模式已經(jīng)不適應(yīng)時(shí)代發(fā)展,開(kāi)發(fā)適應(yīng)當(dāng)前工作需要的辦公管理軟件已經(jīng)成為必然。本文基于UML建模,結(jié)合Java編程語(yǔ)言和MySql數(shù)據(jù)庫(kù)管理服務(wù)技術(shù),設(shè)計(jì)并實(shí)現(xiàn)了大學(xué)生勤工儉學(xué)管理信息系統(tǒng)的運(yùn)行管理。整個(gè)管理系統(tǒng)的開(kāi)發(fā)包括分析、設(shè)計(jì)、實(shí)現(xiàn)三個(gè)主要過(guò)程。該系統(tǒng)有機(jī)結(jié)合了勤工助學(xué)的現(xiàn)實(shí)情況,運(yùn)用現(xiàn)代信息化技術(shù)來(lái)完成管理工作,降低勤工助學(xué)日常工作成本,提高工作效率,從
3、而實(shí)現(xiàn)勤工助學(xué)傳統(tǒng)化管理和現(xiàn)代化管理的有效統(tǒng)一,為勤工助學(xué)管理工作提供了一個(gè)更加高效,便捷的平臺(tái)。</p><p> 關(guān)鍵詞:勤工助學(xué) JAVA MySql</p><p><b> Abstract</b></p><p> With constantly expanding of the number of work-stud
4、y students, it has become a problem of major colleges and universities to effectively help the work-study students and manage their information. The traditional manual management model has been outdated. Due to the With
5、the rapid development of information it is urgent to develop an office management software to adapt to the current work. This article based on UML modeling, combined with JAVA programming language and MySQL database mana
6、gement s</p><p> Key words: Work-study Java MySQL</p><p><b> 目錄</b></p><p><b> 摘 要I</b></p><p> AbstractII</p><p><
7、;b> 1緒論1</b></p><p><b> 1.1引言1</b></p><p> 1.2背景和意義1</p><p><b> 1.3系統(tǒng)特點(diǎn)1</b></p><p><b> 1.4系統(tǒng)目標(biāo)2</b></p>&
8、lt;p> 1.5系統(tǒng)可行性分析2</p><p><b> 2系統(tǒng)環(huán)境介紹3</b></p><p><b> 2.1概述3</b></p><p> 2.1.1 MyEclipse基本概述3</p><p> 2.1.2 MySqL基本概述3</p>&l
9、t;p> 2.2技術(shù)支持簡(jiǎn)介4</p><p> 2.2.1 UML介紹4</p><p> 2.2.2 TCP協(xié)議簡(jiǎn)單介紹6</p><p> 2.2.3 Spring介紹7</p><p> 2.2.4 Struts2介紹9</p><p> 2.2.5 Hibernate介紹10&l
10、t;/p><p> 2.2.6 JavaScript開(kāi)發(fā)技術(shù)介紹12</p><p> 3 系統(tǒng)分析15</p><p> 3.1 系統(tǒng)分析概述15</p><p> 3.1.1 需求描述15</p><p> 3.1.2 流程圖15</p><p> 3.1.3 系統(tǒng)功能
11、分析18</p><p> 3.2系統(tǒng)需求分析20</p><p> 3.2.1 系統(tǒng)活動(dòng)者與用例模型20</p><p> 3.2.2 用例圖21</p><p><b> 4 系統(tǒng)設(shè)計(jì)26</b></p><p> 4.1 系統(tǒng)架構(gòu)與設(shè)計(jì)26</p><
12、;p> 4.1.1系統(tǒng)設(shè)計(jì)概述26</p><p> 4.1.2系統(tǒng)功能設(shè)計(jì)27</p><p> 4.1.3類圖設(shè)計(jì)27</p><p> 4.2 時(shí)序圖29</p><p> 4.2.1 用例“注冊(cè)”的時(shí)序圖29</p><p> 4.2.2 用例“登錄”的時(shí)序圖30</p>
13、;<p> 4.2.3 用例“審核”的時(shí)序圖30</p><p> 4.2.4 用例“報(bào)名”的時(shí)序圖31</p><p> 4.2.5 用例“錄用”的時(shí)序圖32</p><p> 4.2.6 用例“解雇”的時(shí)序圖33</p><p> 4.2.7 用例“發(fā)放工資”的時(shí)序圖34</p><p
14、> 4.3 數(shù)據(jù)庫(kù)設(shè)計(jì)35</p><p> 4.3.1 CDM(Conceptual Data Model)35</p><p> 4.3.2 PDM(Physical Data Model)36</p><p> 4.3.3 領(lǐng)域類設(shè)計(jì)37</p><p> 5 系統(tǒng)實(shí)現(xiàn)42</p><p&
15、gt; 5.1 系統(tǒng)實(shí)現(xiàn)概述42</p><p> 5.1.1實(shí)現(xiàn)理念42</p><p> 5.1.2軟件環(huán)境42</p><p> 5.1.3代碼層次42</p><p> 5.2 登錄管理模塊實(shí)現(xiàn)43</p><p> 5.3注冊(cè)管理模塊實(shí)現(xiàn)45</p><p>
16、 5.4 主頁(yè)面管理模塊實(shí)現(xiàn)45</p><p> 5.5 功能列表頁(yè)實(shí)現(xiàn)46</p><p> 5.6 詳細(xì)信息頁(yè)面實(shí)現(xiàn)46</p><p> 5.7 新增/修改頁(yè)面實(shí)現(xiàn)47</p><p> 6 系統(tǒng)測(cè)試48</p><p> 6.1功能性測(cè)試48</p><p>
17、 6.1.1系統(tǒng)登錄測(cè)試48</p><p> 6.1.2 報(bào)名勤工儉學(xué)功能測(cè)試48</p><p> 6.1.3 公司錄用管理功能測(cè)試49</p><p> 6.1.4 管理員審核管理功能測(cè)試50</p><p> 6.1.5 用戶管理模塊51</p><p> 6.2非功能性測(cè)試52</
18、p><p> 6.2.1 UI測(cè)試52</p><p> 6.2.2 性能測(cè)試52</p><p> 6.2.3 安全性測(cè)試52</p><p><b> 7 結(jié)語(yǔ)53</b></p><p> 7.1 系統(tǒng)設(shè)計(jì)感想53</p><p> 7.2 系統(tǒng)展
19、望53</p><p><b> 致謝53</b></p><p> 參 考 文 獻(xiàn)55</p><p><b> 1緒論</b></p><p><b> 1.1引言</b></p><p> 在當(dāng)今信息高度發(fā)達(dá)的時(shí)代,勤工助學(xué)管理涉
20、及的各環(huán)節(jié)已經(jīng)不再僅僅是傳統(tǒng)的勤工管理,助學(xué)管理,而是更廣泛、更全面的系統(tǒng)服務(wù),利用計(jì)算機(jī)管理及時(shí)了解各個(gè)環(huán)節(jié)中信息的變更,有利于提高管理的效率。同時(shí),勤工助學(xué)工作對(duì)解決貧困生的經(jīng)濟(jì)問(wèn)題,鍛煉學(xué)生的工作能力、溝通能力、理解能力和自立能力等方面都起著重要作用。做好學(xué)生勤工助學(xué)管理工作對(duì)提高勤工助學(xué)管理的服務(wù)水平和勤工助學(xué)學(xué)生的綜合能力,實(shí)現(xiàn)雙贏有著重要的意義。因此為能夠?qū)崿F(xiàn)校方管理勤工助學(xué)而開(kāi)發(fā)本系統(tǒng),學(xué)生能夠自主選擇勤工助學(xué)項(xiàng)目,為學(xué)生
21、提供一個(gè)自主選擇的平臺(tái)。</p><p><b> 1.2 背景和意義</b></p><p> 勤工儉學(xué)是社會(huì)主義教育的一個(gè)不可缺少的組成部分,是培養(yǎng)四有新人的重要途徑。近幾年來(lái),學(xué)校的勤工儉學(xué)活動(dòng)越來(lái)越引起人們的重視,經(jīng)濟(jì)效益有了較大幅度的提高,機(jī)構(gòu)和隊(duì)伍得到充實(shí)和加強(qiáng),有利地促進(jìn)了社會(huì)主義一代新人的健康成長(zhǎng)。所以,這項(xiàng)活動(dòng)不僅有利于學(xué)生德、智、體、美全面發(fā)展
22、,而且可以使學(xué)生通過(guò)參加勞動(dòng)取得相應(yīng)報(bào)酬。這是對(duì)廣大學(xué)生,特別是家庭經(jīng)濟(jì)困難學(xué)生的有效資助辦法,是對(duì)他們安心完成在校學(xué)業(yè)的有力支持</p><p> 隨著勤工儉學(xué)者的增多,如何合理管理,有效幫助勤工儉學(xué)者成為一個(gè)難題,本系統(tǒng)旨在幫助勤工學(xué)生、公司、以及管理者之間進(jìn)行快速通信,合理安排工作,合理利用人力資源,提高人員效率,降低勞動(dòng)成本和差錯(cuò)發(fā)生的概率。</p><p><b>
23、 1.3系統(tǒng)特點(diǎn)</b></p><p> 1) 安裝部署簡(jiǎn)單、靈活,無(wú)需安裝客戶端</p><p> 2) 界面簡(jiǎn)潔美觀并且具有較強(qiáng)的交互能力</p><p> 3) 數(shù)據(jù)統(tǒng)一管理分析,便于查詢統(tǒng)計(jì)</p><p> 4) 豐富的輔助工具,具有較強(qiáng)的管理功能</p><p> 5) 大量采用設(shè)計(jì)
24、模式,擴(kuò)展靈活</p><p><b> 1.4系統(tǒng)目標(biāo)</b></p><p> 學(xué)生能查看公司的招聘信息以及報(bào)名職位,對(duì)工作安排以及工資發(fā)放情況能一目了然;勤工儉學(xué)組織能發(fā)布招聘信息、添加職位、對(duì)學(xué)生工作數(shù)據(jù)進(jìn)行管理,能輕松的進(jìn)行用工分配,以及學(xué)生信息的查詢、管理、統(tǒng)計(jì),管理員能對(duì)審核信息進(jìn)行管理、發(fā)放工資。</p><p> 1.5
25、系統(tǒng)可行性分析</p><p><b> 1)技術(shù)可行性:</b></p><p> 為了確定現(xiàn)有技術(shù)能否實(shí)現(xiàn)目標(biāo)系統(tǒng),Eclipse自帶的工具和空間、SQL擁有的表操作(建立、修改、刪除等)以及它協(xié)調(diào)操作完全可以實(shí)現(xiàn)本系統(tǒng)要求達(dá)到的功能,因此技術(shù)上可行</p><p><b> 操作可行性:</b></p&g
26、t;<p> 勤工儉學(xué)管理系統(tǒng)的建設(shè)是基于java平臺(tái)開(kāi)發(fā)的,java是被廣泛應(yīng)用與數(shù)據(jù)庫(kù)開(kāi)發(fā)和操作的一套成熟的軟件平臺(tái),而且它對(duì)于一個(gè)大型的數(shù)據(jù)庫(kù)處理具有不可比擬的優(yōu)點(diǎn)和簡(jiǎn)單方便。所以操作可行性方面是可行的。</p><p><b> 經(jīng)濟(jì)可行性:</b></p><p> 勤工儉學(xué)工作如果完全靠人工來(lái)操作執(zhí)行,不僅存在信息延后的問(wèn)題,而且需要花
27、費(fèi)大量的人力物力,通訊費(fèi),各類表格通知打印費(fèi)等一筆不小的長(zhǎng)期開(kāi)資,而且這筆開(kāi)銷還將一直無(wú)限的擴(kuò)大下去,所以一次性的投入建設(shè)勤工儉學(xué)管理系統(tǒng)不僅方便管理而且可以節(jié)約大筆費(fèi)用。顯然,從長(zhǎng)遠(yuǎn)考慮在軟件有效期內(nèi),預(yù)期經(jīng)濟(jì)效益大于開(kāi)發(fā)成本,經(jīng)濟(jì)性收益明顯,有廣闊市場(chǎng)前景。有以上分析我們可以確定本系統(tǒng)在經(jīng)濟(jì)可行性上行得通。</p><p><b> 2系統(tǒng)環(huán)境介紹</b></p><
28、;p><b> 2.1概述</b></p><p> 2.1.1 MyEclipse基本概述</p><p> MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipseEnterprise Workbench ,簡(jiǎn)稱MyEclipse)是對(duì)EclipseIDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫(kù)和JavaEE的開(kāi)發(fā)、發(fā)布以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效
29、率。它是功能豐富的JavaEE集成開(kāi)發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。</p><p> MyEclipse 是一個(gè)十分優(yōu)秀的用于開(kāi)發(fā)Java, J2EE的 Eclipse 插件集合,MyEclipse的功能非常強(qiáng)大,支持也十分廣泛,尤其是對(duì)各種開(kāi)源產(chǎn)品的支持十分不錯(cuò)。MyEclipse
30、目前支持Java Servlet,AJAX, JSP, JSF, Struts,Spring, Hibernate,EJB3,JDBC數(shù)據(jù)庫(kù)鏈接工具等多項(xiàng)功能??梢哉f(shuō)MyEclipse是幾乎囊括了目前所有主流開(kāi)源產(chǎn)品的專屬eclipse開(kāi)發(fā)工具。</p><p> 根據(jù)官方最新消息,MyEclipse 2013已經(jīng)正式發(fā)布!MyEclipse 2013支持HTML5、JQuery和主流的Javascript 庫(kù)
31、。隨著MyEclipse 2013支持Html5,你可以添加音頻、視頻和API元素到你的項(xiàng)目,從而為移動(dòng)設(shè)備創(chuàng)建復(fù)雜的Web應(yīng)用程序。你甚至還可以通過(guò)HTML5 可視化設(shè)計(jì)器設(shè)計(jì)令人難以置信的用戶界面。同時(shí),隨著MyEclipse 2013支持JQuery,你可以通過(guò)插件提升性能,并添加動(dòng)畫效果到設(shè)計(jì)中。</p><p> 2.1.2 MySql基本概述</p><p> MySql是
32、一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),由瑞典MySql AB公司開(kāi)發(fā),目前屬于Oracle公司。Mysql是最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),在WEB應(yīng)用方面MySql是最好的RDBMS(Relational Database Management System:關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng))應(yīng)用軟件之一。MySql是一種關(guān)聯(lián)數(shù)據(jù)庫(kù)管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫(kù)將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉(cāng)庫(kù)內(nèi),這樣就增加了速度并提高了靈活性。MySql所使用的Sq
33、l語(yǔ)言是用于訪問(wèn)數(shù)據(jù)庫(kù)的最常用標(biāo)準(zhǔn)化語(yǔ)言。MySql軟件采用了雙授權(quán)政策,它分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開(kāi)放源碼這一特點(diǎn),一般中小型網(wǎng)站的開(kāi)發(fā)都選擇MySql作為網(wǎng)站數(shù)據(jù)庫(kù)。由于其社區(qū)版的性能卓越,搭配PHP和Apache可組成良好的開(kāi)發(fā)環(huán)境。</p><p> MySql是一個(gè)開(kāi)放源碼的小型關(guān)聯(lián)式數(shù)據(jù)庫(kù)管理系統(tǒng),開(kāi)發(fā)者為瑞典MySql AB公司。MySql被廣泛地應(yīng)用在In
34、ternet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開(kāi)放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySql作為網(wǎng)站數(shù)據(jù)庫(kù)。</p><p><b> 2.2技術(shù)支持簡(jiǎn)介</b></p><p> 2.2.1 UML介紹</p><p> UML全稱是UML-Unified Model Langua
35、ge 統(tǒng)一建模語(yǔ)言,又稱標(biāo)準(zhǔn)建模語(yǔ)言。是用來(lái)對(duì)軟件密集系統(tǒng)進(jìn)行可視化建模的一種語(yǔ)言。UML的定義包括UML語(yǔ)義和UML表示法兩個(gè)元素。</p><p> UML是在開(kāi)發(fā)階段,說(shuō)明,可視化,構(gòu)建和書(shū)寫一個(gè)面向?qū)ο筌浖芗到y(tǒng)的制品的開(kāi)放方法。最佳的應(yīng)用是工程實(shí)踐,對(duì)大規(guī)模,復(fù)雜系統(tǒng)進(jìn)行建模方面,特別是在軟件架構(gòu)層次,已經(jīng)被驗(yàn)證有效。統(tǒng)一建模語(yǔ)言(UML)是一種模型化語(yǔ)言。模型大多以圖表的方式表現(xiàn)出來(lái)。一份典型的建
36、模圖表通常包含幾個(gè)塊或框,連接線作為模型附加信息之用的文本。這些雖簡(jiǎn)單卻非常重要,在UML規(guī)則中相互聯(lián)系和擴(kuò)展。</p><p> UML作為一種模型語(yǔ)言,它使開(kāi)發(fā)人員專注于建立產(chǎn)品的模型和結(jié)構(gòu),而不是選用什么程序語(yǔ)言和算法實(shí)現(xiàn)。當(dāng)模型建立之后,模型可以被UML工具轉(zhuǎn)化成指定的程序語(yǔ)言代碼。</p><p> 公認(rèn)的面向?qū)ο蠼UZ(yǔ)言出現(xiàn)于70年代中期。從1989年到1994年,其數(shù)量從
37、不到十種增加到了五十多種。在眾多的建模語(yǔ)言中,語(yǔ)言的創(chuàng)造者努力推崇自己的產(chǎn)品,并在實(shí)踐中不斷完善。但是用戶并不了解不同建模語(yǔ)言的優(yōu)缺點(diǎn)及相互之間的差異,因而很難根據(jù)應(yīng)用特點(diǎn)選擇合適的建模語(yǔ)言,于是爆發(fā)了一場(chǎng)“方法大戰(zhàn)”。90年代中,一批新方法出現(xiàn)了,其中最引人注目的是Booch 1993、OOSE和OMT-2等。</p><p> Booch是面向?qū)ο蠓椒ㄗ钤绲某珜?dǎo)者之一,他提出了面向?qū)ο筌浖こ痰母拍睢?99
38、1年,他將以前面向Ada的工作擴(kuò)展到整個(gè)面向?qū)ο笤O(shè)計(jì)領(lǐng)域。Booch 1993比較適合于系統(tǒng)的設(shè)計(jì)和構(gòu)造。</p><p> Rumbaugh等人提出了面向?qū)ο蟮慕<夹g(shù)(OMT)方法,采用了面向?qū)ο蟮母拍?,并引入各種獨(dú)立于語(yǔ)言的表示符。這種方法用對(duì)象模型、動(dòng)態(tài)模型、功能模型和用例模型,共同完成對(duì)整個(gè)系統(tǒng)的建模,所定義的概念和符號(hào)可用于軟件開(kāi)發(fā)的分析、設(shè)計(jì)和實(shí)現(xiàn)的全過(guò)程,軟件開(kāi)發(fā)人員不必在開(kāi)發(fā)過(guò)程的不同階段進(jìn)行
39、概念和符號(hào)的轉(zhuǎn)換。OMT-2特別適用于分析和描述以數(shù)據(jù)為中心的信息系統(tǒng)。</p><p> Jacobson于1994年提出了OOSE方法,其最大特點(diǎn)是面向用例(Use-Case),并在用例的描述中引入了外部角色的概念。用例的概念是精確描述需求的重要武器,但用例貫穿于整個(gè)開(kāi)發(fā)過(guò)程,包括對(duì)系統(tǒng)的測(cè)試和驗(yàn)證。OOSE比較適合支持商業(yè)工程和需求分析。</p><p> 此外,還有Coad/Y
40、ourdon方法,即著名的OOA/OOD,它是最早的面向?qū)ο蟮姆治龊驮O(shè)計(jì)方法之一。該方法簡(jiǎn)單、易學(xué),適合于面向?qū)ο蠹夹g(shù)的初學(xué)者使用,但由于該方法在處理能力方面的局限,目前已很少使用。</p><p> 概括起來(lái),首先,面對(duì)眾多的建模語(yǔ)言,用戶由于沒(méi)有能力區(qū)別不同語(yǔ)言之間的差別,因此很難找到一種比較適合其應(yīng)用特點(diǎn)的語(yǔ)言;其次,眾多的建模語(yǔ)言實(shí)際上各有千秋;第三,雖然不同的建模語(yǔ)言大多雷同,但仍存在某些細(xì)微的差別,
41、極大地妨礙了用戶之間的交流。因此在客觀上,極有必要在精心比較不同的建模語(yǔ)言優(yōu)缺點(diǎn)及總結(jié)面向?qū)ο蠹夹g(shù)應(yīng)用實(shí)踐的基礎(chǔ)上,組織聯(lián)合設(shè)計(jì)小組,根據(jù)應(yīng)用需求,取其精華,去其糟粕,求同存異,統(tǒng)一建模語(yǔ)言。</p><p> 1994年10月,Grady Booch和Jim Rumbaugh開(kāi)始致力于這一工作。他們首先將Booch 93和OMT-2 統(tǒng)一起來(lái),并于1995年10月發(fā)布了第一個(gè)公開(kāi)版本,稱之為統(tǒng)一方法UM 0.
42、8(Unitied Method)。1995年秋,OOSE 的創(chuàng)始人Ivar Jacobson加盟到這一工作。經(jīng)過(guò)Booch、Rumbaugh和Jacobson三人的共同努力,于1996年6月和10月分別發(fā)布了兩個(gè)新的版本,即UML 0.9和UML 0.91,并將UM重新命名為UML(Unified Modeling Language)。</p><p> 1996年,一些機(jī)構(gòu)將UML作為其商業(yè)策略已日趨明顯。
43、UML的開(kāi)發(fā)者得到了來(lái)自公眾的正面反應(yīng),并倡議成立了UML成員協(xié)會(huì),以完善、加強(qiáng)和促進(jìn)UML的定義工作。當(dāng)時(shí)的成員有DEC、HP、I-Logix、 Itellicorp、 IBM、ICON Computing、MCI Systemhouse、Microsoft、Oracle、Rational Software、TI以及Unisys。這一機(jī)構(gòu)對(duì)UML 1.0(1997年1月)及UML 1.1(1997年11月17日)的定義和發(fā)布起了重要的
44、促進(jìn)作用。</p><p> UML是一種定義良好、易于表達(dá)、功能強(qiáng)大且普遍適用的建模語(yǔ)言。它溶入了軟件工程領(lǐng)域的新思想、新方法和新技術(shù)。它的作用域不限于支持面向?qū)ο蟮姆治雠c設(shè)計(jì),還支持從需求分析開(kāi)始的軟件開(kāi)發(fā)的全過(guò)程。</p><p> 面向?qū)ο蠹夹g(shù)和UML的發(fā)展過(guò)程可用圖形來(lái)表示,標(biāo)準(zhǔn)建模語(yǔ)言的出現(xiàn)是其重要成果。在美國(guó),截止1996年10月,UML獲得了工業(yè)界、科技界和應(yīng)用界的廣泛
45、支持,已有700多個(gè)公司表示支持采用UML作為建模語(yǔ)言。1996年底,UML已穩(wěn)占面向?qū)ο蠹夹g(shù)市場(chǎng)的85%,成為可視化建模語(yǔ)言事實(shí)上的工業(yè)標(biāo)準(zhǔn)。1997年11月17日,OMG采納UML 1.1作為基于面向?qū)ο蠹夹g(shù)的標(biāo)準(zhǔn)建模語(yǔ)言。UML代表了面向?qū)ο蠓椒ǖ能浖_(kāi)發(fā)技術(shù)的發(fā)展方向,具有巨大的市場(chǎng)前景,也具有重大的經(jīng)濟(jì)價(jià)值和國(guó)防價(jià)值。</p><p> 2.2.2 TCP協(xié)議簡(jiǎn)單介紹</p><p
46、> TCP的全稱是Transmission Control Protocol/Internet Protocol的簡(jiǎn)寫,中譯名為傳輸控制協(xié)議/因特網(wǎng)互聯(lián)協(xié)議,又名網(wǎng)絡(luò)通訊協(xié)議,是Internet最基本的協(xié)議、Internet國(guó)際互聯(lián)網(wǎng)絡(luò)的基礎(chǔ),由網(wǎng)絡(luò)層的IP協(xié)議和傳輸層的TCP協(xié)議組成。TCP/IP 定義了電子設(shè)備如何連入因特網(wǎng),以及數(shù)據(jù)如何在它們之間傳輸?shù)臉?biāo)準(zhǔn)。協(xié)議采用了4層的層級(jí)結(jié)構(gòu),每一層都呼叫它的下一層所提供的協(xié)議來(lái)完成
47、自己的需求。通俗而言:TCP負(fù)責(zé)發(fā)現(xiàn)傳輸?shù)膯?wèn)題,一有問(wèn)題就發(fā)出信號(hào),要求重新傳輸,直到所有數(shù)據(jù)安全正確地傳輸?shù)侥康牡?。而IP是給因特網(wǎng)的每一臺(tái)電腦規(guī)定一個(gè)地址。</p><p> TCP/IP協(xié)議并不完全符合OSI的七層參考模型。傳統(tǒng)的開(kāi)放式系統(tǒng)互連參考模型,是一種通信協(xié)議的7層抽象的參考模型,其中每一層執(zhí)行某一特定任務(wù)。該模型的目的是使各種硬件在相同的層次上相互通信。這7層是:物理層、數(shù)據(jù)鏈路層、網(wǎng)路層、傳輸
48、層、話路層、表示層和應(yīng)用層。而TCP/IP通訊協(xié)議采用了4層的層級(jí)結(jié)構(gòu),每一層都呼叫它的下一層所提供的網(wǎng)絡(luò)來(lái)完成自己的需求。這4層分別為: 應(yīng)用層:應(yīng)用程序間溝通的層,如簡(jiǎn)單電子郵件傳輸(SMTP)、文件傳輸協(xié)議(FTP)、網(wǎng)絡(luò)遠(yuǎn)程訪問(wèn)協(xié)議(Telnet)等。 傳輸層:在此層中,它提供了節(jié)點(diǎn)間的數(shù)據(jù)傳送服務(wù),如傳輸控制協(xié)議(TCP)、用戶數(shù)據(jù)報(bào)協(xié)議(UDP)等,TCP和UDP給數(shù)據(jù)包加入傳輸數(shù)據(jù)并把它傳輸?shù)较乱粚又?,這一層負(fù)
49、責(zé)傳送數(shù)據(jù),并且確定數(shù)據(jù)已被送達(dá)并接收。 互連網(wǎng)絡(luò)層:負(fù)責(zé)提供基本的數(shù)據(jù)封包傳送功能,讓每一塊數(shù)據(jù)包都能夠到達(dá)目的主機(jī)(但不檢查是否被正確接收),如網(wǎng)際協(xié)議(IP)。 網(wǎng)絡(luò)接口層:對(duì)實(shí)際的網(wǎng)絡(luò)媒體的管理,定義如何使用實(shí)際網(wǎng)絡(luò)(如Ethernet、Serial Line等)來(lái)傳送數(shù)據(jù)。</p><p> 2.2.3 Spring介紹</p><p> Spring是一個(gè)開(kāi)源框
50、架,它由Rod Johnson創(chuàng)建。它是為了解決企業(yè)應(yīng)用開(kāi)發(fā)的復(fù)雜性而創(chuàng)建的。Spring使用基本的JavaBean來(lái)完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限于服務(wù)器端的開(kāi)發(fā)。從簡(jiǎn)單性、可測(cè)試性和低耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。</p><p> Spring是一個(gè)輕量級(jí)的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架。</p><p&
51、gt; 輕量——從大小與開(kāi)銷兩方面而言Spring都是輕量的。完整的Spring框架可以在一個(gè)大小只有1MB多的JAR文件里發(fā)布。并且Spring所需的處理開(kāi)銷也是微不足道的。此外,Spring是非侵入式的:典型地,Spring應(yīng)用中的對(duì)象不依賴于Spring的特定類。</p><p> 控制反轉(zhuǎn)——Spring通過(guò)一種稱作控制反轉(zhuǎn)(IoC)的技術(shù)促進(jìn)了松耦合。當(dāng)應(yīng)用了IoC,一個(gè)對(duì)象依賴的其它對(duì)象會(huì)通過(guò)被動(dòng)
52、的方式傳遞進(jìn)來(lái),而不是這個(gè)對(duì)象自己創(chuàng)建或者查找依賴對(duì)象。你可以認(rèn)為IoC與JNDI相反——不是對(duì)象從容器中查找依賴,而是容器在對(duì)象初始化時(shí)不等對(duì)象請(qǐng)求就主動(dòng)將依賴傳遞給它。</p><p> 面向切面——Spring提供了面向切面編程的豐富支持,允許通過(guò)分離應(yīng)用的業(yè)務(wù)邏輯與系統(tǒng)級(jí)服務(wù)(例如審計(jì)(auditing)和事務(wù)(transaction)管理)進(jìn)行內(nèi)聚性的開(kāi)發(fā)。應(yīng)用對(duì)象只實(shí)現(xiàn)它們應(yīng)該做的——完成業(yè)務(wù)邏輯—
53、—僅此而已。它們并不負(fù)責(zé)(甚至是意識(shí))其它的系統(tǒng)級(jí)關(guān)注點(diǎn),例如日志或事務(wù)支持。</p><p> 容器——Spring包含并管理應(yīng)用對(duì)象的配置和生命周期,在這個(gè)意義上它是一種容器,你可以配置你的每個(gè)bean如何被創(chuàng)建——基于一個(gè)可配置原型(prototype),你的bean可以創(chuàng)建一個(gè)單獨(dú)的實(shí)例或者每次需要時(shí)都生成一個(gè)新的實(shí)例——以及它們是如何相互關(guān)聯(lián)的。然而,Spring不應(yīng)該被混同于傳統(tǒng)的重量級(jí)的EJB容器
54、,它們經(jīng)常是龐大與笨重的,難以使用。</p><p> 框架——Spring可以將簡(jiǎn)單的組件配置、組合成為復(fù)雜的應(yīng)用。在Spring中,應(yīng)用對(duì)象被聲明式地組合,典型地是在一個(gè)XML文件里。Spring也提供了很多基礎(chǔ)功能(事務(wù)管理、持久化框架集成等等),將應(yīng)用邏輯的開(kāi)發(fā)留給了你。</p><p> 所有Spring的這些特征使你能夠編寫更干凈、更可管理、并且更易于測(cè)試的代碼。它們也為S
55、pring中的各種模塊提供了基礎(chǔ)支持。</p><p> Spring 框架是一個(gè)分層架構(gòu),由 7 個(gè)定義良好的模塊組成。Spring 模塊構(gòu)建在核心容器之上,核心容器定義了創(chuàng)建、配置和管理 bean 的方式。組成 Spring 框架的每個(gè)模塊(或組件)都可以單獨(dú)存在,或者與其他一個(gè)或多個(gè)模塊聯(lián)合實(shí)現(xiàn)。每個(gè)模塊的功能如下: 核心容器:核心容器提供 Spring 框架的基本功能。核心容器的主要組件是 Be
56、anFactory,它是工廠模式的實(shí)現(xiàn)。BeanFactory 使用控制反轉(zhuǎn)(IOC) 模式將應(yīng)用程序的配置和依賴性規(guī)范與實(shí)際的應(yīng)用程序代碼分開(kāi)。</p><p> Spring 上下文:Spring 上下文是一個(gè)配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企業(yè)服務(wù),例如 JNDI、EJB、電子郵件、國(guó)際化、校驗(yàn)和調(diào)度功能。</p><p> Spring
57、AOP:通過(guò)配置管理特性,Spring AOP 模塊直接將面向方面的編程功能集成到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何對(duì)象支持 AOP。Spring AOP 模塊為基于 Spring 的應(yīng)用程序中的對(duì)象提供了事務(wù)管理服務(wù)。通過(guò)使用 Spring AOP,不用依賴 EJB 組件,就可以將聲明性事務(wù)管理集成到應(yīng)用程序中。</p><p> Spring DAO:JDBC DA
58、O 抽象層提供了有意義的異常層次結(jié)構(gòu),可用該結(jié)構(gòu)來(lái)管理異常處理和不同數(shù)據(jù)庫(kù)供應(yīng)商拋出的錯(cuò)誤消息。異常層次結(jié)構(gòu)簡(jiǎn)化了錯(cuò)誤處理,并且極大地降低了需要編寫的異常代碼數(shù)量(例如打開(kāi)和關(guān)閉連接)。Spring DAO 的面向 JDBC 的異常遵從通用的 DAO 異常層次結(jié)構(gòu)。</p><p> Spring ORM:Spring 框架插入了若干個(gè) ORM 框架,從而提供了 ORM 的對(duì)象關(guān)系工具,其中包括 JDO、Hib
59、ernate 和 iBatis SQL Map。所有這些都遵從 Spring 的通用事務(wù)和 DAO 異常層次結(jié)構(gòu)。</p><p> Spring Web 模塊:Web 上下文模塊建立在應(yīng)用程序上下文模塊之上,為基于 Web 的應(yīng)用程序提供了上下文。所以,Spring 框架支持與 Jakarta Struts 的集成。Web 模塊還簡(jiǎn)化了處理多部分請(qǐng)求以及將請(qǐng)求參數(shù)綁定到域?qū)ο蟮墓ぷ鳌?lt;/p>&
60、lt;p> Spring MVC 框架:MVC 框架是一個(gè)全功能的構(gòu)建 Web 應(yīng)用程序的 MVC 實(shí)現(xiàn)。通過(guò)策略接口,MVC 框架變成為高度可配置的,MVC 容納了大量視圖技術(shù),其中包括 JSP、Velocity、Tiles、iText 和 POI。</p><p> 2.2.4 Struts2介紹</p><p> Struts 2是Struts的下一代產(chǎn)品,是在 stru
61、ts 1和WebWork的技術(shù)基礎(chǔ)上進(jìn)行了合并的全新的Struts 2框架。其全新的Struts 2的體系結(jié)構(gòu)與Struts 1的體系結(jié)構(gòu)差別巨大。Struts 2以WebWork為核心,采用攔截器的機(jī)制來(lái)處理用戶的請(qǐng)求,這樣的設(shè)計(jì)也使得業(yè)務(wù)邏輯控制器能夠與ServletAPI完全脫離開(kāi),所以Struts 2可以理解為WebWork的更新產(chǎn)品。雖然從Struts 1到Struts 2有著太大的變化,但是相對(duì)于WebWork,Struts
62、 2的變化很小。</p><p> 在Struts 2體系結(jié)構(gòu)中當(dāng)Web容器收到 請(qǐng)求(HttpServletRequest)它將請(qǐng)求傳遞給一個(gè)標(biāo)準(zhǔn)的的過(guò)濾鏈包括(ActionContextCleanUp)過(guò)濾器,然后經(jīng)過(guò)Other filters(SiteMesh ,etc),接下來(lái)需要調(diào)用FilterDispatcher核心控制器,然后它調(diào)用ActionMapper確定請(qǐng)求那個(gè)Action,ActionMa
63、pper返回一個(gè)收集Action詳細(xì)信息的ActionMaping對(duì)象。</p><p> 接下來(lái)FilterDispatcher將控制權(quán)委派給ActionProxy,ActionProxy調(diào)用配置管理器(ConfigurationManager) 從配置文件中讀取配置信息(struts.xml),然后創(chuàng)建ActionInvocation對(duì)象,ActionInvocation在調(diào)用Action之前會(huì)依次的調(diào)用所
64、用配置攔截器(Interceptor N) 一旦執(zhí)行結(jié)果返回結(jié)果字符串ActionInvocation負(fù)責(zé)查找結(jié)果字符串對(duì)應(yīng)的(Result)然后執(zhí)行這個(gè)Result Result會(huì)調(diào)用一些模版(JSP)來(lái)呈現(xiàn)頁(yè)面,之后攔截器(Interceptor N)會(huì)在被執(zhí)行(順序和Action執(zhí)行之前相反)最后響應(yīng)(HttpServletResponse)被返回在web.xml中配置的那些過(guò)濾器和(核心控制器)(FilterDispatcher
65、)。</p><p> Struts2的攔截器在在AOP(Aspect-Oriented Programming)中用于在某個(gè)方法或字段被訪問(wèn)之前,進(jìn)行攔截然后在之前或之后加入某些操作。攔截是AOP的一種實(shí)現(xiàn)策略。</p><p> 在Webwork的中文文檔的解釋為——攔截器是動(dòng)態(tài)攔截Action調(diào)用的對(duì)象。它提供了一種機(jī)制可以使開(kāi)發(fā)者可以定義在一個(gè)action執(zhí)行的前后執(zhí)行的代碼,
66、也可以在一個(gè)action執(zhí)行前阻止其執(zhí)行。同時(shí)也是提供了一種可以提取action中可重用的部分的方式。</p><p> 大部分時(shí)候,攔截器方法都是通過(guò)代理的方式來(lái)調(diào)用的。Struts 2的攔截器實(shí)現(xiàn)相對(duì)簡(jiǎn)單。當(dāng)請(qǐng)求到達(dá)Struts 2的ServletDispatcher時(shí),Struts 2會(huì)查找配置文件,并根據(jù)其配置實(shí)例化相對(duì)的攔截器對(duì)象,然后串成一個(gè)列表(list),最后一個(gè)一個(gè)地調(diào)用列表中的攔截器<
67、/p><p> Struts 2已經(jīng)為您提供豐富多樣的,功能齊全的攔截器實(shí)現(xiàn)。因此可以至struts2的jar包內(nèi)的struts-default.xml查看關(guān)于默認(rèn)的攔截器與攔截器鏈的配置。</p><p> 2.2.5 Hibernate介紹</p><p> Hibernate是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得Ja
68、va程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù)。 Hibernate可以應(yīng)用在任何使用JDBC的場(chǎng)合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。</p><p> Hibernate的核心接口一共有6個(gè),分別為:Session、SessionFactory、Tra
69、nsaction、Query、Criteria和Configuration。這6個(gè)核心接口在任何開(kāi)發(fā)中都會(huì)用到。通過(guò)這些接口,不僅可以對(duì)持久化對(duì)象進(jìn)行存取,還能夠進(jìn)行事務(wù)控制。下面對(duì)這6個(gè)核心接口分別加以介紹。</p><p> 1) Session</p><p> Session接口負(fù)責(zé)執(zhí)行被持久化對(duì)象的CRUD操作(CRUD的任務(wù)是完成與數(shù)據(jù)庫(kù)的交流,包含了很多常見(jiàn)的SQL語(yǔ)句。
70、)。但需要注意的是Session對(duì)象是非線程安全的。同時(shí),Hibernate的session不同于JSP應(yīng)用中的HttpSession。這里當(dāng)使用session這個(gè)術(shù)語(yǔ)時(shí),其實(shí)指的是Hibernate中的session,而以后會(huì)將HttpSession對(duì)象稱為用戶session。</p><p> 2) SessionFactory</p><p> SessionFactory接口負(fù)
71、責(zé)初始化Hibernate。它充當(dāng)數(shù)據(jù)存儲(chǔ)源的代理,并負(fù)責(zé)創(chuàng)建Session對(duì)象。這里用到了工廠模式。需要注意的是SessionFactory并不是輕量級(jí)的,因?yàn)橐话闱闆r下,一個(gè)項(xiàng)目通常只需要一個(gè)SessionFactory就夠,當(dāng)需要操作多個(gè)數(shù)據(jù)庫(kù)時(shí),可以為每個(gè)數(shù)據(jù)庫(kù)指定一個(gè)SessionFactory。</p><p> 3) Transaction</p><p> Transa
72、ction 接口是一個(gè)可選的API,可以選擇不使用這個(gè)接口,取而代之的是Hibernate 的設(shè)計(jì)者自己寫的底層事務(wù)處理代碼。 Transaction 接口是對(duì)實(shí)際事務(wù)實(shí)現(xiàn)的一個(gè)抽象,這些實(shí)現(xiàn)包括JDBC的事務(wù)、JTA 中的UserTransaction、甚至可以是CORBA 事務(wù)。之所以這樣設(shè)計(jì)是能讓開(kāi)發(fā)者能夠使用一個(gè)統(tǒng)一事務(wù)的操作界面,使得自己的項(xiàng)目可以在不同的環(huán)境和容器之間方便地移值。</p><p>&l
73、t;b> 4) Query</b></p><p> Query接口讓你方便地對(duì)數(shù)據(jù)庫(kù)及持久對(duì)象進(jìn)行查詢,它可以有兩種表達(dá)方式:HQL語(yǔ)言或本地?cái)?shù)據(jù)庫(kù)的SQL語(yǔ)句。Query經(jīng)常被用來(lái)綁定查詢參數(shù)、限制查詢記錄數(shù)量,并最終執(zhí)行查詢操作。</p><p> 5) Criteria</p><p> Criteria接口與Query接口非常類似
74、,允許創(chuàng)建并執(zhí)行面向?qū)ο蟮臉?biāo)準(zhǔn)化查詢。值得注意的是Query接口也是輕量級(jí)的,它不能在Session之外使用。</p><p> 6) Configuration</p><p> Configuration 接口的作用是對(duì)Hibernate 進(jìn)行配置,以及對(duì)它進(jìn)行啟動(dòng)。在Hibernate 的啟動(dòng)過(guò)程中,Configuration 類的實(shí)例首先定位映射文檔的位置,讀取這些配置,然后創(chuàng)
75、建一個(gè)SessionFactory對(duì)象。雖然Configuration 接口在整個(gè)Hibernate 項(xiàng)目中只扮演著一個(gè)很小的角色,但它是啟動(dòng)hibernate 時(shí)所遇到的每一個(gè)對(duì)象。</p><p> hibernate優(yōu)點(diǎn):</p><p> 1) 封裝了jdbc,簡(jiǎn)化了很多重復(fù)性代碼。</p><p> 2) 簡(jiǎn)化了DAO層編碼工作,使開(kāi)發(fā)更對(duì)象化了。&
76、lt;/p><p> 3) 移植性好,支持各種數(shù)據(jù)庫(kù),如果換個(gè)數(shù)據(jù)庫(kù)只要在配置文件中變換配置就可以了,不用改變hibernate代碼。</p><p> 4) 支持透明持久化,因?yàn)閔ibernate操作的是純粹的(pojo)java類,沒(méi)有實(shí)現(xiàn)任何接口,沒(méi)有侵入性。所以說(shuō)它是一個(gè)輕量級(jí)框架。</p><p> 2.2.6 JavaScript開(kāi)發(fā)技術(shù)介紹</
77、p><p> JavaScript是一種基于對(duì)象(Object)和事件驅(qū)動(dòng)(Event Driven)并具有安全性能的腳本語(yǔ)言。它可以嵌入到HTML文檔中使網(wǎng)頁(yè)更加生動(dòng)活潑,并具有交互性。HTML語(yǔ)言是網(wǎng)頁(yè)設(shè)計(jì)普遍采取的一種超文本標(biāo)記語(yǔ)言,但HTML自身不能為網(wǎng)頁(yè)提供很多動(dòng)態(tài)支持,它只能創(chuàng)建超鏈接以允許用戶瀏覽不同的HTML文檔。HTML也不能接受用戶輸入,更不能對(duì)用戶請(qǐng)求作出反應(yīng)。JavaScript的出現(xiàn)彌補(bǔ)了
78、HTML語(yǔ)言的缺陷,是Web上新的、強(qiáng)大的編程語(yǔ)言。</p><p> 一種編程語(yǔ)言通常是由另外一種編程語(yǔ)言演變而來(lái)的,JavaScript的發(fā)展歷史還得從Java談起。</p><p> Java最初是Sun Microsystems公司為了在實(shí)時(shí)嵌入式系統(tǒng)中使用而開(kāi)發(fā)的。最初只有HotJava支持Java,而HotJava正是Sun公司為支持Java而開(kāi)發(fā)的一種實(shí)驗(yàn)性Web瀏覽器。
79、當(dāng)Netscape公司在認(rèn)識(shí)到Java的巨大潛力后,便把它和自己開(kāi)發(fā)的Web瀏覽器——Netscape Navigator結(jié)合到一起。</p><p> Netscape公司最初開(kāi)發(fā)了一個(gè)LiveScript語(yǔ)言,在Navigator和Web服務(wù)器產(chǎn)品中加進(jìn)了基本的腳本功能。當(dāng)Navigator 2.0中加進(jìn)了Java小程序支持后,Netscape公司便把最初的LiveScript更名成了JavaScript。
80、</p><p> 接著,Microsoft公司的瀏覽器Internet Explorer 3.0也開(kāi)始支持JavaScript。此后,許多公司相繼宣布承認(rèn)JavaScript為Internet上的開(kāi)放式腳本編寫標(biāo)準(zhǔn),并且把它添加到了自己的產(chǎn)品中。因此,目前流行的瀏覽器都支持JavaScript。JavaScript因而也日益流行起來(lái)。</p><p> JavaScript是一種簡(jiǎn)單
81、的腳本編程語(yǔ)言,主要適用于簡(jiǎn)單、小型的程序。它可以與HTML超文本標(biāo)記語(yǔ)言、Java腳本語(yǔ)言(Java小程序)一起實(shí)現(xiàn)在一個(gè)Web頁(yè)面中鏈接多個(gè)對(duì)象,與Web客戶交互作用,從而開(kāi)發(fā)出客戶端的應(yīng)用程序等。它是通過(guò)嵌入或調(diào)入到標(biāo)準(zhǔn)的HTML語(yǔ)言中實(shí)現(xiàn)的,它的出現(xiàn)彌補(bǔ)了HTML語(yǔ)言的缺陷。JavaScript語(yǔ)言有以下特點(diǎn)。</p><p> 1) JavaScript是一種腳本編寫語(yǔ)言</p><
82、;p> 腳本(Script)是一種能夠完成某些特殊功能的指令序列(小程序段)。這些指令序列不像一般程序那樣需要被編譯才能執(zhí)行,而是在程序運(yùn)行過(guò)程中被逐行地解釋。在腳本中所使用的命令與語(yǔ)句集稱為腳本語(yǔ)言。</p><p> JavaScript是一種腳本語(yǔ)言,它采用小程序段的方式實(shí)現(xiàn)編程。像其他腳本語(yǔ)言一樣,JavaScript同樣也是一種解釋性語(yǔ)言,它提供了一個(gè)開(kāi)發(fā)過(guò)程,它的基本結(jié)構(gòu)形式與C、C++、V
83、B十分類似,但它不像這些語(yǔ)言那樣,需要先編譯,而是在程序運(yùn)行過(guò)程中被逐行地解釋。它通過(guò)與HTML標(biāo)識(shí)結(jié)合在一起來(lái)方便用戶的使用操作。</p><p> 2) JavaScript是一種基于對(duì)象的語(yǔ)言</p><p> JavaScript是一種基于對(duì)象的語(yǔ)言,這意味著它能運(yùn)用已經(jīng)創(chuàng)建的對(duì)象,但不能派生新的對(duì)象,也就是沒(méi)有面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言(如Java就是一種面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言)所
84、具有的繼承、多態(tài)等特點(diǎn),這使JavaScript更容易學(xué)習(xí)。</p><p><b> 3) 簡(jiǎn)單性</b></p><p> JavaScript的簡(jiǎn)單性主要體現(xiàn)在:第一,它是一種基于Java基本語(yǔ)句和控制流之上的簡(jiǎn)單而緊湊的設(shè)計(jì),從而對(duì)學(xué)習(xí)Java是一種非常好的過(guò)渡;第二,它的變量類型采用弱類型,并未使用嚴(yán)格的數(shù)據(jù)類型;第三,JavaScript可以用很小的程
85、序做大量的事,如創(chuàng)建交互式網(wǎng)頁(yè)、控制瀏覽器的行為等。用戶無(wú)須有高性能的電腦,也無(wú)須安裝復(fù)雜的軟件,僅需一個(gè)字處理軟件及一個(gè)瀏覽器,即可使用JavaScript進(jìn)行程序設(shè)計(jì)。JavaScript不需要耗時(shí)的編譯過(guò)程,從而使腳本程序的開(kāi)發(fā)周期比較短。JavaScript的大多數(shù)界面特征,均由瀏覽器和HTML代碼處理,因此更加提高了開(kāi)發(fā)速度。</p><p><b> 4) 安全性</b><
86、;/p><p> JavaScript是一種安全性語(yǔ)言,它不允許訪問(wèn)本地的硬盤,更不能將數(shù)據(jù)存入到服務(wù)器上,也不允許對(duì)網(wǎng)絡(luò)文檔進(jìn)行修改和刪除,只能通過(guò)瀏覽器實(shí)現(xiàn)信息瀏覽或動(dòng)態(tài)交互,從而可以有效地防止數(shù)據(jù)丟失。</p><p><b> 5) 動(dòng)態(tài)性</b></p><p> JavaScript是動(dòng)態(tài)的,它可以直接對(duì)用戶或客戶輸入作出響應(yīng),無(wú)
87、須經(jīng)過(guò)Web服務(wù)程序。它對(duì)用戶反映的響應(yīng)是采用事件驅(qū)動(dòng)的方式進(jìn)行的。在主頁(yè)(Home Page)中執(zhí)行了某種操作所產(chǎn)生的動(dòng)作,就稱為“事件”(Event)。如按下鼠標(biāo)、移動(dòng)窗口、選擇菜單等都可以視為事件。當(dāng)事件發(fā)生后,就可能會(huì)引起相應(yīng)的事件響應(yīng)。</p><p><b> 6) 跨平臺(tái)性</b></p><p> JavaScript是依賴于瀏覽器本身的,與操作環(huán)
88、境無(wú)關(guān),只要能運(yùn)行瀏覽器的計(jì)算機(jī),并有支持JavaScript的瀏覽器就可以正確執(zhí)行,從而實(shí)現(xiàn)了“編寫一次,走遍天下”的夢(mèng)想。</p><p> 正是以上的這些JavaScript的特點(diǎn),使JavaScript在Web編程領(lǐng)域中得到了廣泛的普及和運(yùn)用,具有廣闊的發(fā)展前景。</p><p> 為了能夠讓瀏覽器識(shí)別HTML文檔中的腳本代碼行,每個(gè)腳本必須包含在Script容器標(biāo)識(shí)符(也稱為
89、標(biāo)簽)內(nèi),換言之,要用打開(kāi)標(biāo)簽<script>開(kāi)始腳本,用關(guān)閉標(biāo)簽</script>來(lái)結(jié)束腳本。無(wú)論是表單或者段落,在HTML中,都要使用首尾標(biāo)記對(duì)標(biāo)記內(nèi)容進(jìn)行封裝。</p><p> 在HTML文件中嵌入JavaScript的方法,可以通過(guò)<script>標(biāo)簽的屬性來(lái)決定。<script>…</script>標(biāo)簽對(duì)的位置并不是固定的,可以出現(xiàn)在HTM
90、L文檔的<head>…</head>或者<boda>…</body>標(biāo)簽對(duì)之間,也可以出現(xiàn)在文檔的多個(gè)位置。通過(guò)<script>…</script>標(biāo)簽對(duì)來(lái)嵌入多段JavaScript代碼,該<script>標(biāo)簽有兩個(gè)可選屬性,這兩個(gè)屬性決定著正在使用的JavaScript是以哪種方式并入HTML文件的。</p><p> 利用
91、<script>標(biāo)簽及其屬性最終能夠用兩種不同的方法將JavaScript程序集成到HTML文件中。如果src屬性生效,開(kāi)發(fā)者就能夠把存儲(chǔ)到某個(gè)單獨(dú)文件中的某段JavaScript代碼引用過(guò)來(lái),并簡(jiǎn)單地將這些文件加載到單獨(dú)的Web頁(yè)面中。如果將language屬性設(shè)置為JavaScript,則表示文檔中的腳本語(yǔ)言是JavaScript,而不是其他腳本語(yǔ)言,開(kāi)發(fā)者就可以直接在HTML文檔中編寫JavaScript腳本程序。這兩
92、種屬性可以單獨(dú)使用,也可以并用。</p><p> 用上述兩種方法在HTML文檔中嵌入的JavaScript腳本都是在文檔載入時(shí)開(kāi)始運(yùn)行的。這種在頁(yè)面載入時(shí)就運(yùn)行的腳本稱為實(shí)時(shí)腳本。如果JavaScript腳本是在文檔載入后或者響應(yīng)用戶動(dòng)作時(shí)才運(yùn)行,這種方式稱為延時(shí)腳本。延時(shí)腳本是通過(guò)將JavaScript代碼定義在函數(shù)中實(shí)現(xiàn)的。</p><p><b> 3 系統(tǒng)分析&l
93、t;/b></p><p> 3.1 系統(tǒng)分析概述</p><p> 3.1.1 需求描述</p><p> 勤工儉學(xué)管理信息系統(tǒng)的系統(tǒng)需求主要來(lái)自勤工儉學(xué)者和勤工儉學(xué)工作相關(guān)的人員,用以實(shí)現(xiàn)學(xué)生用戶管理、數(shù)據(jù)管理、用工分配、查詢、統(tǒng)計(jì)分析等功能。學(xué)生用戶的主要需求是能夠注冊(cè)自己的賬戶,填充自己的申請(qǐng)信息,瀏覽自己的信息,修改自己的信息。勤工助學(xué)相關(guān)工作
94、人員需要通過(guò)信息系統(tǒng)實(shí)現(xiàn)核實(shí)、審查、安排、核算、反饋等工作,高效準(zhǔn)確的完成勤工助學(xué)工作。</p><p> 勤工儉學(xué)管理信息系統(tǒng)需要保證信息的安全,用戶應(yīng)具有部門權(quán)限和操作權(quán)限。系統(tǒng)中的用戶具有不同的部門角色,處于不同部門的用戶只能進(jìn)行本部門職能范圍內(nèi)的操作。系統(tǒng)中的用戶具有不同的權(quán)限,用戶只能進(jìn)行自己權(quán)限相對(duì)應(yīng)的操作。</p><p> 3.1.2 流程圖</p>&
95、lt;p> 流程圖是流經(jīng)一個(gè)系統(tǒng)的信息流、觀點(diǎn)流或部件流的圖形代表。在企業(yè)中,流程圖主要用來(lái)說(shuō)明某一過(guò)程。這種過(guò)程既可以是生產(chǎn)線上的工藝流程,也可以是完成一項(xiàng)任務(wù)必需的管理過(guò)程。符號(hào)說(shuō)明如下:</p><p> 起止框 判斷 輸入輸出 執(zhí)行框</p><p><b> 報(bào)名勤工儉學(xué)流程</b&g
96、t;</p><p> 學(xué)生報(bào)名勤工儉學(xué)職位首先要登錄,如果登錄失敗則返回登錄界面;登錄成功則可以查詢到公司發(fā)布的且已經(jīng)被審核過(guò)的職位,然后報(bào)名對(duì)應(yīng)的職位,數(shù)據(jù)庫(kù)中新增一個(gè)報(bào)名表。流程圖如下:</p><p> 圖3.1 報(bào)名勤工儉學(xué)流程</p><p><b> 2) 注冊(cè)流程</b></p><p> 如果想
97、要注冊(cè)一個(gè)新的用戶,則需正確填寫注冊(cè)信息,如果注冊(cè)信息有誤則返回注冊(cè)頁(yè)面,如果所有注冊(cè)信息都正確則注冊(cè)成功。流程圖如下:</p><p><b> 圖3.2 注冊(cè)流程</b></p><p><b> 新增職位流程</b></p><p> 公司新增職位首先要登錄,如果登錄失敗則返回登錄界面,登錄成功則跳轉(zhuǎn)到新增職位
98、界面,公司發(fā)布職位,如果審核通過(guò),數(shù)據(jù)庫(kù)中新增一個(gè)職位表。流程圖如下:</p><p> 圖3.3 新增職位流程</p><p><b> 發(fā)放工資流程</b></p><p> 管理員發(fā)放工資首先要登錄,如果登錄失敗則返回登錄界面,登錄成功則可以查看工資信息,然后發(fā)放工資。流程圖如下:</p><p> 圖3.
99、4 發(fā)放工資流程</p><p> 3.1.3 系統(tǒng)功能分析</p><p><b> 學(xué)生注冊(cè)</b></p><p> 學(xué)生登錄系統(tǒng)進(jìn)行注冊(cè),同時(shí)填寫學(xué)生自身信息(包括學(xué)號(hào)、登錄密碼、用戶姓名、身份證號(hào)、性別、年齡、專業(yè)、地址、電話、電子郵件、銀行卡號(hào)、備注等)。管理員審核后,即可報(bào)名勤工助學(xué)。</p><p>
100、;<b> 學(xué)生登錄</b></p><p> 學(xué)生登錄系統(tǒng)進(jìn)行登錄,在填寫完學(xué)號(hào)、密碼后,如果賬號(hào)密碼正確則登錄成功, </p><p><b> 否則登錄失敗。</b></p><p><b> 學(xué)生查詢個(gè)人信息</b></p><p> 學(xué)生登錄系統(tǒng)后,可以查詢
101、自身信息。</p><p><b> 學(xué)生更改個(gè)人信息</b></p><p> 學(xué)生登錄系統(tǒng)后,查看自身信息,如需修改個(gè)人信息,進(jìn)行修改個(gè)人信息。</p><p> 學(xué)生查詢用人單位信息</p><p> 學(xué)生登錄系統(tǒng)后,可以查看所有已經(jīng)發(fā)布且管理員已審核的公司的信息。</p><p>
102、<b> 學(xué)生查詢招聘信息</b></p><p> 學(xué)生登錄系統(tǒng)后,可以查看公司發(fā)布的且已審核的招聘信息。</p><p><b> 學(xué)生報(bào)名勤工儉學(xué)</b></p><p> 學(xué)生登錄系統(tǒng)后,查看崗位信息,根據(jù)查看到的崗位信息選擇合適的職位。</p><p><b> 學(xué)生查
103、看狀態(tài)</b></p><p> 學(xué)生登錄系統(tǒng)后,查看報(bào)名單信息,可以根據(jù)報(bào)名單查看自身是否被錄用。被錄用的可以查看工作開(kāi)始時(shí)間,并且查看自身的工作狀態(tài)。如果已經(jīng)離職,可以查看離職時(shí)間。</p><p> 9) 確認(rèn)收到工資</p><p> 學(xué)生登錄系統(tǒng)后,查看工資單信息,如果已經(jīng)收到工資,點(diǎn)擊收到工資按鈕,確認(rèn)已收到工資。</p>
104、<p><b> 10) 公司注冊(cè)</b></p><p> 公司登錄系統(tǒng)進(jìn)行注冊(cè),同時(shí)填寫公司自身信息(包括登錄賬戶、登錄密碼、公司名稱、公司地址、電話、電子郵件、聯(lián)系人、公司簡(jiǎn)介等)。管理員審核后,即可發(fā)布勤工職位信息 。</p><p><b> 11) 公司登錄</b></p><p> 公司
105、登錄系統(tǒng)進(jìn)行登錄,在填寫完賬號(hào)、密碼后,如果賬號(hào)密碼正確則登錄成功, </p><p><b> 否則登錄失敗。</b></p><p> 12) 公司查詢本公司信息</p><p> 公司登錄系統(tǒng)后,可以查看到本公司的詳細(xì)信息。</p><p> 13) 公司更改本公司信息</p><p&
106、gt; 公司登錄系統(tǒng)后,查看本公司信息,如需修改信息,進(jìn)行修改信息。</p><p> 14) 公司查看職位信息</p><p> 公司登錄系統(tǒng)后,可以查看已經(jīng)本公司已經(jīng)發(fā)布的職位信息。</p><p> 15) 公司發(fā)布職位信息</p><p> 公司登錄系統(tǒng)后,可以發(fā)布職位信息(包括標(biāo)題、職位名稱、簡(jiǎn)介、申請(qǐng)截止日期、面試地點(diǎn)、
107、面試時(shí)間、預(yù)計(jì)工資、備注等)。管理員審核后,成功發(fā)布該職位。</p><p> 16) 公司修改職位信息</p><p> 公司登錄系統(tǒng)后,可以修改職位信息。修改后管理員審核該職位。</p><p> 17) 公司刪除職位信息</p><p> 公司登錄系統(tǒng)后,可以刪除本公司發(fā)布的信息。</p><p> 1
108、8) 公司錄用應(yīng)聘者</p><p> 公司登錄系統(tǒng)后,查看報(bào)名表信息,可以錄用應(yīng)聘者。</p><p> 19) 公司解雇應(yīng)聘者</p><p> 公司登陸系統(tǒng)后,查看報(bào)名表信息,可以解雇應(yīng)聘者。</p><p><b> 20) 管理員注冊(cè)</b></p><p> 管理員登錄系統(tǒng)進(jìn)
109、行注冊(cè),同時(shí)填寫管理員信息(包括登錄賬戶、登錄密碼、管理員名稱、備注等)。</p><p><b> 21) 管理員登錄</b></p><p> 管理員登錄系統(tǒng)進(jìn)行登錄,在填寫完賬號(hào)、密碼后,如果賬號(hào)密碼正確則登錄成</p><p><b> 功,否則登錄失敗。</b></p><p>
110、22) 查詢用人單位信息</p><p> 管理員登錄系統(tǒng)后,可以查看所有用人單位信息。</p><p> 23) 審核用人單位信息</p><p> 管理員登錄系統(tǒng)后,可以查看用人單位信息,審核單位信息。</p><p> 24) 查看學(xué)生信息</p><p> 管理員登錄系統(tǒng)后,可以查看所有學(xué)生信息。&l
111、t;/p><p> 25) 審核學(xué)生信息</p><p> 管理員登錄系統(tǒng)后,可以查看學(xué)生信息,審核學(xué)生信息。</p><p> 26) 審核招聘信息</p><p> 管理員登錄系統(tǒng)后,可以審核招聘信息。</p><p><b> 27) 發(fā)放工資</b></p><
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 勤工儉學(xué)管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文1稿.doc
- 勤工儉學(xué)管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文終稿.doc
- 勤工儉學(xué)管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文2稿.doc
- 勤工儉學(xué)管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 信息管理與信息系統(tǒng)畢業(yè)論文查詢管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 工資管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
- 畢業(yè)論文--學(xué)生考勤管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)論文---網(wǎng)絡(luò)投票管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 工資管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[畢業(yè)論文]
- 檔案管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-畢業(yè)論文
- 檔案管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-畢業(yè)論文
- 基于struts框架的勤工儉學(xué)管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 管理信息系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)畢業(yè)論文
- 管理信息系統(tǒng)畢業(yè)論文
- 畢業(yè)論文——管理信息系統(tǒng)
- 管理信息系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)畢業(yè)論文
- 畢業(yè)論文學(xué)生考勤管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 管理信息系統(tǒng)畢業(yè)論文
- 畢業(yè)論文——管理信息系統(tǒng)
- 畢業(yè)論文--管理信息系統(tǒng)
評(píng)論
0/150
提交評(píng)論