版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 摘 要</b></p><p> 學(xué)分制已成為各大院校管理學(xué)生中不可或缺的一部分,在重多高校中得到了廣泛的應(yīng)用??偟恼f來,學(xué)分制就是通過集中學(xué)生的文化課程以及相應(yīng)的考勤信息等,對學(xué)生的綜合素質(zhì)進行評定。實現(xiàn)學(xué)生考勤系統(tǒng)現(xiàn)代化的根本途徑是信息化、系統(tǒng)化。學(xué)生考勤管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應(yīng)用程序的開發(fā)兩
2、個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的庫。而對于后者則要求。</p><p> 應(yīng)用程序功能完備,易使用等特點。</p><p> 經(jīng)過分析,我們使用 sun Microsystems公司的 jsp技術(shù)進行開發(fā), 利用Eclipse提供的MyEclipse面向?qū)ο蟮拈_發(fā)工具.其方便快捷的多窗口界面,控制臺異常報錯,等功能簡化了開發(fā)時間,通過插件機制來靈活地構(gòu)件開
3、發(fā)環(huán)境。從而在短時間內(nèi)建立系統(tǒng)應(yīng)用原型,然后對初始原型系統(tǒng)進行需求迭代,不斷修正和改進,直到形成用戶滿意的可行系統(tǒng)。</p><p> 整個系統(tǒng)從符合操作簡便、界面友好、靈活、實用、安全的要求出發(fā),完成考勤信息管理的全過程,包括每個考勤事件,例如事假、病假、遲到、早退、缺席及其他有價值的考勤信息分配一個唯一的考勤編號,并根據(jù)此編碼在計算機中建立固定資產(chǎn)信息庫,對考勤信息的錄入、修改、刪除、統(tǒng)計等進行管理,使管理
4、人員可對學(xué)生的具體信息(或模糊信息)向進行跟蹤,隨時掌握某個(些)學(xué)生、某個(些)班級、某個(些)系部的具體考勤情況,減少考勤記錄丟失現(xiàn)象,解決查找、統(tǒng)計困難等問題,提高管理人員的工作效率。因此,開發(fā)這樣一套管理軟件成為很有必要的事情,在下面的各章中我們將以開發(fā)一套學(xué)生考勤管理系統(tǒng)為例,談?wù)勂溟_發(fā)過程和所涉及到的問題及解決方法。</p><p> 在系統(tǒng)開發(fā)中我們使用MyEclipse插件控件, MS的JDBC
5、驅(qū)動,連接MS SQL Server2000數(shù)據(jù)庫,將存在數(shù)據(jù)庫的信息通過界面顯示出來,并進行修改,查詢等操作。</p><p> 關(guān)鍵字:JSP、MyEclipse、Tomcat、SQL Server。</p><p><b> ABSTRACT</b></p><p> The credit system has become eac
6、h great college management student to win necessary of a part, got an extensive application in the much more heavy high school.Always say that come, the credit system is the cultural course which passes to gather a high
7、school student and correspond of test frequently an information etc., carry on assess to the student's comprehensive character.The basic path which carries out a student to test frequently a system modernization is f
8、requentlyinformation-based and s</p><p> The applied procedure function is complete, easy usage etc. characteristics.</p><p> Through analysis, the sun Microsystems of our usage's jsp tech
9、nique of the company carries on a development, make use of the Eclipse provide of the MyEclipse face to the development tool of object.Its convenience is fast of many window way interface, control pedestal the abnormalit
10、y report be wrong, wait function to simplify development time and pass a plug-in mechanism come vividly Gou piece development environment.Build up system application prototype in the in a short time thus, then start pr&l
11、t;/p><p> The whole system from match an operation simple, interface amity, vivid, practical, safety of the request set out and complete to test frequently information management of whole processes, include ea
12、ch one to test frequently affairs, for example personal leave, sick leave, be late, leave early, absence and other worthy test frequently an information to assign 1 uniquely tests frequently serial number, and according
13、to this coding is in the calculator build up a fixed assets information database,</p><p> The MyEclipse plug-in of our usage controls a piece in the system the development, the MS JDBC drive, the Server2000
14、 of the conjunction MS SQL database, pass the information of existence database's interface manifestation to come out, and carry on a modification, search etc. operation.</p><p> Key words: JSP, MyEclip
15、se, Tomcat, SQL Server.</p><p><b> 目錄</b></p><p><b> 一、實訓(xùn)任務(wù)書1</b></p><p><b> 二、任務(wù)分配表3</b></p><p><b> 三、開發(fā)進度表4</b>
16、</p><p><b> 四、需求分析5</b></p><p> 4.1可行性分析報告5</p><p><b> 4.2背景5</b></p><p> 4.3系統(tǒng)開發(fā)的重點與難點5</p><p> 4.4可行性分析6</p><
17、;p><b> 4.5結(jié)論6</b></p><p><b> 五、總體設(shè)計7</b></p><p><b> 5.1用例圖7</b></p><p><b> 5.2模塊圖7</b></p><p> 5.3功能模塊描述9&l
18、t;/p><p><b> 5.4流程圖:9</b></p><p> 5.5數(shù)據(jù)字典12</p><p><b> 六、詳細設(shè)計16</b></p><p> 6.1.1請假信息錄入16</p><p><b> 七、主要代碼17</b>
19、;</p><p> 7.1請假信息管理17</p><p> 7.1.1請假信息錄入17</p><p> 7.2出勤信息管理22</p><p> 7.2.1出勤信息錄入功能22</p><p> 7.2.2出勤信息維護24</p><p> 7.2.2.1出勤信息資料
20、查看24</p><p> 7.2.2.2授課表查看25</p><p><b> 八、個人總結(jié)28</b></p><p><b> 九、致謝信29</b></p><p><b> 十、參考資料30</b></p><p><
21、b> 一、實訓(xùn)任務(wù)書</b></p><p><b> 1.實訓(xùn)題目</b></p><p><b> 學(xué)生考勤系統(tǒng)</b></p><p><b> 2.題目來源</b></p><p> 職業(yè)技術(shù)學(xué)院計算機系網(wǎng)絡(luò)辦公 </p>
22、<p><b> 3.題目類型</b></p><p><b> 項目開發(fā)</b></p><p><b> 4.實訓(xùn)目標</b></p><p> 通過該綜合實訓(xùn)課程的有效組織與實施,學(xué)生應(yīng)該掌握的核心能力和關(guān)鍵能力有:</p><p><b>
23、 1.編寫代碼的能力</b></p><p> 2.編寫設(shè)計文檔的能力</p><p> 3.編寫測試文檔的能力</p><p><b> 4.團隊協(xié)作的能力</b></p><p> 5.學(xué)習(xí)新技術(shù)新工具的能力</p><p><b> 5.實訓(xùn)內(nèi)容</b
24、></p><p> 本次綜合實訓(xùn)的內(nèi)容主要是學(xué)生考勤系統(tǒng),在該系統(tǒng)中,圍繞計算機系教師辦公的需求主要完成以下幾個模塊的內(nèi)容: </p><p> 學(xué)生信息導(dǎo)入功能,數(shù)據(jù)備份功能,系書記請假信息維護功能,教師考勤信息維護功能,出勤信息統(tǒng)計功能,數(shù)據(jù)打印功能,基礎(chǔ)數(shù)據(jù)維護功能,權(quán)限管理功能等。</p><p><b> 6.實訓(xùn)環(huán)境</b&
25、gt;</p><p> 硬件環(huán)境:CPU :PIII以上,內(nèi)存:512MB以上,硬盤:40GB以上</p><p> 軟件環(huán)境:JAVA方向:IDE:eclipse3.2 ,JDK:jdk1.5,WEB服務(wù)器:tomcat5.0,PLUGIN: struct1.1,DBMS:SQL Server2000,開發(fā)軟件:CVS</p><p><b>
26、7.實訓(xùn)要求</b></p><p> ?。?)搭建好開發(fā)環(huán)境,測試后能穩(wěn)定運行;</p><p> ?。?)需要安裝殺毒軟件,防止病毒感染,影響項目開發(fā);</p><p> ?。?)項目開發(fā)需要團隊協(xié)作一起開發(fā),培養(yǎng)團隊精神;</p><p> ?。?)按時到指定的機房進行項目開發(fā);</p><p>
27、(5)編碼編程風(fēng)格要完全按照規(guī)定書寫;</p><p> ?。?)測試文檔要嚴格按照規(guī)定格式書寫;</p><p> ?。?)項目使用手冊要完全按照規(guī)定模版書寫;</p><p> (8)要按照老師的進度表保質(zhì)保量的完成階段開發(fā)任務(wù)。</p><p><b> 8.項目開發(fā)步驟</b></p><
28、p> ?。?)需求分析,掌握辦公自動化系統(tǒng)的各項業(yè)務(wù)流程;</p><p> ?。?)總體設(shè)計,完成整個系統(tǒng)的模塊架構(gòu);</p><p> ?。?)詳細設(shè)計,完成數(shù)據(jù)庫字典的設(shè)計;</p><p> ?。?)詳細設(shè)計,設(shè)計畫面及其處理說明;</p><p> ?。?)編寫代碼,按照規(guī)范書寫;</p><p>
29、(6)項目測試,按照規(guī)范書寫;</p><p> ?。?)撰寫使用手冊;</p><p> ?。?)上交項目源代碼、測試文檔和使用手冊。</p><p><b> 9.時間安排</b></p><p><b> 二、任務(wù)分配表</b></p><p><b>
30、 三、開發(fā)進度表</b></p><p><b> 四、需求分析</b></p><p> 4.1可行性分析報告</p><p> 我們小組的信息系統(tǒng)開發(fā)課程設(shè)計題目是:學(xué)生考勤管理系統(tǒng)。系統(tǒng)開發(fā)的總的設(shè)計目標是實現(xiàn)學(xué)生考勤管理的系統(tǒng)化、規(guī)范化和自動化,實現(xiàn)對學(xué)生的考勤信息進行集中統(tǒng)一的管理。</p><p
31、> 本系統(tǒng)主要實現(xiàn)對學(xué)生考勤信息的管理,主要功能為管理有關(guān)請假、出勤的信息等。本系統(tǒng)結(jié)構(gòu)分為請假信息管理模塊,出勤信息管理模塊,考勤考勤信息統(tǒng)計模塊,基礎(chǔ)數(shù)據(jù)管理模塊、權(quán)限管理模塊,數(shù)據(jù)導(dǎo)入模塊。請假信息管理部分有兩方面的功能,可以對請假信息進行錄入,可以對請假信息進行維護。出勤信息管理同樣也分為兩方面的功能,可以對出勤信息進行錄入,可以對出勤信息進行維護??记谛畔⒔y(tǒng)計主要完成對學(xué)生所有考勤信息的統(tǒng)計功能?;A(chǔ)數(shù)據(jù)管理可以顯示當(dāng)
32、前數(shù)據(jù)庫中的所有基礎(chǔ)數(shù)據(jù)信息,這些信息包括:教師授課表、教師資料、學(xué)生資料、班級資料、系部資料,可以對這些基礎(chǔ)數(shù)據(jù)進行維護。權(quán)限管理可以顯示數(shù)據(jù)庫中所有登錄帳號的分組情況,即“角色”,及每個“角色”的權(quán)限,可以對登錄帳號信息進行維護,數(shù)據(jù)導(dǎo)入可以從一個xls文件將其內(nèi)容導(dǎo)入到數(shù)據(jù)中??梢?,本系統(tǒng)并不復(fù)雜,主要解決的問題是利用關(guān)鍵字對數(shù)據(jù)庫進行查詢。</p><p><b> 4.2背景</b&
33、gt;</p><p> 近年來,隨著大學(xué)中學(xué)分制的普及,各高校對學(xué)生的考勤信息管理的要求日益嚴格,有關(guān)學(xué)生的各位考勤信息量也成倍增加,面對著龐大的信息量,傳統(tǒng)的人工方式管理會導(dǎo)致學(xué)分管理上的混亂,人力與物力過多浪費,在學(xué)生考勤管理上人力及精力的過度增加,從而使教務(wù)部的負擔(dān)過重,影響整個學(xué)生學(xué)分制準確性和公平性,因此,必須制定一套合理、有效,規(guī)范和實用的學(xué)生考勤管理系統(tǒng),對學(xué)生的考勤信息進行集中統(tǒng)一的管理。&l
34、t;/p><p> 另一方面,IT產(chǎn)業(yè)和Internet獲得了飛速發(fā)展,計算機應(yīng)用已滲透到了各個領(lǐng)域,引起信息管理的革命,實現(xiàn)了信息的自動化處理,提高了處理的及時性和正確性。</p><p> 學(xué)生考勤信息管理工作面對大量的可模塊化處理的信息,是當(dāng)今信息革命的一個重要陣地。我們小組開發(fā)學(xué)生考勤信息管理系統(tǒng)就是采用現(xiàn)代化的信息管理方式代替手工管理方式,提高學(xué)生學(xué)公制管理工作效率,作到信息的規(guī)
35、范管理,科學(xué)統(tǒng)計和快速查詢,讓學(xué)分制更快更準更好的為學(xué)校、學(xué)生服務(wù)。</p><p> 從以前的手工管理的記錄中我們可以發(fā)現(xiàn)這樣的問題:</p><p> ?、贆z索速度慢、效率低</p><p> 因為每學(xué)期學(xué)生的請假、遲到、早退、缺席等影響學(xué)生學(xué)生的考勤類問題數(shù)據(jù)量相當(dāng)龐大,將學(xué)生的各種考勤信息準確地分門別類,快速檢索,手工進行非常困難,往往是終于查到了所需學(xué)
36、生的考勤信息,但由于管理人員的精神疲勞等原因,導(dǎo)致學(xué)生的考勤信息被誤報,重報,導(dǎo)致學(xué)生的學(xué)分計算失去了準確性。學(xué)分制影響的院校與日劇增,這個問題也日漸突出。</p><p> ②登記、統(tǒng)計工作量大</p><p> 登記、統(tǒng)計頻率越大,說明學(xué)分制的影響作用越大,然而隨之而來的大量的登記、 統(tǒng)計等的處理,其工作量之大,往 往是人工操作所難以勝任的。而且經(jīng)常會出現(xiàn)這樣那樣的差錯。</
37、p><p> ?、劭记谛畔⒔y(tǒng)計工作難。</p><p> 學(xué)生的考勤信息應(yīng)根據(jù)學(xué)生的事先/事后說明及時更改學(xué)生的考勤記錄類型,然而由于學(xué)生考勤信息記錄量的增加,加上管理不嚴等原因,使學(xué)生的考勤統(tǒng)計工作難以及時完成,學(xué)生的學(xué)分的估量也就難以得到保證。</p><p> 4.3系統(tǒng)開發(fā)的重點與難點 </p><p> 系統(tǒng)出現(xiàn)了一些技術(shù)難點大致
38、如下:</p><p> 1、建立合理的表結(jié)構(gòu),避免數(shù)據(jù)冗余</p><p> 各表通過特定字段實現(xiàn)不同表的數(shù)據(jù)連接,避免數(shù)據(jù)冗余,需要設(shè)計簡潔高效的表結(jié)構(gòu)。</p><p> 2、建立相當(dāng)?shù)南到y(tǒng)安全性</p><p> 登錄用戶身份的驗證機制的設(shè)計、操作頁面的權(quán)限保護。</p><p> 3、建立嚴密的數(shù)據(jù)
39、表操作機制</p><p> 同一表有可能在多個模塊中被修改,所以嚴密的數(shù)據(jù)表操作機制的建立十分比較困難的,但也是必須的。除了設(shè)計時必須有相當(dāng)程度的考慮,在編制時更應(yīng)加強程序邏輯的可靠性和程序調(diào)試的全面性。</p><p><b> 4.4可行性分析</b></p><p><b> 1、技術(shù)可行性</b></
40、p><p> 此次信息系統(tǒng)開發(fā)是大學(xué)專業(yè)知識的一次綜合應(yīng)用與提高,我們小組可以使用個人電腦完成系統(tǒng)開發(fā)。組內(nèi)計算機配置肯定能滿足系統(tǒng)開發(fā)的要求。我們小組選用數(shù)據(jù)庫工具MS SQL SERVER 2000,應(yīng)用程序開發(fā)工具Eclipse 3.2,開發(fā)工具插件MyEcipse 5,Office程序組以及網(wǎng)絡(luò)傳輸工具。</p><p> 我們小組的成員均有計算機,配置是Pentium4 1.5G
41、,256M以上內(nèi)存,80G以上硬盤,可連網(wǎng)。小組成員之間可以通過QQ或電話進行即時交流,協(xié)調(diào)開發(fā)工作,解決開發(fā)工作中出現(xiàn)的問題。</p><p> 就技術(shù)力量來說,我們小組可以完成此次開發(fā)工作。開發(fā)過程中會出現(xiàn)許多問題,有我們預(yù)想之中的,也有一些沒有我們預(yù)想到,但,我們有信心克服一切困難。該學(xué)期,我們小組各成員已經(jīng)學(xué)習(xí)了SQL SERVER,對jsp網(wǎng)絡(luò)編程技術(shù)有一定的了解,有些成員熟悉計算機原理,能解決常見的
42、硬件故障和硬件選擇。目前,各種教務(wù)管理信息系統(tǒng)已得到了大量應(yīng)用,有許多可供參考的成功系統(tǒng)。而且,網(wǎng)上有許多關(guān)于jsp編程的資料和SQL SERVER方面的資料。 從技術(shù)角度考慮,此信息系統(tǒng)開發(fā)可行。</p><p><b> 2、經(jīng)濟可行性</b></p><p> 目標系統(tǒng)開發(fā)需求比較低,加上具有成熟的軟硬件環(huán)境,所以在軟硬件的支出上十分有限。而且,目標系統(tǒng)并不
43、是十分的復(fù)雜,開發(fā)的周期較短,人員經(jīng)濟支出有限。當(dāng)系統(tǒng)開發(fā)完實際運行后,將很大程度上提高計算機的功能,在為使用者帶來便利的同時,也為系統(tǒng)的進一步推廣創(chuàng)造了條件。這帶來的經(jīng)濟回報將遠超過支出,并且最重要的一點是該軟件的開發(fā)可以給我們對系統(tǒng)的開發(fā)有個全面的認識。從經(jīng)濟角度考慮,此信息系統(tǒng)開發(fā)可行。</p><p><b> 3、法律可行性</b></p><p> 法
44、律上可行整個系統(tǒng)由于是自行開發(fā),自行使用,所以系統(tǒng)本身不存在法律上的版權(quán)爭議。在服務(wù)器軟件方面,應(yīng)該使用正版軟件,因為整個系統(tǒng)盡管是開發(fā)給內(nèi)部使用,但它畢竟很多部分還是要依靠Internet的,一旦服務(wù)器連接到Internet上,它的操作系統(tǒng)可能會被Microsoft跟蹤,如果不是正版軟件,將不得不面臨民事訴訟的風(fēng)險。</p><p><b> 4.5結(jié)論</b></p>&
45、lt;p> 根據(jù)以上的可行性研究,我們小組認為開發(fā)此系統(tǒng)的條件已經(jīng)具備,可以開始進行開發(fā)。</p><p><b> 五、總體設(shè)計</b></p><p><b> 5.1用例圖</b></p><p><b> 5.2模塊圖</b></p><p><b&
46、gt; 5.3功能模塊描述</b></p><p> 系統(tǒng)共分六大模塊:請假信息管理、出勤信息管理、考勤信息統(tǒng)計、基礎(chǔ)數(shù)據(jù)管理、權(quán)限管理、數(shù)據(jù)導(dǎo)入。</p><p> 請假信息管理:請假信息管理部分有兩方面的功能,可以對請假信息進行錄入,可以對請假信息進行維護</p><p> 出勤信息管理:出勤信息管理同樣也分為兩方面的功能,可以對出勤信息進行
47、錄入,可以對出勤信息進行維護。</p><p> 考勤信息統(tǒng)計:考勤信息統(tǒng)計主要完成對學(xué)生所有考勤信息的統(tǒng)計功能。</p><p> 基礎(chǔ)數(shù)據(jù)管理:基礎(chǔ)數(shù)據(jù)管理可以顯示當(dāng)前數(shù)據(jù)庫中的所有基礎(chǔ)數(shù)據(jù)信息,這些信息包括:教師授課表、教師資料、學(xué)生資料、班級資料、系部資料,可以對這些基礎(chǔ)數(shù)據(jù)進行維護。</p><p> 權(quán)限管理:權(quán)限管理可以顯示數(shù)據(jù)庫中所有登錄帳號的
48、分組情況,即“角色”,及每個“角色”的權(quán)限,可以對登錄帳號信息進行維護。</p><p> 數(shù)據(jù)導(dǎo)入:數(shù)據(jù)導(dǎo)入可以從一個xls文件將其內(nèi)容導(dǎo)入到數(shù)據(jù)中,此模塊將估為一個小的子功能嵌入到基礎(chǔ)數(shù)據(jù)管理模塊中</p><p><b> 5.4流程圖:</b></p><p><b> 5.5數(shù)據(jù)字典</b></p&g
49、t;<p> 共涉及到9張表數(shù)據(jù)表:班級信息表、課程信息表、系部表、考勤信息表、登錄表、考勤教師信息表、教師授課信息表、學(xué)生信息表、用戶角色表</p><p> 班級信息表(T_Class):</p><p><b> 課程信息表</b></p><p><b> 系部表</b></p>
50、<p><b> 考勤信息表</b></p><p><b> 登錄表</b></p><p><b> 考勤教師信息表</b></p><p><b> 教師授課信息表</b></p><p><b> 學(xué)生信息表<
51、/b></p><p><b> 用戶角色表</b></p><p><b> 數(shù)據(jù)庫關(guān)系圖</b></p><p><b> 六、詳細設(shè)計</b></p><p><b> 6.1請假信息管理</b></p><p>
52、; 6.1.1請假信息錄入</p><p><b> ?。?)功能描述:</b></p><p> 該部分可以對一個學(xué)生進行請假登記操作,重復(fù)記錄將不被記錄</p><p><b> ?。?)畫面示例:</b></p><p><b> ?。?)操作說明:</b></
53、p><p> ?、俦緟^(qū)域功能為輸入數(shù)據(jù)庫中所對應(yīng)的學(xué)生學(xué)號,學(xué)生姓名,學(xué)生所在班組,三項數(shù)據(jù)必須相對應(yīng),如果有一項不對,請假信息就不能添加。</p><p> ?、谡埣偃掌谑褂萌掌诒磉x擇請假日期,日期會自動顯示在請假日期文本框中;</p><p> ?、壅埣僬n程為下拉列表選擇要請假課程,課程為所有專業(yè)學(xué)科的課程;</p><p> ?、苷埣俟?jié)數(shù)不
54、能大于結(jié)束課節(jié),彈出對話框提示登記課節(jié)錯誤;</p><p> ?、葸x擇請假的類型只能選擇一種類型不能重復(fù)選擇;按動提交銨鈕彈動對話框(如圖)</p><p> ?、拚埣傩畔⑻砑映晒棾鰧υ捒虿@示請假節(jié)數(shù),點示確定,請假信息添加成功。</p><p><b> 七、主要代碼</b></p><p><b>
55、 7.1請假信息管理</b></p><p> 7.1.1請假信息錄入</p><p> public ActionForward query_add(ActionMapping mapping, ActionForm form,</p><p> HttpServletRequest request, HttpServletResponse r
56、esponse) {</p><p> ArrayList depts=null;</p><p> ArrayList courses=null;</p><p> Date date=new Date();</p><p> depts=l.getDepts();</p><p> courses=l
57、.getCourses();</p><p> request.setAttribute("courses", courses);</p><p> request.setAttribute("depts", depts);</p><p> request.setAttribute("date",
58、date);</p><p> return mapping.findForward("leaves_add");</p><p><b> }</b></p><p> public ActionForward add(ActionMapping mapping, ActionForm form,</p>
59、<p> HttpServletRequest request, HttpServletResponse response) {</p><p> Leaves_editForm f=(Leaves_editForm)form;</p><p> String info=null;</p><p> bean.DutysBean d=new
60、 bean.DutysBean();</p><p> d.setStudent_id(f.getTxt_student_id().trim());</p><p> d.setLeave_date(f.getTxt_date().trim());</p><p> d.setLesson_from(f.getSlt_lesson_from());<
61、/p><p> d.setLesson_to(f.getSlt_lesson_to());</p><p> d.setType(f.getRdo_type().trim());</p><p> d.setStudent_class_name(f.getTxt_student_class().trim());</p><p> d.se
62、tStudent_name(f.getTxt_student_name().trim());</p><p> d.setCourse_id(f.getSlt_course().trim());</p><p> if(db.validate()!=null){</p><p> request.setAttribute("info", &
63、quot;連接數(shù)據(jù)庫初始化失敗");</p><p> return mapping.findForward("leave_back");</p><p><b> }</b></p><p> String sql=null;</p><p> info=l.add_info_ch
64、eck(d);</p><p> if(info!=null){</p><p> request.setAttribute("info", info);</p><p> return mapping.findForward("add_back");</p><p><b> }&l
65、t;/b></p><p> for(int k=d.getLesson_from();k<=d.getLesson_to();k++){</p><p> sql="INSERT INTO T_Dutys "+</p><p> "VALUES('"+getID().trim()+"
66、9;,'"+d.getStudent_id().trim()+"','"+d.getLeave_date().trim()+"',"+k+",'"+d.getCourse_id().trim()+"',"+null+",'請假','"+d.getType()
67、.trim()+"')";</p><p> d.setLesson(k);</p><p> String temp_info=l.add_check(d,"請假");</p><p> if(temp_info!=null){</p><p> if(info==null)</
68、p><p> info=temp_info+" .\\n";</p><p><b> else</b></p><p> info+=("\\n"+temp_info+" .\\n");</p><p><b> }</b>
69、;</p><p><b> else{</b></p><p> if(l.add(sql)) {</p><p> if(info==null)</p><p> info="學(xué)生["+d.getStudent_name()+"](學(xué)號:"+d.getStudent
70、_id()+") "+d.getLeave_date()+" 第"+k+"節(jié)課請假成功 .\\n";</p><p><b> else</b></p><p> info+=("\\n學(xué)生["+d.getStudent_name()+"](學(xué)號:&qu
71、ot;+d.getStudent_id()+") "+d.getLeave_date()+" 第"+k+"節(jié)課請假成功 .\\n");</p><p><b> }</b></p><p><b> else {</b></p><p>
72、 if(info==null)</p><p> info="學(xué)生["+d.getStudent_name()+"](學(xué)號:"+d.getStudent_id()+") "+d.getLeave_date()+" 第"+k+"節(jié)課請假失敗 .\\n";</p><p&g
73、t;<b> else</b></p><p> info+=("\\n學(xué)生["+d.getStudent_name()+"](學(xué)號:"+d.getStudent_id()+") "+d.getLeave_date()+" 第"+k+"節(jié)課請假失敗 .\\n");&l
74、t;/p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> request.setAttribute("info", info);</p><p> re
75、turn mapping.findForward("add_back");</p><p><b> }</b></p><p> 7.1.2請假信息維護</p><p> 7.1.2.1請假信息查詢</p><p> public ActionForward query(ActionMapp
76、ing mapping, ActionForm af,</p><p> HttpServletRequest request, HttpServletResponse response) {</p><p> Leaves_recordForm f = (Leaves_recordForm) af;</p><p> bean.DutysBean d=new
77、 bean.DutysBean();</p><p> String info=null;</p><p> info=(String)request.getAttribute("info");</p><p> ArrayList data=null;</p><p> ArrayList depts=nul
78、l;</p><p> case_mark(af,request);</p><p> if(f.getC_student_id()!=null)</p><p> d.setStudent_id(f.getStudent_id().trim());</p><p> if(f.getC_student_name()!=null)&l
79、t;/p><p> d.setStudent_name(f.getStudent_name().trim());</p><p> if(f.getC_lesson()!=null){</p><p> d.setLesson_from(f.getLesson_from());</p><p> d.setLesson_to(f.getL
80、esson_to());</p><p><b> }</b></p><p> if(f.getC_student_class()!=null)</p><p> d.setCourse_name(f.getStudent_class().trim());</p><p> if(f.getC_student_
81、dept()!=null)</p><p> d.setStudent_dept_id(f.getStudent_dept().trim());</p><p> if(f.getC_type()!=null)</p><p> d.setType(f.getR_type().trim());</p><p> data=l.gets
82、(d);</p><p> depts=l.getDepts();</p><p> request.setAttribute("data", data);</p><p> request.setAttribute("depts", depts);</p><p> request.set
83、Attribute("info", info);</p><p> return mapping.findForward("leave_query_result");</p><p><b> }</b></p><p> public ArrayList gets(bean.DutysBean d
84、uty_info){</p><p> ArrayList data=null;</p><p> bean.DutysBean leave=new bean.DutysBean();</p><p> String query_sql="SELECT T_Dutys.duty_id,"+</p><p> &
85、quot;T_student_info.student_name,"+</p><p> "T_Dutys.leave_student_id,"+</p><p> "T_Dutys.leave_date,"+</p><p> "T_Dutys.leave_lesson,"+</p&
86、gt;<p> "T_Dutys.leave_type,"+</p><p> "T_Class.class_name, "+</p><p> "T_Course.course_name "+</p><p> "FROM T_Dutys,T_class,T_student
87、_info,T_dept,T_Course "+</p><p> "WHERE T_Dutys.leave_student_id=T_student_info.student_id "+</p><p> "AND T_Student_info.student_class=T_class.class_id "+</p>
88、<p> "AND T_Dept.dept_id=T_Class.class_dept "+</p><p> "AND T_Course.course_id=T_Dutys.leave_course_id "+</p><p> "AND record_type='請假'";</p>
89、;<p> query_sql+=SqlValidate( duty_info);</p><p> if(db.validate()!=null)</p><p> return null;</p><p> java.sql.ResultSet rs=null;</p><p> rs=db.getRs(q
90、uery_sql);</p><p> if(rs==null )</p><p> return null;</p><p><b> try {</b></p><p> data=new ArrayList();</p><p> while(rs.next()){</p&g
91、t;<p> leave=new bean.DutysBean();</p><p> leave.setDuty_id(rs.getString("duty_id"));</p><p> leave.setStudent_id(rs.getString("leave_student_id"));</p><
92、p> leave.setStudent_name(rs.getString("student_name"));</p><p> leave.setLesson(rs.getInt("leave_lesson"));</p><p> leave.setLeave_date(rs.getString("leave_date&qu
93、ot;).substring(0,10));</p><p> leave.setCourse_name(rs.getString("course_name"));</p><p> leave.setType(rs.getString("leave_type"));</p><p> leave.setStudent_
94、class_name(rs.getString("class_name"));</p><p> data.add(leave);</p><p><b> }</b></p><p> } catch (SQLException e) {</p><p> e.printStackTrace
95、();</p><p> return null;</p><p><b> }</b></p><p> return data;</p><p><b> }</b></p><p> public ArrayList getDepts(){</p>
96、<p> ArrayList depts=null;</p><p> bean.DepartmentBean dept;</p><p> if(db.validate()!=null)</p><p> return null;</p><p> java.sql.ResultSet rs=null;&
97、lt;/p><p> rs=db.getRs("select * from T_Dept");</p><p> depts=new ArrayList();</p><p><b> try {</b></p><p> while(rs.next()){</p><p&
98、gt; dept=new bean.DepartmentBean();</p><p> dept.setDept_id(rs.getString("dept_id"));</p><p> dept.setDept_name(rs.getString("dept_name"));</p><p> depts.add
99、(dept);</p><p><b> }</b></p><p> } catch (SQLException e) {</p><p> e.printStackTrace();</p><p> return null;</p><p><b> }</b&g
100、t;</p><p> return depts;</p><p><b> }</b></p><p> 7.1.2.2請假信息修改</p><p> public ActionForward edit(ActionMapping mapping, ActionForm form,</p><
101、;p> HttpServletRequest request, HttpServletResponse response) {</p><p> Leaves_editForm f=(Leaves_editForm)form;</p><p> bean.DutysBean d=new bean.DutysBean();</p><p> String
102、 info=null;</p><p> String sql=null;</p><p> d.setDuty_id((String)request.getParameter("hdn_leave_id"));</p><p> d=l.getSingle(d.getDuty_id().trim());</p><p&
103、gt; d.setLesson(f.getSlt_lesson_from());</p><p> d.setCourse_id(f.getSlt_course().trim());</p><p> d.setLeave_date(f.getTxt_date().trim());</p><p> d.setType(f.getRdo_type().tri
104、m());</p><p> info=new dao.Duty().edit_check(d,"修改");</p><p> if(info==null){</p><p> sql="update T_Dutys set "+</p><p> "leave_lesson=&q
105、uot;+d.getLesson()+","+</p><p> "leave_course_id='"+d.getCourse_id()+"',"+</p><p> "record_type='請假', "+</p><p> "lea
106、ve_type='"+d.getType().trim()+"', "+</p><p> "leave_date='"+d.getLeave_date().trim()+"' "+</p><p> "where duty_id='"+d.getDuty_
107、id().trim()+"'";</p><p> if(l.edit(sql)){</p><p> request.setAttribute("info", "修改請假信息"+d.getDuty_id()+"成功");</p><p> return mapping.f
108、indForward("leave_back");</p><p><b> }</b></p><p><b> else{</b></p><p> request.setAttribute("info", "修改請假信息"+d.getDuty_id()
109、.trim()+"失敗");</p><p> request.setAttribute("leave_id", d.getDuty_id().trim());</p><p> request.setAttribute("leave_re_edit", d);</p><p> return map
110、ping.findForward("leaves_re_edit");</p><p><b> }</b></p><p><b> }else {</b></p><p> request.setAttribute("info", info);</p><
111、;p> request.setAttribute("leave_id", d.getDuty_id().trim());</p><p> request.setAttribute("leave_re_edit", d);</p><p> return mapping.findForward("leaves_re_edit&q
112、uot;);</p><p><b> }</b></p><p><b> }</b></p><p> public ActionForward query_edit(ActionMapping mapping, ActionForm form,</p><p> HttpServlet
113、Request request, HttpServletResponse response) {</p><p> bean.DutysBean data=(bean.DutysBean)request.getAttribute("leave_re_edit");</p><p> String leave_id=((String)request.getParame
114、ter("leave_id")).trim();</p><p> String info=(String)request.getAttribute("info");</p><p> ArrayList depts=null;</p><p> ArrayList courses=null;</p>
115、<p><b> try{</b></p><p> if(leave_id==null)</p><p> leave_id=((String)request.getAttribute("leave_id")).trim();</p><p> if(data==null)</p><
116、p> data=l.getSingle(leave_id.trim());</p><p> }catch(Exception ex){</p><p> ex.printStackTrace();</p><p> request.setAttribute("info", "數(shù)據(jù)讀取失敗");</p>
117、;<p> return mapping.findForward("leave_back");</p><p><b> }</b></p><p> depts=l.getDepts();</p><p> courses=l.getCourses();</p><p> r
118、equest.setAttribute("courses", courses);</p><p> request.setAttribute("data", data);</p><p> request.setAttribute("depts", depts);</p><p> request.s
119、etAttribute("info", info);</p><p> return mapping.findForward("leaves_query_edit");</p><p><b> }</b></p><p><b> 7.2出勤信息管理</b></p>
120、;<p> 7.2.1出勤信息錄入功能</p><p> public ActionForward duty_add_query(ActionMapping mapping, ActionForm f,</p><p> HttpServletRequest request, HttpServletResponse response) {</p><
121、p><b> try {</b></p><p> request.setCharacterEncoding("GBK");</p><p> response.setCharacterEncoding("GBK");</p><p> } catch (UnsupportedEncodin
122、gException e) {</p><p> e.printStackTrace();</p><p><b> }</b></p><p> String info=null;</p><p> info=(String)request.getAttribute("info");&l
123、t;/p><p> String teacher_id=null;</p><p> teacher_id="T_00001";</p><p> ArrayList courses=null;</p><p> courses=duty.getCourse(teacher_id,null); </p>
124、<p> ArrayList depts=null;</p><p> depts=duty.getDepts();</p><p> String cur_date=yasiolar.Date.getDate().trim();</p><p> request.setAttribute("date", cur_date)
125、;</p><p> request.setAttribute("courses", courses);</p><p> request.setAttribute("depts", depts);</p><p> request.setAttribute("info", info);</p&
126、gt;<p> return mapping.findForward("duty_add_query");</p><p><b> }</b></p><p> public ActionForward add(ActionMapping mapping, ActionForm form,</p><p&g
127、t; HttpServletRequest request, HttpServletResponse response) {</p><p><b> try {</b></p><p> request.setCharacterEncoding("GBK");</p><p> response.setCharac
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 計算機專業(yè)畢業(yè)設(shè)計---考勤管理系統(tǒng)
- 計算機專業(yè)畢業(yè)論文-考勤管理系統(tǒng)設(shè)計
- 計算機專業(yè)畢業(yè)論文---考勤管理系統(tǒng)
- 計算機專業(yè)畢業(yè)論文 考勤管理系統(tǒng)
- 計算機專業(yè)畢業(yè)論文--考勤管理系統(tǒng)
- 計算機專業(yè)畢業(yè)論文--考勤管理系統(tǒng)
- 計算機考勤管理系統(tǒng)畢業(yè)設(shè)計
- 計算機應(yīng)用專業(yè)畢業(yè)論文---考勤管理系統(tǒng)的設(shè)計
- 計算機專業(yè)畢業(yè)論文(考勤系統(tǒng)軟件設(shè)計)
- 計算機應(yīng)用專業(yè)畢業(yè)論文--考勤管理系統(tǒng)的設(shè)計
- 大學(xué)計算機專業(yè)畢業(yè)論文-高校學(xué)生考勤管理系統(tǒng)設(shè)計與實現(xiàn)
- 計算機畢業(yè)論文--實驗室學(xué)生簽到考勤系統(tǒng)
- 計算機應(yīng)用畢業(yè)設(shè)計---公司人員考勤管理系統(tǒng)
- 計算機網(wǎng)絡(luò)專業(yè)畢業(yè)設(shè)計(論文)
- 計算機音樂系統(tǒng)畢業(yè)設(shè)計(論文)
- 電費管理系統(tǒng)—計算機畢業(yè)設(shè)計(論文)
- 網(wǎng)上商城購物系統(tǒng)計算機專業(yè)畢業(yè)設(shè)計論文
- 計算機專業(yè)畢業(yè)論文---學(xué)生成績管理系統(tǒng)
- 計算機畢業(yè)設(shè)計--- 學(xué)生成績管理系統(tǒng)
- 計算機網(wǎng)路畢業(yè)設(shè)計論文--學(xué)生信息管理系統(tǒng)
評論
0/150
提交評論