九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

科研成果申報(bào)管理系統(tǒng) 畢業(yè)論文

上傳人:e****s 文檔編號(hào):60265469 上傳時(shí)間:2022-03-07 格式:DOC 頁(yè)數(shù):44 大?。?.26MB
收藏 版權(quán)申訴 舉報(bào) 下載
科研成果申報(bào)管理系統(tǒng) 畢業(yè)論文_第1頁(yè)
第1頁(yè) / 共44頁(yè)
科研成果申報(bào)管理系統(tǒng) 畢業(yè)論文_第2頁(yè)
第2頁(yè) / 共44頁(yè)
科研成果申報(bào)管理系統(tǒng) 畢業(yè)論文_第3頁(yè)
第3頁(yè) / 共44頁(yè)

下載文檔到電腦,查找使用更方便

16 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《科研成果申報(bào)管理系統(tǒng) 畢業(yè)論文》由會(huì)員分享,可在線閱讀,更多相關(guān)《科研成果申報(bào)管理系統(tǒng) 畢業(yè)論文(44頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、 畢 業(yè) 設(shè) 計(jì) ( 論 文 ) 題 目 科研成果申報(bào)管理系統(tǒng) 英文題目 Achievement declaration Management System 學(xué)生姓名 111 學(xué) 號(hào) 111 專 業(yè) 111工程 學(xué) 院 111學(xué)院 指導(dǎo)教師 1111 職 稱 1111111

2、 二 零 一 一 年 六 月 摘 要 科研成果申報(bào)管理系統(tǒng)是科研院所、政府機(jī)構(gòu)實(shí)現(xiàn)對(duì)科研活動(dòng)實(shí)現(xiàn)有效管理的一個(gè)平臺(tái)。伴隨著互聯(lián)網(wǎng)的蓬勃發(fā)展,越來越多的機(jī)構(gòu)將科研管理與Internet融合到一起,以方便科研人員的溝通以及評(píng)價(jià)管理??蒲谐晒陥?bào)系統(tǒng)將人員、項(xiàng)目、成果、權(quán)限等管理有機(jī)結(jié)合,有效提高了科研管理的水平和效果。 為了滿足科研成果申報(bào)管理系統(tǒng)的性能要求,實(shí)現(xiàn)系統(tǒng)靜態(tài)與動(dòng)態(tài)頁(yè)面的相互分離,系統(tǒng)采用B/S結(jié)構(gòu),以JSP+JavaBean和SQL Server2000數(shù)據(jù)庫(kù)相結(jié)合的開發(fā)模式。建立系統(tǒng)原型,然后對(duì)原型進(jìn)不斷修正和改進(jìn),直到形成可行性的設(shè)備管理系統(tǒng)。 論文首

3、先論述了系統(tǒng)的開發(fā)背景和設(shè)計(jì)目標(biāo),并對(duì)系統(tǒng)開發(fā)所采用的技術(shù)進(jìn)行相應(yīng)的簡(jiǎn)單介紹。對(duì)系統(tǒng)的功能模塊進(jìn)行劃分。接著對(duì)系統(tǒng)中的數(shù)據(jù)庫(kù)進(jìn)行模型設(shè)計(jì),包括數(shù)據(jù)流圖、實(shí)體聯(lián)系圖及數(shù)據(jù)表結(jié)構(gòu)。系統(tǒng)主要有三大主功能模塊:科研項(xiàng)目申報(bào)模塊、可研審批模塊、公共查詢模塊各模塊。不同的用戶在使用系統(tǒng)的時(shí)候根據(jù)自己的所屬權(quán)限進(jìn)入不同模塊進(jìn)行操作。 關(guān)鍵詞:成果申報(bào); JSP技術(shù); JavaBean; 數(shù)據(jù)庫(kù)技術(shù) ABSTRACT Research reporting management system is the scientific res

4、earch institutes, government agencies to achieve effective management of research activities to achieve a platform. With the Internet booming, more and more institutions will be integrated into the research management together with the Internet to facilitate communication between researchers and the

5、 evaluation of management. Research results reporting system, project, results, and other management authority combine to effectively improve the level and effectiveness of research management. Research reporting management systems to meet the performance requirements for system static and dynamic

6、pages are separated, the system uses B / S structure to JSP + JavaBean and a combination of SQL Server2000 database development model. Create a system prototype, and then the prototype into the constantly revised and improved, until the formation of the feasibility of the device management system.

7、Paper first discusses the background and development of the system design goals, and system development techniques used in the corresponding brief. Functional modules on the system partition. Then the database on the system model design, including data flow diagrams, entity relationship graph and da

8、ta table structure. System, there are three main modules: module research project report, feasibility study for approval module, public access to the module of the module. Different users when using the system according to their respective permission to access different modules to operate. Keywords

9、: Achievement declaration; JSP technology; JavaBean; Database technology 目 錄 緒論 1 1. 引言 2 1.1 系統(tǒng)需求分析 2 1.2 系統(tǒng)的設(shè)計(jì)目標(biāo) 2 1.3 系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu) 2 1.4 系統(tǒng)采用的開發(fā)技術(shù)簡(jiǎn)介 3 技術(shù) 3 技術(shù) 4 技術(shù) 5 1.5 小結(jié) 6 2. 系統(tǒng)總體分析 7 2.1 可行性分析 7 技術(shù)可行性分析 7 經(jīng)濟(jì)可行性 7 操作可行性 7 2.2 系統(tǒng)功能分析 8 2.3 操作流程 8 2.4 小結(jié) 9 3. 系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

10、10 3.1 功能模塊介紹 10 3.2系統(tǒng)主界面設(shè)計(jì) 10 3.3 科研申報(bào)功能 11 申報(bào)員登錄 11 課題和成果申報(bào) 13 修改個(gè)人信息 15 查詢成果或課題申報(bào) 17 3.4 科研審批功能 18 審批員登錄 18 未入庫(kù)的課題及成果查詢 19 查看用戶信息 21 添加用戶信息 22 3.5 公共查詢功能 23 3.6 JavaBean的設(shè)計(jì) 24 與數(shù)據(jù)庫(kù)連接的JavaBean設(shè)計(jì) 24 處理字符串的JavaBean 26 3.7 小結(jié) 27 4. 系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì) 28 4.1 數(shù)據(jù)庫(kù)的設(shè)計(jì)思想 28 4.2 數(shù)據(jù)庫(kù)的模型設(shè)計(jì) 28 數(shù)據(jù)流圖

11、28 實(shí)體聯(lián)系圖 29 4.3 數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì) 30 4.4 小結(jié) 33 5. 系統(tǒng)測(cè)試 34 5.1 系統(tǒng)測(cè)試的目的和要求 34 5.2 功能測(cè)試 34 結(jié) 論 36 致 謝 37 參考文獻(xiàn) 38 緒論 (1)選題的背景 近年來,隨著國(guó)家對(duì)科學(xué)研究的重視,投入科學(xué)研究的財(cái)政開支占國(guó)民生產(chǎn)總值的比例逐年增加,科研成果也隨之大批涌現(xiàn)。政府部門越來越多的采用網(wǎng)絡(luò)的方式對(duì)科研成果申報(bào)與審批進(jìn)行管理[1]??蒲谐晒陥?bào)管理系統(tǒng)是科研院所,高等研究所等內(nèi)部管理的核心部分,通過科研成果申報(bào)管理系統(tǒng)可以實(shí)現(xiàn)對(duì)科研活動(dòng)的全程跟蹤。隨著互聯(lián)網(wǎng)具有的巨大優(yōu)勢(shì)被越來越多的人認(rèn)識(shí)

12、,越來越多的機(jī)構(gòu)將科研成果管理與Internet融合在一起,以方便科研人員進(jìn)行溝通和管理。科研成果申報(bào)管理系統(tǒng)就是在這樣一個(gè)社會(huì)背景下開發(fā)的。 科研成果申報(bào)管理系統(tǒng)可以極大地提高管理效率,在設(shè)計(jì)時(shí)充分考慮了用戶使用的方便與靈活性,既能實(shí)現(xiàn)對(duì)科研信息的高效率管理和控制,又能滿足研究所的決策者對(duì)科研活動(dòng)的宏觀管理需要。最重要的是,系統(tǒng)可以直觀反映研究所工作人員的工作狀況,為領(lǐng)導(dǎo)的決策提供科學(xué)的依據(jù)[2]。 (2)選題的目的和意義 為了更有利于科研機(jī)構(gòu)科研院校對(duì)科研申報(bào)過程進(jìn)行更合理、科學(xué)的管理,設(shè)計(jì)一個(gè)以計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的科研申報(bào)管理系統(tǒng)是很有必要的。本系統(tǒng)對(duì)申報(bào)過程中申報(bào)者的個(gè)人信息以

13、及申報(bào)內(nèi)容刪除、審核、查詢等全過程進(jìn)行管理。作為一個(gè)基于B/S模式的信息管理系統(tǒng),科研成果申報(bào)管理系統(tǒng)需要記錄大量的數(shù)據(jù)信息,而這些數(shù)據(jù)信息需要同時(shí)能夠提供給申報(bào)員和審批員查詢和修改,必然需要一個(gè)大型的數(shù)據(jù)庫(kù)系統(tǒng)和一臺(tái)網(wǎng)絡(luò)服務(wù)器,并且需要建立局域網(wǎng)或是能夠被Internet網(wǎng)絡(luò)用戶訪問。對(duì)于客戶機(jī)來說,不需要存儲(chǔ)數(shù)據(jù),而只需要通過訪問服務(wù)器,獲得相應(yīng)的服務(wù)。這樣的科學(xué)高效安全的服務(wù)對(duì)于新時(shí)期科研管理工作來說是值得發(fā)展和建立的。科研成果申報(bào)管理系統(tǒng)將人員、項(xiàng)目、成果、權(quán)限等管理有機(jī)結(jié)合在一起,有效的提高了科研成果管理水平和效率。 (3)系統(tǒng)開發(fā)的主要內(nèi)容 該項(xiàng)目是提供給科研院校等科研機(jī)構(gòu)用于

14、管理科研項(xiàng)目申報(bào)工作的管理系統(tǒng)。在系統(tǒng)中,管理人員可以通過功能實(shí)現(xiàn)對(duì)申報(bào)員申報(bào)項(xiàng)目的管理查看刪除等操作,完成申報(bào)管理主要功能。該系統(tǒng)分為3個(gè)大的模塊:科研項(xiàng)目申報(bào)模塊、科研項(xiàng)目審批模塊、公共查詢模塊。能夠?qū)崿F(xiàn):申報(bào)員登錄、成果申報(bào)、課題申報(bào)、修改個(gè)人信息、查詢成果申報(bào)、查詢課題申報(bào);審批員的登錄、未入庫(kù)課題查看、已入庫(kù)課題查看、未入庫(kù)成果查看、已入庫(kù)成果查看、查詢用戶信息、添加用戶信息;公共查詢的關(guān)鍵字查詢、成果內(nèi)容查詢功能。這些功能建立在JSP良好的平臺(tái)環(huán)境下,系統(tǒng)在穩(wěn)定性和安全性方面完全符合指標(biāo)。 1. 引言 1.1 系統(tǒng)需求分析 當(dāng)今的時(shí)代是信息爆炸的時(shí)代,信息如何有效地管

15、理并發(fā)揮其效用已成為各國(guó)政府、企業(yè)、金融、商業(yè)貿(mào)易機(jī)構(gòu)面臨的重要問題。作為信息技術(shù)在管理領(lǐng)域發(fā)展的一個(gè)重要分支,管理信息系統(tǒng)已在信息管理中起到了舉足輕重的作用。在我國(guó)管理信息系統(tǒng)的實(shí)踐中,人們采用了各種先進(jìn)的信息技術(shù)建設(shè)了一大批管理信息系統(tǒng),其中相當(dāng)一部分正成功地運(yùn)轉(zhuǎn)在組織機(jī)構(gòu)的各個(gè)職能部門。成功的管理信息系統(tǒng)能夠大幅度地減輕業(yè)務(wù)人員繁重的日常工作,從根本上改變了以往不盡合理的業(yè)務(wù)流程,為機(jī)構(gòu)的中高層管理人員提供了及時(shí)有效的輔助決策。管理信息系統(tǒng)的成功實(shí)施正在并繼續(xù)促進(jìn)組織機(jī)構(gòu)管理的現(xiàn)代化、科學(xué)化、規(guī)范化和系統(tǒng)化。一大批成功的管理信息系統(tǒng)正收到很好的社會(huì)效益和經(jīng)濟(jì)效益[3]。 就目前來說,很

16、多科研單位和具有科研能力的高等院校進(jìn)行科研成果的申報(bào)工作還停留在手工操作的階段。這樣勢(shì)必會(huì)造成人力、物力、財(cái)力的浪費(fèi),而且人工操作過程當(dāng)中,發(fā)生錯(cuò)誤的機(jī)率也相對(duì)比較高。科研成果申報(bào)管理系統(tǒng)正好利用計(jì)算機(jī)與互聯(lián)網(wǎng)的巨大的優(yōu)勢(shì),把人工操作轉(zhuǎn)換到計(jì)算機(jī)這個(gè)快捷的平臺(tái)上,因而提高了效率,減少了一些不必要的浪費(fèi),也減少了申報(bào)和審批過程當(dāng)中錯(cuò)誤的發(fā)生機(jī)率。從目前科研審批對(duì)網(wǎng)絡(luò)和計(jì)算機(jī)的運(yùn)用情況以及對(duì)無(wú)紙化辦公的實(shí)際情況看,系統(tǒng)主要是滿足申報(bào)員對(duì)科研項(xiàng)目進(jìn)行申報(bào)和審批員對(duì)科研項(xiàng)目進(jìn)行審批以及其他用戶對(duì)科研項(xiàng)目的查詢。同時(shí)為了將來擴(kuò)充的需要,能夠非常方便的對(duì)系統(tǒng)進(jìn)行升級(jí)。 1.2 系統(tǒng)的設(shè)計(jì)目標(biāo) (1)將

17、人員、項(xiàng)目、成果、權(quán)限等管理有機(jī)結(jié)合,形成高效率的科研管理平臺(tái)。 (2)改善傳統(tǒng)科研成果申報(bào)管理業(yè)務(wù)中存在的諸多弊端,充分發(fā)揮計(jì)算機(jī)軟件的管理優(yōu)勢(shì),有效地提高了科研管理水平和效率。 (3)操作簡(jiǎn)單方便,無(wú)論是專業(yè)人員還是非技術(shù)人員,都可以輕松上手。系統(tǒng)始終以為專業(yè)人員開發(fā)方便、實(shí)用的管理平臺(tái)和為專家教授開發(fā)易用的評(píng)審平臺(tái)為目標(biāo),注重通過高技術(shù)解決實(shí)際問題。 (4)采用先進(jìn)的、開放的客戶機(jī)/服務(wù)器模式(B/S)體系結(jié)構(gòu)[4]。應(yīng)用系統(tǒng)基于Web技術(shù)開發(fā),確保系統(tǒng)具有高超的性能,并使系統(tǒng)具有較高的管理水平。 (5)基于SQL server數(shù)據(jù)庫(kù)系統(tǒng),可以對(duì)大量科研課題進(jìn)行有效管理,保證數(shù)據(jù)

18、的安全性。 1.3 系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu) 在開發(fā)科研成果申報(bào)管理系統(tǒng)之前,需要對(duì)其網(wǎng)絡(luò)結(jié)構(gòu)有一個(gè)總體的了解[5]??蒲谐晒陥?bào)管理系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)可以分為三部分:第一部分是面向用戶的客戶端計(jì)算機(jī)。第二部分是存放信息的服務(wù)器,包括數(shù)據(jù)庫(kù)服務(wù)器和Web服務(wù)器。第三部分是連接這兩者的Internet。 科研成果申報(bào)管理系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1-1所示。 客戶端 (審批員) 客戶端 (申報(bào)員) Internet 路由器 防火墻 交換機(jī) 數(shù)據(jù)庫(kù) 服務(wù)器 Web 服務(wù)器 圖1-1 科研成果申報(bào)管理系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu) 科研成果申報(bào)管理系統(tǒng)可以分為前臺(tái)和后臺(tái)兩部分,前臺(tái)是面向用戶的靜

19、態(tài)界面,后臺(tái)是對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作的動(dòng)態(tài)部分。當(dāng)用戶在前臺(tái)的靜態(tài)頁(yè)面點(diǎn)擊執(zhí)行功能按扭時(shí),相對(duì)應(yīng)的服務(wù)器上的一個(gè)JSP文件被執(zhí)行。這個(gè)文件首先被轉(zhuǎn)譯成一個(gè)Java文件,再將這個(gè)Java文件編譯生成字節(jié)碼文件,然后通過執(zhí)行字節(jié)碼文件響應(yīng)客戶的請(qǐng)求。字節(jié)碼文件把JSP頁(yè)面中普通的HTML標(biāo)記符號(hào)交給客戶的瀏覽器執(zhí)行顯示。JSP標(biāo)簽、數(shù)據(jù)、方法聲明、Java程序片以及Java表達(dá)式都由服務(wù)器負(fù)責(zé)執(zhí)行,將需要顯示的結(jié)果發(fā)送給客戶的瀏覽器。 1.4 系統(tǒng)采用的開發(fā)技術(shù)簡(jiǎn)介 1.4.1 JSP技術(shù) JSP是Java Server Page的縮寫,是由SUN公司倡導(dǎo),許多公司參與,于1999年推出的一種動(dòng)態(tài)

20、網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。JSP是基于Java Servlet以及整個(gè)Java體系的Web開發(fā)技術(shù),利用這一技術(shù)可以建立安全的、跨平臺(tái)的先進(jìn)動(dòng)態(tài)網(wǎng)站[6,7]。同其他開發(fā)技術(shù)相比,JSP具有以下的特點(diǎn): (1)將內(nèi)容的生成和顯示進(jìn)行分離 用JSP技術(shù),Web頁(yè)面開發(fā)人員可以使用HTML或者XML標(biāo)識(shí)來設(shè)計(jì)和格式化最終頁(yè)面,并使用JSP標(biāo)識(shí)或者小腳本來生成頁(yè)面上的動(dòng)態(tài)內(nèi)容。生成內(nèi)容的邏輯被封裝在標(biāo)識(shí)和JavaBeans組件中,并且捆綁在腳本中,所有的腳本在服務(wù)器端運(yùn)行。由于核心邏輯被封裝在標(biāo)識(shí)和JavaBeans中,所以Web管理人員和頁(yè)面設(shè)計(jì)者,能夠編輯和使用JSP頁(yè)面,而不影響內(nèi)容的生成。在服務(wù)

21、器端,JSP引擎解釋JSP標(biāo)識(shí)和腳本,生成所請(qǐng)求的內(nèi)容,并且將結(jié)果以HTML(或者XML)頁(yè)面的形式發(fā)送回瀏覽器。這既有助于作者保護(hù)自己的代碼,又能保證任何基于HTML的Web瀏覽器的完全可用性。 (2)可重用組件 絕大多數(shù)JSP頁(yè)面依賴于可重用的、跨平臺(tái)的組件來執(zhí)行應(yīng)用程序所要求的復(fù)雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或者使得這些組件為更多的使用者和客戶團(tuán)體所使用?;诮M件的方法加速了總體開發(fā)過程,并且使得各種組織在現(xiàn)有的技能和優(yōu)化結(jié)果的開發(fā)努力中得到平衡。 (3)采用標(biāo)識(shí) JSP技術(shù)封裝了許多功能,這些功能是在易用的、與JSP相關(guān)的XML標(biāo)識(shí)中進(jìn)行動(dòng)態(tài)內(nèi)容生

22、成所需要的。標(biāo)準(zhǔn)的JSP標(biāo)識(shí)能夠訪問和實(shí)例化JavaBeans組件、設(shè)置或者檢索組件屬性、下載Applet以及執(zhí)行用其他方法難于編碼和耗時(shí)的功能。 (4)適應(yīng)平臺(tái) 幾乎所有平臺(tái)都支持Java,JSP+JavaBeans幾乎可以在所有平臺(tái)下通行無(wú)阻。從一個(gè)平臺(tái)移植到另外一個(gè)平臺(tái),JSP和JavaBeans甚至不用重新編譯,因?yàn)镴ava字節(jié)碼都是標(biāo)準(zhǔn)的、與平臺(tái)無(wú)關(guān)的。 (5)數(shù)據(jù)庫(kù)連接 Java中連接數(shù)據(jù)庫(kù)的技術(shù)是JDBC,Java程序通過JDBC驅(qū)動(dòng)程序與數(shù)據(jù)庫(kù)相連,執(zhí)行查詢、提取數(shù)據(jù)等操作。Sun公司還開發(fā)了JDBC-ODBC bridge,利用此技術(shù)Java程序可以訪問所有帶有O

23、DBC驅(qū)動(dòng)程序的數(shù)據(jù)庫(kù)。 由于JSP頁(yè)面的內(nèi)置腳本語(yǔ)言是基于Java的,而且所有的JSP頁(yè)面都被編譯成為Java Servlet,所以JSP頁(yè)面具有Java技術(shù)的所有好處,包括健壯的存儲(chǔ)管理和安全性。作為Java平臺(tái)的一部分,JSP擁有Java編程語(yǔ)言“一次編寫,各處運(yùn)行”的特點(diǎn)[8-10]。 1.4.2 javaBeanr技術(shù) JavaBean 是一種JAVA語(yǔ)言寫成的可重用組件。為寫成JavaBean,類必須是具體的和公共的,并且具有無(wú)參數(shù)的構(gòu)造器。JavaBean 通過提供符合一致性設(shè)計(jì)模式的公共方法將內(nèi)部域暴露成員屬性。眾所周知,屬性名稱符合這種模式,其他Java 類可以通過自身

24、機(jī)制發(fā)現(xiàn)和操作這些JavaBean 屬性。 JavaBean是一個(gè)可重復(fù)使用的軟件組件。JavaBean是一種Java類,通過封裝屬性和方法成為具有某種功能或者處理某個(gè)業(yè)務(wù)的對(duì)象,簡(jiǎn)稱Bean。由于JavaBean是基于Java語(yǔ)言的,因此JavaBean不依賴平臺(tái),可以實(shí)現(xiàn)代碼的重復(fù)利用、易編寫、易維護(hù)、易安裝??梢栽谌魏伟惭b了Java運(yùn)行環(huán)境的平臺(tái)上使用,而不需要重新編譯。在JSP頁(yè)面中,數(shù)據(jù)的處理過程指派給一個(gè)或幾個(gè)Bean來完成,我們只需要在JSP頁(yè)面中調(diào)用這個(gè)Bean即可,這樣可以有效的分離靜態(tài)工作部分和動(dòng)態(tài)工作部分。 當(dāng)用戶從瀏覽器訪問系統(tǒng)時(shí),也就是用戶向服務(wù)器發(fā)出請(qǐng)求時(shí),由J

25、SP來接收這次請(qǐng)求,然后調(diào)用JavaBean做具體的數(shù)據(jù)存取邏輯運(yùn)算等處理,把結(jié)果返回給JSP,JSP把得到的結(jié)果通過瀏覽器返回給用戶,系統(tǒng)的整體流程如圖1-2所示。 圖1-2 JSP+JavaBean開發(fā)模式 使用這種開發(fā)模式時(shí),開發(fā)人員可以把一些經(jīng)常使用的或者可以重復(fù)使用的組件如對(duì)數(shù)據(jù)庫(kù)的操作功能的代碼寫成JavaBean,然后放入WEB-INF/classes/下使用。這樣提高了工作效率,而且也會(huì)給維護(hù)帶來很大的方便。 1.4.3 SQL Server技術(shù) Microsoft SQL Server2000是微軟公司最新推出的,一個(gè)分布式的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),具有客戶機(jī)/服務(wù)器體

26、系結(jié)構(gòu),采用了Transact-sql的sql語(yǔ)言在客戶機(jī)與服務(wù)器間傳遞客戶機(jī)的請(qǐng)求與服務(wù)器的處理結(jié)果。Transact-SQL強(qiáng)化了原有的SQL關(guān)鍵字以進(jìn)行數(shù)據(jù)的存取、儲(chǔ)存及處理等功能。而且還擴(kuò)充了流程控制指定,可以方便的編寫功能強(qiáng)大的存儲(chǔ)過程。這些存儲(chǔ)過程存放在服務(wù)器端,并預(yù)先編譯過,執(zhí)行速度非常塊。觸發(fā)器是一種特殊的存儲(chǔ)過程,用來確保SQL Server數(shù)據(jù)庫(kù)引用的完整性。開發(fā)人員可以建立插入、刪除和更新觸發(fā)器以控制相關(guān)的表格中對(duì)數(shù)據(jù)列的插入、刪除和更新。還可以使用規(guī)則(Rule)、缺省(default)以及限制(Constraints),來協(xié)助將新的數(shù)值套用到表格中去[11,12]。S

27、QL Server 2000能夠滿足今天的商業(yè)環(huán)境要求不同類型的數(shù)據(jù)庫(kù)解決方案。它是一種應(yīng)用廣泛的數(shù)據(jù)庫(kù)管理系統(tǒng),具有許多顯著的優(yōu)點(diǎn):易用性、適合分布式組織的可伸縮性、用于決策支持的數(shù)據(jù)倉(cāng)庫(kù)功能、與許多其他服務(wù)器軟件緊密關(guān)聯(lián)的集成性、良好的性價(jià)比等。從數(shù)據(jù)管理和分析角度看,將原始數(shù)據(jù)轉(zhuǎn)化為商業(yè)智能和充分利用 Web 帶來的機(jī)會(huì)非常重要。作為一個(gè)完備的數(shù)據(jù)庫(kù)和數(shù)據(jù)分析包,SQL Server 2000 為快速開發(fā)新一代企業(yè)級(jí)商業(yè)應(yīng)用程序,為企業(yè)贏得核心競(jìng)爭(zhēng)優(yōu)勢(shì)打開了勝利之門。作為重要的基準(zhǔn)測(cè)試可伸縮性和速度獎(jiǎng)的記錄保持者,SQL Server 2000 是一個(gè)具備完全 Web 支持的數(shù)據(jù)庫(kù)產(chǎn)品,

28、提供了對(duì)可擴(kuò)展標(biāo)記語(yǔ)言 (XML) 的核心支持以及在 Internet 上對(duì)防火墻外進(jìn)行查詢的能力。Microsoft SQL Server2000數(shù)據(jù)庫(kù)管理系統(tǒng)包括:SQL Server管理工具的使用、SQL Server的安全性與權(quán)限管理、服務(wù)器LoGin\ID的管理、服務(wù)器職能組的管理、數(shù)據(jù)庫(kù)用戶的管理、數(shù)據(jù)庫(kù)職能組的管理[13-15]。 1.5 小結(jié) 在第一章中簡(jiǎn)單的介紹了科研申報(bào)管理信息系統(tǒng)的開發(fā)背景,系統(tǒng)最終要實(shí)現(xiàn)的目標(biāo),系統(tǒng)網(wǎng)絡(luò)構(gòu)架,以及系統(tǒng)開發(fā)所采用的JSP+javaBean和SQL Server技術(shù)。 2. 系統(tǒng)總體分析 2.1 可行性分析 技術(shù)可行性分析

29、Java Server Pages(JSP)技術(shù)提供了一種建立動(dòng)態(tài)網(wǎng)頁(yè)的簡(jiǎn)單方法,而且也簡(jiǎn)化了構(gòu)造Web程序的工作。Java Server Pages技術(shù)可以讓W(xué)eb開發(fā)人員和設(shè)計(jì)人員非常容易的創(chuàng)建和維護(hù)動(dòng)態(tài)網(wǎng)頁(yè)。作為JavaTM技術(shù)的一部分,JSP能夠快速開發(fā)出基于Web、獨(dú)立于平臺(tái)的應(yīng)用程序。一個(gè)JSP網(wǎng)頁(yè)就是在HTML網(wǎng)頁(yè)中包含了能夠生成動(dòng)態(tài)內(nèi)容的可執(zhí)行應(yīng)用程序代碼。此應(yīng)用程序可能包含JavaBeanTM,JDBCTM對(duì)象,Enterprise JavaBeanTM (EJB)和Remote Method Invocation (RMI)對(duì)象,所有的部分都可以非常容易的從JSP網(wǎng)頁(yè)上訪問

30、到。例如,一個(gè)JSP網(wǎng)頁(yè)可以包含 HTML代碼所顯示的靜態(tài)文本和圖像,也可以調(diào)用一個(gè)JDBC對(duì)象來訪問數(shù)據(jù)庫(kù);當(dāng)網(wǎng)頁(yè)顯示到用戶界面上以后,JSP頁(yè)面將包含靜態(tài)HTML內(nèi)容和從數(shù)據(jù)庫(kù)中找到相應(yīng)的動(dòng)態(tài)信息。在JSP網(wǎng)頁(yè)中,要把用戶界面和應(yīng)用程序分開可以考慮在網(wǎng)頁(yè)設(shè)計(jì)人員和開發(fā)人員之間執(zhí)行一個(gè)非常方便的授權(quán)任務(wù)。它也允許開發(fā)人員去建立靈活的代碼,從而非常容易的進(jìn)行更新和重復(fù)利用。由于JSP網(wǎng)頁(yè)能夠根據(jù)需要自動(dòng)進(jìn)行編譯,Web設(shè)計(jì)人員無(wú)須重新編譯應(yīng)用程序邏輯就可以改變表述代碼。這也使得JSP與Java servlet相比成為一種可以更靈活生成動(dòng)態(tài)Web內(nèi)容的方法[16,17]。 傳統(tǒng)的科研申報(bào)

31、系統(tǒng)由信函等方式提出書面請(qǐng)求,人工記錄申請(qǐng)內(nèi)容,分類申報(bào)類型,審批是否可行,然后以信函等方式把審批結(jié)果反饋給申報(bào)人。這些看似簡(jiǎn)單的工作,當(dāng)申報(bào)項(xiàng)目越來越多的時(shí)候,會(huì)既浪費(fèi)人力又浪費(fèi)時(shí)間。用網(wǎng)絡(luò)實(shí)現(xiàn)這些功能是簡(jiǎn)單可行的,可以大大節(jié)省人力資源,同時(shí)具有高效性,使申報(bào)周期縮短,并且給申報(bào)人提供網(wǎng)絡(luò)瀏覽,網(wǎng)上申請(qǐng)等更多的方便,使申報(bào)變的簡(jiǎn)單。 2.1.3 操作可行性 自從我國(guó)正式接入互聯(lián)網(wǎng)以來,短短的數(shù)年時(shí)間內(nèi),互聯(lián)網(wǎng)在我國(guó)得到了飛速的發(fā)展。據(jù)中國(guó)互聯(lián)網(wǎng)信息中心(CNNIC)調(diào)查顯示,我國(guó)上網(wǎng)用戶人數(shù)每半年都以超過50%的速度增長(zhǎng)[18]。人們?cè)诰W(wǎng)上不僅進(jìn)行購(gòu)物、交流等一系列娛樂活動(dòng),而且還在網(wǎng)上

32、開展工作,如科研申報(bào)、科研審批等??蒲谐晒陥?bào)管理系統(tǒng)的操作界面簡(jiǎn)潔明了,對(duì)不同的用戶進(jìn)行了精細(xì)的功能模塊劃分。不同的用戶在登陸系統(tǒng)后,無(wú)需進(jìn)行再進(jìn)一步的操作,相應(yīng)的功能菜單就可以在界面上完全的顯示。這些都有助于進(jìn)行第一次申報(bào)工作的申報(bào)員操作。 2.2 系統(tǒng)功能分析 通過前面的系統(tǒng)分析,確定科研成果申報(bào)管理系統(tǒng)應(yīng)該具有6大功能,分別是成果管理、課題管理、成果申報(bào)、課題申報(bào)、修改個(gè)人信息和公共查詢。下面將針對(duì)系統(tǒng)需要實(shí)現(xiàn)的功能進(jìn)行簡(jiǎn)單的介紹。 科研成果申報(bào)管理系統(tǒng)的功能結(jié)構(gòu)圖如圖2-1所示。 圖2-1系統(tǒng)的功能結(jié)構(gòu) 系統(tǒng)在各項(xiàng)需求分析、

33、系統(tǒng)分析和數(shù)據(jù)庫(kù)設(shè)計(jì)都完成后,下一步根據(jù)這個(gè)系統(tǒng)的特點(diǎn)確定系統(tǒng)的開發(fā)模式。通過對(duì)這個(gè)系統(tǒng)的分析可知,科研成果申報(bào)管理系統(tǒng)是完成對(duì)申報(bào)項(xiàng)目以及申報(bào)人員信息的具體操作。因此,本系統(tǒng)準(zhǔn)備采用JSP+JavaBean的開發(fā)模式進(jìn)行開發(fā)。 2.3 操作流程 科研成果申報(bào)管理系統(tǒng)面向兩種對(duì)象:申報(bào)員和審批員,兩者之間通過分配的權(quán)限ID和密碼區(qū)分。當(dāng)用戶以申報(bào)員身份登錄后,可以選擇成果申報(bào)、查詢成果申報(bào)、修改個(gè)人信息、課題申報(bào)、查詢課題申報(bào)等功能;當(dāng)以審核員身份登錄后,可以對(duì)未入庫(kù)課題及未入庫(kù)成果進(jìn)行審核,可以查詢已入庫(kù)課題、已入庫(kù)成果以及添加、刪除用戶信息。科研成果申報(bào)系統(tǒng)的操作流程如圖2-2所示。

34、 圖2-2 系統(tǒng)的操作流程 2.4 小結(jié) 在系統(tǒng)分析中,首先根據(jù)引言部分的需求分析,明確開發(fā)技術(shù)平臺(tái),分析技術(shù)下經(jīng)濟(jì)下和操作上的可行性,確定系統(tǒng)的綜合功能需求。接著明確開發(fā)系統(tǒng)的開發(fā)模式為jsp配合使用javabean,通過對(duì)系統(tǒng)做出可行性分析是為了完整可靠地按照既定目標(biāo)來開發(fā)系統(tǒng),是系統(tǒng)開發(fā)的必須過程。 3. 系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 3.1 功能模塊介紹 科研成果申報(bào)管理系統(tǒng)主要完成科研人員遠(yuǎn)程申報(bào)、審批員對(duì)申報(bào)項(xiàng)目的審批和公共查詢功能?;谝陨闲枨蠓治?,可將系統(tǒng)分為以下三個(gè)功能模塊: (1)科研項(xiàng)目申報(bào)模塊:

35、是為申報(bào)人員提供遠(yuǎn)程申報(bào)的窗口,可以分為科研成果申報(bào)和科研課題申報(bào),由申報(bào)員登錄、成果申報(bào)、課題申報(bào)、修改個(gè)人信息、查詢成果申報(bào)、詢課題申報(bào)等6部分組成。 (2)科研項(xiàng)目審批模塊:是審批人員對(duì)遠(yuǎn)程申報(bào)的項(xiàng)目可以進(jìn)行審核確認(rèn),該模塊包括審批員的登錄、未入庫(kù)課題、已入庫(kù)課題、未入庫(kù)成果、已入庫(kù)成果、查詢用戶信息、添加用戶信息7個(gè)部分。 (3)公共查詢模塊:該模塊包括課題關(guān)鍵字查詢、成果內(nèi)容查詢2部分。 3.2系統(tǒng)主界面設(shè)計(jì) 科研成果申報(bào)管理系統(tǒng)主界面如圖3-1所示。 圖3-1 系統(tǒng)的主界面 科研成果申報(bào)管理系統(tǒng)面向兩類人,一類是申報(bào)科研課題或者科研成果的申報(bào)員,另一類是審批科研

36、課題或者科研成果的審批員,他們分配的權(quán)限各不相同。當(dāng)申報(bào)員登錄首頁(yè)時(shí),點(diǎn)擊“科研申報(bào)”,進(jìn)入科研申報(bào)的界面,然后進(jìn)行科研課題或者科研成果申報(bào)。如果是審批員登錄首頁(yè),則使用“科研審批”功能。而“信息查詢”功能可以查詢存儲(chǔ)在數(shù)據(jù)庫(kù)中的所有信息,對(duì)權(quán)限沒有要求。 3.3 科研申報(bào)功能 科研申報(bào)頁(yè)面的設(shè)計(jì)采用HTML網(wǎng)頁(yè)設(shè)計(jì)中的幀組框架功能,把整個(gè)頁(yè)面分為三個(gè)框架:頂部,左下部,右下部。頂部用來顯示系統(tǒng)標(biāo)題以及返回首頁(yè)功能。左下部用來顯示用戶具體功能的鏈接。右下部用來作為主顯示界面,每當(dāng)點(diǎn)擊具體鏈接時(shí),鏈接的內(nèi)容就會(huì)顯示在這個(gè)框架界面中。 科研申報(bào)模塊是一個(gè)可以完全獨(dú)立運(yùn)行的子系統(tǒng),由申報(bào)員登錄

37、,成果申報(bào),課題申報(bào),修改個(gè)人信息,查詢成果申報(bào),查詢課題申報(bào)等6部分組成。 科研申報(bào)頁(yè)面設(shè)計(jì)如圖3-2所示。 圖3-2 科研申報(bào)頁(yè)面 3.3.1 申報(bào)員登錄 申報(bào)員登錄是申報(bào)員通過審批員取得申報(bào)員的權(quán)限ID和密碼,申報(bào)員輸入ID和密碼就可進(jìn)行登錄。當(dāng)用戶單擊科研成果申報(bào)管理系統(tǒng)首頁(yè)的“科研申報(bào)”就會(huì)鏈接到申報(bào)員登錄窗口,該頁(yè)面的設(shè)計(jì)如圖3-3所示。 圖3-3 申報(bào)員登錄 在登錄窗口中為了減少輸入的誤差和防止其他人非法登錄,在登錄窗口中對(duì)輸入文本框中的信息進(jìn)行判斷,檢驗(yàn)輸入的信息不能為空。登錄界面中的函數(shù)check()代碼如下: function check(){

38、 alert("請(qǐng)輸入你的登錄名稱"); return false;} alert("請(qǐng)輸入你的密碼"); return false;}} 當(dāng)用戶輸入空白信息時(shí),check()函數(shù)調(diào)用方法alert()輸出相對(duì)應(yīng)的反饋信息,并調(diào)用focus()方法使當(dāng)前的文本框獲得焦點(diǎn)。為了使計(jì)算機(jī)能夠識(shí)別用戶的合法性,判斷申報(bào)員ID和密碼是否有效,當(dāng)填入申報(bào)員ID和密碼不為空時(shí),單擊“登錄”按鈕,系統(tǒng)自動(dòng)從數(shù)據(jù)庫(kù)人員信息表中判斷是否存在相同的申報(bào)員ID和密碼,如果有則進(jìn)入系統(tǒng),如果不存在則提示用戶名或密碼有錯(cuò)誤,在程序中上述功能是有check.jsp實(shí)現(xiàn)的,關(guān)鍵代碼如

39、下。 Condb con=new Condb(); //創(chuàng)建一個(gè)連接數(shù)據(jù)庫(kù)的對(duì)象 Show show=new Show(); //創(chuàng)建一個(gè)系統(tǒng)提示出錯(cuò)頁(yè)面的對(duì)象 //內(nèi)置對(duì)象request調(diào)用getParameter()方法獲得頁(yè)面框中的信息 String name=request.getParameter("name"); String password=request.getParameter("password"); String sql="select * from tb_Person where Username='"+name+"' and Password=

40、'"+password+"'"; //定義查找語(yǔ)句sql //連接對(duì)象con調(diào)用executeQuery()方法實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的操作,并將操作結(jié)果返回給一個(gè)結(jié)果集rs ResultSet rs=con.executeQuery(sql); if(rs.next()){ //將游標(biāo)移動(dòng)到下一行 String strsql=rs.getString(1); //內(nèi)置對(duì)象session調(diào)用方法setAttribute將信息添加到session對(duì)象中 session.setAttribute("name",name); session.setAttribute

41、("password",password); session.setAttribute("groupid",strsql); response.sendRedirect("index.htm"); //跳轉(zhuǎn)到index.htm頁(yè)面 }else{ out.print(show.errorBox("你輸入的用戶名或密碼有誤","錯(cuò)誤信息")); out.close();} con.close(); //關(guān)閉與數(shù)據(jù)庫(kù)的連接 Check.jsp的功能是對(duì)用戶輸入的ID和密碼進(jìn)行檢查。數(shù)據(jù)庫(kù)連接對(duì)象con調(diào)用方法executeQuery()實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的操作,并將操作結(jié)果

42、返回一個(gè)結(jié)果集rs,然后調(diào)用next()方法順序讀取rs中的內(nèi)容。一個(gè)結(jié)果集最初將游標(biāo)定位在第一行的前面,第一次調(diào)用next()方法使游標(biāo)移動(dòng)到rs的第一行,next()方法返回一個(gè)boolean型數(shù)據(jù),當(dāng)游標(biāo)移動(dòng)到最后一行之后返回false。如果輸入有錯(cuò)誤,則系統(tǒng)調(diào)用類Show的方法提示錯(cuò)誤頁(yè)面。類Show是能提示錯(cuò)誤頁(yè)面的JavaBean。把提示錯(cuò)誤頁(yè)面的功能寫成JavaBean,在每次需要提示出錯(cuò)信息時(shí),就調(diào)用這個(gè)JavaBean,這樣能夠提高系統(tǒng)運(yùn)行的效率,減少代碼的長(zhǎng)度。 3.3.2 課題和成果申報(bào) 當(dāng)申報(bào)登錄成功后系統(tǒng)進(jìn)入科研成果申報(bào)首頁(yè),如果要申報(bào)新項(xiàng)目就可以單擊“成果申報(bào)”

43、或者“課題申報(bào)”進(jìn)入相關(guān)的申報(bào)頁(yè)面。 科研成果申報(bào)頁(yè)面的設(shè)計(jì)如圖3-4所示。 圖3-4 科研成果申報(bào) 科研課題申報(bào)頁(yè)面設(shè)計(jì)如圖3-5所示。 3-5 科研課題申報(bào) 為了確保申報(bào)科研項(xiàng)目的唯一性,在數(shù)據(jù)表單提交時(shí)就對(duì)數(shù)據(jù)表中申報(bào)的項(xiàng)目名稱進(jìn)行驗(yàn)證。如果有相同的名稱,提示用戶此科研科目已經(jīng)申報(bào),否則提示申報(bào)成功。用戶輸入完相關(guān)信息后單擊“填報(bào)存盤”按鈕,就會(huì)提交到文件名為check.jsp頁(yè)面中。關(guān)鍵代碼如下。 Str sterr=new Str(); //創(chuàng)建一個(gè)Str的對(duì)象 Condb con=new Condb(); //創(chuàng)建一個(gè)連接數(shù)據(jù)庫(kù)的對(duì)象 String re

44、sultform=request.getParameter("resultform"); String resultname=request.getParameter("resultname"); String resultword=request.getParameter("resultword"); …… int temp=0; int inttemp=0; String sql="select Resultname from tb_Result where Resultname='"+resultname+"'"; //判斷

45、是否有相同的項(xiàng)目 //數(shù)據(jù)庫(kù)連接對(duì)象con調(diào)用方法executeQuery()對(duì)數(shù)據(jù)庫(kù)進(jìn)行添加操作 ResultSet rs=con.executeQuery(sql); if(rs.next()){ //游標(biāo)移動(dòng)到rs中的第一行,每調(diào)用一次next()方法,游標(biāo)向下移動(dòng)一行 inttemp=0; out.print(“此成果已經(jīng)立項(xiàng)你不能申報(bào)!”); }else{ Stringstr="insertintotb_Result(Resultform,Resultname,Resultword,Resultnum,Subject,Resultype,Resultl

46、an,Dattime,Workname,Test,Demo,Result,Province,keyid,Text,Booker,Publish)values('"+resultform+"','"+resultname+"','"+resultword+"','"+resultnum+"','"+subject+"','"+resultype+"','"+resultLan+"','"+dattime+"','"+workname+"','"+test+"','"+Demo+"','"+0+"','"+province+"','"+key+"','"+textID+"','"+booker+"

47、','"+publish+"')"; temp=con.executeUpdate(str); // 定義更新數(shù)據(jù)庫(kù)語(yǔ)句 strsql ,session調(diào)用方法getAttribute()取出保存在會(huì)話中的值 String strsql="insert into tb_Con(GroupId,TaskRname) values('"+session.getAttribute("groupid")+"','"+resultname+"')"; con.executeUpdate(strsql); }if(temp>0){ out.print(“申報(bào)成功!”);} i

48、f(temp<0){ out.print(“系統(tǒng)故障請(qǐng)稍后重新來過!”);} con.close(); 由于用戶在申報(bào)項(xiàng)目時(shí),填寫的信息都是中文字符,所以在設(shè)計(jì)時(shí)必須創(chuàng)建一個(gè)處理中文字符亂碼的對(duì)象steer。當(dāng)獲得用戶所申報(bào)項(xiàng)目的具體信息時(shí),定義一條檢查數(shù)據(jù)庫(kù)中是否具有相同項(xiàng)目的sql語(yǔ)句。數(shù)據(jù)庫(kù)連接對(duì)象con調(diào)用方法executeQuery()對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,并返回一個(gè)ResultSet對(duì)象rs,這樣就對(duì)用戶輸入的申報(bào)項(xiàng)目名稱進(jìn)行了判斷。如果申報(bào)的項(xiàng)目在數(shù)據(jù)庫(kù)中已經(jīng)存在,系統(tǒng)會(huì)提示用戶不能申報(bào)此項(xiàng)目,否則對(duì)象con調(diào)用方法executeUpdate()對(duì)數(shù)據(jù)庫(kù)中的信息進(jìn)行更新,并返

49、回一個(gè)temp值。然后對(duì)temp的值進(jìn)行判斷,如果temp>0,則out對(duì)象調(diào)用方法print()輸出項(xiàng)目申報(bào)成功的信息。在對(duì)數(shù)據(jù)庫(kù)進(jìn)行完操作后,關(guān)閉與數(shù)據(jù)庫(kù)的連接。 3.3.3 修改個(gè)人信息 由于管理員在為用戶分配完權(quán)限后,不可能對(duì)用戶個(gè)人信息進(jìn)行詳細(xì)的錄入,所以在每一個(gè)用戶登錄本系統(tǒng)時(shí)推薦用戶首先修改個(gè)人信息然后再進(jìn)行申報(bào)。這樣可以防止他人非法盜用,給工作帶來不必要的麻煩。當(dāng)用戶正常登錄后,單擊“修改個(gè)人信息”鏈接,系統(tǒng)會(huì)自動(dòng)從人員信息表中取出相應(yīng)的個(gè)人信息顯示在頁(yè)面中。 修改個(gè)人信息頁(yè)面運(yùn)行結(jié)果如圖3-6所示。 圖3-6 修改個(gè)人信息 當(dāng)用戶輸入完個(gè)人信息后,單擊“提交”按鈕把

50、用戶填的基本信息更新到人員信息表中,文件名為Putin.jsp。關(guān)鍵代碼如下: Condb con=new Condb();//定義一個(gè)數(shù)據(jù)庫(kù)連接對(duì)象 //內(nèi)置對(duì)象request調(diào)用getParameter()讀取個(gè)人信息框中的信息 String Username=request.getParameter("Username"); String Password=request.getParameter("Password"); ……… StringStrupd="updatetb_personsetUsername='"+User

51、name+"',Password='"+Password+"',Office='"+Office+"',Name='"+Name+"',Age='"+Age+"',Business='"+Business+"',Post='"+Post+"',Datetime='"+Dattime+"',Bio='"+Bio+"'whereUsername='"+session.getAttribute("name")+"'"; //定義數(shù)據(jù)庫(kù)更新語(yǔ)句Strupd //數(shù)據(jù)庫(kù)連接對(duì)象con調(diào)用方法executeUpdate()對(duì)數(shù)據(jù)庫(kù)中的信息進(jìn)行更新int temp=con.executeUpdate(S

52、trupd); if(temp==1){ alert("數(shù)據(jù)更新成功");} 修改登錄人員的信息時(shí),數(shù)據(jù)庫(kù)連接對(duì)象con調(diào)用方法executeUpdate()對(duì)數(shù)據(jù)庫(kù)中相對(duì)應(yīng)的數(shù)據(jù)表中的數(shù)據(jù)進(jìn)行操作,操作完成后返回一個(gè)temp數(shù)值。當(dāng)temp==1時(shí),executeUpadte執(zhí)行,說明已經(jīng)存在個(gè)人信息數(shù)據(jù),可以更新,并調(diào)用用alert()方法輸出數(shù)據(jù)更新成功的提示信息;反之,個(gè)人信息不存在無(wú)法進(jìn)行數(shù)據(jù)更新操作。 3.3.4 查詢成果或課題申報(bào) 科研成果申報(bào)成功后,可以在一段時(shí)間內(nèi)查詢審批后的結(jié)果,也可以根據(jù)成果的名稱進(jìn)行查詢,查詢成果入庫(kù)情況的運(yùn)行結(jié)果如圖3-7所示。 圖3-

53、7 查詢成果入庫(kù)情況 課題的入庫(kù)查詢與成果查詢相類似,運(yùn)行結(jié)果如圖3-8所示。 圖3-8 查詢課題入庫(kù)情況 用戶可以根據(jù)成果的名稱進(jìn)行查詢也可以模糊查詢某一時(shí)間段內(nèi)的成果入庫(kù)情況,利用SQL語(yǔ)句中的關(guān)鍵字“between and”和“or”對(duì)成果入庫(kù)情況進(jìn)行選擇性判斷查詢。當(dāng)輸入合法的相關(guān)信息后,單擊“提交”按鈕,就會(huì)把信息提交到文件為resultsql.jsp頁(yè)面中。關(guān)鍵代碼如下: Condb con=new Condb(); String datetime=request.getParameter("datetime"); String dattime=reque

54、st.getParameter("dattime"); String resultname=request.getParameter("resultname"); //利用SQL語(yǔ)句中的關(guān)鍵字“between and”和“or”進(jìn)行選擇性判斷查詢 String sql="select * from tb_Result where Dattime between '"+datetime+"' and '"+dattime+"' or Resultname like '%"+resultname+"%'"; //數(shù)據(jù)庫(kù)連接對(duì)象con調(diào)用方法executeQuery()查詢數(shù)據(jù)庫(kù),

55、并將結(jié)果返回給Result對(duì)象rs ResultSet rs=con.executeQuery(sql); int num=0; while(rs.next()){ num++; String str=rs.getString(12);//讀取標(biāo)識(shí)符,判斷項(xiàng)目是否入庫(kù) if(str.equals("0")) out.println("否"); if(str.equals("1")) out.println("是"); 在采用日期查詢成果中,我們用getDate()方法提取日期型數(shù)據(jù),用equals()方法比較字符串是否相等,判斷該項(xiàng)目是否已入庫(kù),如值等

56、于“0”,表示該項(xiàng)目未入庫(kù),如值等于“1”,則表示該項(xiàng)目已入庫(kù)。課題查詢的源代碼與成果查詢的源代碼相類似,在這里就不作重復(fù)的解釋。 3.4 科研審批功能 科研審批模塊是對(duì)科研項(xiàng)目的審核,評(píng)估申報(bào)的科研項(xiàng)目是否具有入庫(kù)上報(bào)的可能性,科研審批模塊包括:審批員登錄、未入庫(kù)課題及成果、已入庫(kù)課題及成果、查詢用戶信息、添加用戶信息7部分??蒲袑徟?yè)面通過點(diǎn)擊主頁(yè)可研審批標(biāo)簽進(jìn)入審批員登陸頁(yè)面。 3.4.1 審批員登錄 審批員由于身份的特殊性可以用雙重身份登錄申報(bào)系統(tǒng)和審批系統(tǒng),審批員可以對(duì)申報(bào)員申報(bào)的科研項(xiàng)目進(jìn)行審核。用戶在首頁(yè)中單擊“科研審批”超鏈接,就會(huì)打開審批員登錄頁(yè)面,頁(yè)面顯示如

57、3-9圖所示。 圖3-9 審批員登錄 審批員輸入身份ID和密碼后單擊“提交”按鈕,就會(huì)把信息提交到身份驗(yàn)證頁(yè)面,審批員和申報(bào)員的登錄流程是類似的,在這里不作過多的介紹。唯一的區(qū)別在與權(quán)限設(shè)置的不同,審批員的權(quán)限設(shè)置為“1”,而申報(bào)員的權(quán)限設(shè)置為“0”,所以在驗(yàn)證頁(yè)面中,需要對(duì)用戶的權(quán)限進(jìn)行判斷,關(guān)鍵代碼如下: Condb con=new Condb(); Show show=new Show();//定義一個(gè)能提示錯(cuò)誤頁(yè)面JavaBean的對(duì)象 String name=request.getParameter("name");//讀取用戶輸入的ID String passwo

58、rd=request.getParameter("password");//讀取用戶輸入的密碼 String sql="select * from tb_Person where Username='"+name+"' and Password='"+password+"'";//定義查詢語(yǔ)句sql,判斷輸入的用戶名和密碼是否正確 ResultSet rs=con.executeQuery(sql); //將查詢結(jié)果返回給一個(gè)結(jié)果集rs if(rs.next()){ int str=rs.getInt(11); if(str==1){ //判斷登錄的用戶權(quán)限是否為1

59、 response.sendRedirect("index.htm"); //跳轉(zhuǎn)到index.htm頁(yè)面 }else{ out.print(show.errorBox("非法的管理員名請(qǐng)不要登錄","錯(cuò)誤信息")); out.close();} }else{ alert("用戶名或密碼錯(cuò)誤"); history.back();} //返回上一頁(yè) con.close();//關(guān)閉與數(shù)據(jù)庫(kù)的連接 3.4.2 未入庫(kù)的課題及成果查詢 審批員登錄后,單擊審核模塊首頁(yè)左側(cè)的“未入庫(kù)課題”或“未入庫(kù)成果”超鏈接,進(jìn)入未入庫(kù)課題或未入庫(kù)成果查詢頁(yè)面,未入庫(kù)課題查詢界面如

60、圖3-10所示。 圖3-10 未入庫(kù)課題 未入庫(kù)成果查詢界面如圖3-11所示。 圖3-11 未入庫(kù)成果 入庫(kù)課題與未入庫(kù)課題是由數(shù)據(jù)表中的一個(gè)字段標(biāo)識(shí)的,當(dāng)此字段的值為“0”時(shí),表示該課題已經(jīng)審批;如果字段的值為“1”,則表示還未被審批。根據(jù)這個(gè)原理,利用SQL語(yǔ)句對(duì)數(shù)據(jù)表進(jìn)行檢索,并將結(jié)果集以表格形式順次顯示在頁(yè)面中。關(guān)鍵代碼如下: int num=0; Condb con=new Condb(); //定義一個(gè)數(shù)據(jù)庫(kù)連接對(duì)象con String sql="select * from tb_Task where Whether='"+0+"'"; //查詢字

61、段值是“0”的標(biāo)識(shí)字段 ResultSet rs=null; //定義一個(gè)結(jié)果集rs rs=con.executeQuery(sql); //將查詢結(jié)果返回給結(jié)果集rs while(rs.next()){ String temp=rs.getString(2); num++; 審批員在得到未入庫(kù)課題或未入庫(kù)成果列表時(shí),可以決定是否刪除該課題或成果。如果需要?jiǎng)h除該項(xiàng)目,可以點(diǎn)擊頁(yè)面最后的“刪除”,則頁(yè)面會(huì)自動(dòng)鏈接至 “deltask.jsp”或“delresult.jsp”中,執(zhí)行該刪除操作。 在未入庫(kù)的課題頁(yè)面中,會(huì)為每個(gè)課題設(shè)置一個(gè)超鏈接,單擊超鏈接會(huì)打開該課題對(duì)應(yīng)的

62、申報(bào)詳細(xì)信息,頁(yè)面顯示結(jié)果如圖3-12所示。 圖3-12 課題申報(bào)詳細(xì)信息 在詳細(xì)瀏覽課題的申報(bào)詳單后,就可以審核當(dāng)前的課題是否具有立項(xiàng)入庫(kù)的條件。如果具備,將下方“是否入庫(kù)”復(fù)選框選中,以表示審核通過,該課題可以進(jìn)入已入庫(kù)課題行列。系統(tǒng)更新數(shù)據(jù)庫(kù)的操作是由復(fù)選框狀態(tài)的變化引發(fā)的。關(guān)鍵代碼如下: Condb con=new Condb(); //創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)連接對(duì)象con String str=request.getParameter("Numbic"); out.println(str); String choose=request.getParameter("choo

63、se"); //獲取"choose"中的值 String sql=""; if(choose.equals("on")){ //比較choose的值,判斷項(xiàng)目是否被選中 sql="update tb_Task set Whether=1 where Taskname='"+str+"'";} int temp=con.executeUpdate(sql);//將數(shù)據(jù)庫(kù)更新結(jié)果返回給temp值 if(temp>0){ response.sendRedirect("taskedit.jsp");//轉(zhuǎn)到taskedit.jsp頁(yè)面 }else{ out.p

64、rintln("數(shù)據(jù)庫(kù)產(chǎn)生錯(cuò)誤請(qǐng)與系統(tǒng)統(tǒng)管理員聯(lián)系");} 上述代碼中,equals(“on”)是判斷語(yǔ)句,用來判斷復(fù)選框的狀態(tài)。因?yàn)閺?fù)選框默認(rèn)的選中值是“on”,沒有被選中時(shí)默認(rèn)值為空。如果復(fù)選框被選中,則內(nèi)置對(duì)象respsnse調(diào)用方法sendRedirect()轉(zhuǎn)向“taskedit.jsp”頁(yè)面,將項(xiàng)目添加進(jìn)已入庫(kù)課題或已入庫(kù)成果表單中。 3.4.3 查看用戶信息 為了便于各科研機(jī)構(gòu)人員變動(dòng),各審批員均有權(quán)利瀏覽、刪除其他人員信息。審批員成功登錄后,單擊審批模塊首頁(yè)左側(cè)的“查看用戶信息”超鏈接,進(jìn)入查看用戶信息界面,運(yùn)行結(jié)果如圖3-13所示。 圖3-13 科研人員詳細(xì)信息

65、 如果某科研機(jī)構(gòu)人員發(fā)生變動(dòng),該機(jī)構(gòu)的審批員便可以通過單擊變動(dòng)人員對(duì)應(yīng)記錄后面的“刪除” ,然后鏈接“deluser.jsp” 將其刪除。此處主要運(yùn)用了SQL語(yǔ)言中的Delete命令。關(guān)鍵代碼如下: Str str=new Str(); Condb con=new Condb(); String temp=str.toChinese(request.getParameter("temp"));//讀取temp,并把它轉(zhuǎn)換成中文字符 String tem="select * from tb_Person where Uername='"+temp+"'"; String sq

66、l="delete from tb_Person where Username='"+temp+"'"; int te=con.executeUpdate(sql);//對(duì)數(shù)據(jù)庫(kù)操作完成后返回一個(gè)int值te if(te<0){ //如果te<0,則輸出下面的提示語(yǔ)句 out.println("數(shù)據(jù)庫(kù)錯(cuò)誤請(qǐng)與系統(tǒng)管理員聯(lián)系"); }else{ response.sendRedirect("Uparticular.jsp");} //轉(zhuǎn)向Uparticular.jsp con.close(); //關(guān)閉數(shù)據(jù)庫(kù)連接 3.4.4 添加用戶信息 審批員單擊科研審批頁(yè)面中“添加用戶信息”超鏈接,即可打開添加用戶信息頁(yè)面。該頁(yè)面主要是完成新加入到科研機(jī)構(gòu)的人員基本信息的初始化工作,新加入的科研人員可以通過分配的權(quán)限使用科研成果申報(bào)管理系統(tǒng)。運(yùn)行結(jié)果如圖3-14所示。 圖3-14 添加用戶信息 在信息填寫完成后,審批員單擊“添加”按鈕后,將相應(yīng)的信息數(shù)據(jù)表單提交到Ucheck.jsp頁(yè)面中。關(guān)鍵代碼如下: Condb con=new Condb();//創(chuàng)

展開閱讀全文
溫馨提示:
1: 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!