【上海建橋?qū)W院開題報(bào)告模板】基于 WEB 的某公司實(shí)習(xí)生管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)


說(shuō)在前面:上海建橋?qū)W院每年要寫好多,他們的開題報(bào)告呢,需要的東西很多,需要寫的東西多,比如多了文獻(xiàn)綜述和外文翻譯,放在開題一起,但是內(nèi)容不需要寫的太好太細(xì),容易通過(guò)。
課題背景和意義:
如今,根據(jù)國(guó)家以及學(xué)校的政策,大學(xué)生都必須在大學(xué)四年的時(shí)間內(nèi),走出校園生活,進(jìn)入企業(yè)公司進(jìn) 行實(shí)習(xí)工作。工學(xué)結(jié)合的培養(yǎng)方式是各大學(xué)對(duì)學(xué)生的培養(yǎng)計(jì)劃中不可或缺的一環(huán),目的是為了培養(yǎng)大學(xué)生運(yùn) 用校內(nèi)所學(xué)知識(shí)技術(shù)與企業(yè)公司的實(shí)際工作需求相結(jié)合的能力。 當(dāng)學(xué)生以實(shí)習(xí)生的身份走進(jìn)企業(yè)公司后,面臨的就是相關(guān)領(lǐng)導(dǎo)的管理。學(xué)生在實(shí)習(xí)的同時(shí),應(yīng)該是以實(shí) 習(xí)生的身份完成既定任務(wù),而不能因?yàn)橛X(jué)得自己還是學(xué)生就可以放松對(duì)自己要求。因此,企業(yè)公司對(duì)實(shí)習(xí)生 的管理系統(tǒng)就應(yīng)運(yùn)而生。 基于本人實(shí)習(xí)的現(xiàn)狀,實(shí)習(xí)生并沒(méi)有系統(tǒng)的考勤記錄,每日工作的日志也僅僅通過(guò)微信等工具向相關(guān)人 員進(jìn)行匯報(bào),這樣的零散統(tǒng)計(jì)容易對(duì)實(shí)習(xí)生的實(shí)習(xí)表現(xiàn)評(píng)估不全。于是基于 WEB 的實(shí)習(xí)生管理系統(tǒng)可以很好 的完成管理人員與實(shí)習(xí)生的交互管理。 基于 WEB 的某公司實(shí)習(xí)生管理系統(tǒng)是根據(jù)本人如今實(shí)際需求的一個(gè)設(shè)計(jì)。這項(xiàng)設(shè)計(jì)可以分不同權(quán)限的用 戶,對(duì)實(shí)習(xí)生進(jìn)行更科學(xué)、更方便的數(shù)字化管理,能讓實(shí)習(xí)生更加明確社會(huì)工作的需求,更規(guī)范化的完成每 日工作。
研究的主要內(nèi)容:
基于實(shí)習(xí)單位對(duì)于實(shí)習(xí)生的工作要求及現(xiàn)狀,做一個(gè)利用 Vue 前端語(yǔ)言,基于 Python 和 MySQL 數(shù)據(jù)庫(kù) 的 WEB 類項(xiàng)目,實(shí)現(xiàn)應(yīng)用于用人單位對(duì)于實(shí)習(xí)生的一個(gè)交互管理系統(tǒng)。主要面對(duì)的用戶是實(shí)習(xí)生和管理人員, 不同用戶具有不同的操作功能。 (一) 實(shí)習(xí)生可以通過(guò)管理人員給予的 ID 登錄實(shí)習(xí)生界面,進(jìn)行通知查詢、考勤、信息管理修改: 1) 通知查詢可以查看管理人員發(fā)布的每日工作任務(wù)及咨詢等; 2) 考勤可以進(jìn)行每日工作打卡,點(diǎn)擊考勤按鈕后有具體的提示信息(是否成功&日期&時(shí)間)并且自動(dòng)記 錄。同時(shí)分為上班考勤和下班考勤,上班考勤只要登錄后點(diǎn)擊考勤按鈕即可,下班考勤則需要上傳當(dāng)日的工 作日志,可以是 Excel 或者 Word 文件,上傳成功后才能點(diǎn)擊考勤按鈕完成下班考勤; 3) 信息管理修改可以查看自己的賬號(hào)信息,并進(jìn)行修改,包括登錄密碼、手機(jī)等信息。 (二) 管理人員可以登錄管理人員界面,進(jìn)行通知發(fā)布、文件下載、考勤查看、信息管理修改: 1) 通知發(fā)布可以向?qū)嵙?xí)生發(fā)送每日工作任務(wù)及咨詢等; 2) 文件下載可以下載實(shí)習(xí)生每日上傳的工作日志; 3) 考勤查看可以查看實(shí)習(xí)生的考勤情況(日期&時(shí)間); 4) 信息管理修改可以添加、刪除、修改、查看所有實(shí)習(xí)生的賬號(hào)及信息。
研究方法(或技術(shù)路線):
通過(guò)需求分析和技術(shù)對(duì)比,研究相關(guān)文獻(xiàn)資料,最終決定采用 B/S 結(jié)構(gòu),基于 Node.js 的 npm 環(huán)境下的 Vue.js 前端語(yǔ)言,結(jié)合 Python 的 Django 框架和 MySQL 數(shù)據(jù)庫(kù),完成基于 WEB 的某公司實(shí)習(xí)生管理系統(tǒng)的設(shè) 計(jì)與實(shí)現(xiàn)。 Vue 版本-Vuecli3.11.0;Node.js 版本-10.16.3;Python 版本-3.7.3;Django 版本-2.2.6;MySQL 版本 -8.0.16。
預(yù)期結(jié)果:?
1. 設(shè)計(jì)開發(fā)出基于 WEB 的某公司實(shí)習(xí)生管理系統(tǒng)?
2. 完成系統(tǒng)代碼的設(shè)計(jì)和完善?
3. 完成畢業(yè)論文的撰寫
進(jìn)度計(jì)劃:?
2019-09-11 至 2019-10-13 教師下達(dá)任務(wù)書、學(xué)生查閱文獻(xiàn)資料,對(duì)于基于 WEB 的某公司實(shí)習(xí)生管理系 統(tǒng)進(jìn)行調(diào)研、撰寫開題報(bào)告
2019-10-14 至 2019-10-18 對(duì)基于 WEB 的某公司實(shí)習(xí)生管理系統(tǒng)畢業(yè)課題進(jìn)行開題答辯 2019-10-19 至 2019-12-08 對(duì)基于 WEB 的某公司實(shí)習(xí)生管理系統(tǒng)進(jìn)行程序設(shè)計(jì)及調(diào)試?
2019-12-09 至 2019-12-31 在教師指導(dǎo)下完成中期檢查的準(zhǔn)備工作,并進(jìn)行中期答辯?
2020-01-01 至 2020-02-16 根據(jù)中期要求完善系統(tǒng)功能,完成畢業(yè)設(shè)計(jì)文檔撰寫
2020-02-17 至 2020-03-13 完成論文評(píng)審、查重,進(jìn)行畢業(yè)設(shè)計(jì)答辯?
2020-03-14 至 2020-04-05 根據(jù)畢業(yè)設(shè)計(jì)答辯修改要求完善畢業(yè)設(shè)計(jì),并定稿?
2020-04-06 至 2020-05-17 做好畢業(yè)設(shè)計(jì)文檔整理歸檔工作
閱讀文獻(xiàn)目錄?
[1]吳斯聰.基于 Web 的網(wǎng)絡(luò)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].電子科技大學(xué),2011.?
[2]吳大剛,肖榮榮.C/S 結(jié)構(gòu)與 B/S 結(jié)構(gòu)的信息系統(tǒng)比較分析[J].情報(bào)科學(xué),2014(03):313-315.
[3] 馮 傳 波 , 彭 章 友 , 張 鐘 浩 . 基 于 Vue.js 的 移 動(dòng) 應(yīng) 用 可 視 化 平 臺(tái) 的 研 究 [J]. 工 業(yè) 控 制 計(jì) 算 機(jī),2019,32(05):102-103.
[4]葉子平,高遠(yuǎn)寧,劉聰.Python 實(shí)現(xiàn)簡(jiǎn)單的 Web 服務(wù)器[J].電腦編程技巧與維護(hù),2017(01):76+87.?
[5]王冉陽(yáng).基于 Django 和 Python 的 Web 開發(fā)[J].電腦編程技巧與維護(hù),2009(02):56-58.?
[6]葛宇航.基于 Django 的留學(xué)生信息管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].通訊世界,2019,26(08):35-36.?
[7]鄭嵐.Python 訪問(wèn) MySQL 數(shù)據(jù)庫(kù)[J].電腦編程技巧與維護(hù),2010(06):59-61.?
[8] Shuyan SUN,Xiaojuan QI,Yongji YANG.The Design of Scientific Research Project Management System ?in Universities[J].Management Science and Engineering,2014,8(1).
[9] 黃傳祿.基于 Python 的 MYSQL 數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)[J].現(xiàn)代信息科技,2017,1(04):73-75.?
[10] 安彩霞.基于 Python 和 MySQL 的企業(yè)營(yíng)銷管理系統(tǒng)[J].電腦編程技巧與維護(hù),2014(16):47-49.
文獻(xiàn)綜述????
實(shí)習(xí)生管理系統(tǒng)的設(shè)計(jì)研究分析
一、 課題背景?
?隨著社會(huì)科技的發(fā)展,網(wǎng)絡(luò)已經(jīng)滲透到人們?nèi)粘I畹姆椒矫婷?,悄悄地改變著人們的生活方式。由?電腦和網(wǎng)絡(luò)的普及,使用網(wǎng)絡(luò)資源的人越來(lái)越多,網(wǎng)站需要更新的信息量也越來(lái)越大。如果使用靜態(tài)頁(yè)面, 則維護(hù)工作將會(huì)非常繁瑣,管理員每天需要制作大量的網(wǎng)頁(yè),從而浪費(fèi)很多時(shí)間和精力,靜態(tài)網(wǎng)頁(yè)是由單純 的 HTML 語(yǔ)言組成,沒(méi)有交互性。因此為了滿足實(shí)際需要,許多網(wǎng)頁(yè)文件的擴(kuò)展名不再只是 HTML,而是出現(xiàn) 了 PHP,JSP,ASPX 等為擴(kuò)展名的網(wǎng)頁(yè)文件,這些都是采用動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)制作出來(lái)的。
早期的動(dòng)態(tài)網(wǎng)頁(yè)主要采用 CGI 技術(shù),CGI 即 Common Gateway Interface (公用網(wǎng)關(guān)接口)??梢允褂貌?同的語(yǔ)言編寫適合的 CGI 程序,如 Visual Basic,Delphi 或者 C/C++等。雖然 CGI 技術(shù)已發(fā)展成熟且功能強(qiáng) 大,但是由于編程困難,效率低下,修改復(fù)雜等缺陷,所以逐漸有被其它技術(shù)取代的趨勢(shì)。靜態(tài)網(wǎng)頁(yè)和動(dòng)態(tài) 網(wǎng)頁(yè)各有特點(diǎn),網(wǎng)站采用動(dòng)態(tài)網(wǎng)頁(yè)還是靜態(tài)網(wǎng)頁(yè)主要取決于網(wǎng)站的功能需求和網(wǎng)站內(nèi)容的多少,如果網(wǎng)站功 能比較簡(jiǎn)單,內(nèi)容更新量不是很大,采用純靜態(tài)網(wǎng)頁(yè)的方式會(huì)更簡(jiǎn)單,反之一般要采用動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)來(lái)實(shí)現(xiàn), 靜態(tài)網(wǎng)頁(yè)是網(wǎng)站建設(shè)的基礎(chǔ),靜態(tài)網(wǎng)頁(yè)和動(dòng)態(tài)網(wǎng)頁(yè)之間也并不矛盾,為了網(wǎng)站適應(yīng)搜索引擎檢索的需要,即 使采用動(dòng)態(tài)網(wǎng)站技術(shù),也可以將網(wǎng)站內(nèi)容轉(zhuǎn)化為靜態(tài)網(wǎng)頁(yè)發(fā)布。動(dòng)態(tài)網(wǎng)站也可以采用靜動(dòng)結(jié)合的原則,適合 采用動(dòng)態(tài)網(wǎng)頁(yè)的地方用動(dòng)態(tài)網(wǎng)頁(yè),如果必要使用靜態(tài)網(wǎng)頁(yè),則可以考慮用靜態(tài)網(wǎng)頁(yè)的方法來(lái)實(shí)現(xiàn),在同一個(gè) 網(wǎng)站上,動(dòng)態(tài)網(wǎng)頁(yè)內(nèi)容和靜態(tài)網(wǎng)頁(yè)內(nèi)容同時(shí)存在也是很常見的事情[1]。
目前,根據(jù)國(guó)家、學(xué)校的政策在校學(xué)生都要走出校門,進(jìn)行工作前實(shí)習(xí)。工學(xué)結(jié)合的人才培養(yǎng)是學(xué)校培 養(yǎng)人才的重要方式。讓學(xué)生進(jìn)入企業(yè)通過(guò)在校學(xué)習(xí)的知識(shí)與企業(yè)實(shí)際工作相結(jié)合,熟練掌握學(xué)習(xí)的知識(shí)。實(shí) 習(xí)期間如何更好管理實(shí)習(xí)學(xué)生,成為一個(gè)有待解決的問(wèn)題。實(shí)習(xí)是高校畢業(yè)生畢業(yè)前對(duì)所學(xué)習(xí)知識(shí)的檢驗(yàn), 是高校教育的一個(gè)重要的環(huán)節(jié)?;?WEB 的畢業(yè)生管理系統(tǒng)可以解決在日常工作中,企業(yè)公司管理人員對(duì)實(shí) 習(xí)生的系統(tǒng)化管理,符合信息化時(shí)代的現(xiàn)在,也切合實(shí)際,提高實(shí)習(xí)生和企業(yè)公司之間的交互體驗(yàn)。
二、現(xiàn)狀分析
基于計(jì)算機(jī)網(wǎng)絡(luò)的飛速發(fā)展,我們已經(jīng)進(jìn)入一個(gè)網(wǎng)絡(luò)時(shí)代??梢哉f(shuō),網(wǎng)絡(luò)給信息處理、信息傳輸提供一 個(gè)更快捷、更安全的平臺(tái)。實(shí)習(xí)管理系統(tǒng)設(shè)計(jì)要符合廣大用戶的需求,因而,建立實(shí)習(xí)管理系統(tǒng)設(shè)計(jì)具有很 強(qiáng)的現(xiàn)實(shí)意義。 通過(guò)本系統(tǒng)可以將實(shí)習(xí)的各項(xiàng)工作預(yù)先作好計(jì)劃,有步驟的去執(zhí)行,在實(shí)習(xí)開始后又能掌握各項(xiàng)工作的 動(dòng)態(tài),適時(shí)了解學(xué)生的實(shí)習(xí)情況,并能利用交互平臺(tái)提出管理意見和建議,并對(duì)該項(xiàng)工作形成流程化的管理。?
1) 國(guó)內(nèi)現(xiàn)狀 目前在國(guó)內(nèi),對(duì)于實(shí)習(xí)生的管理并不重視,因?yàn)閷?shí)習(xí)生還是學(xué)生,大部分企業(yè)公司都會(huì)以一種包容的態(tài) 度來(lái)對(duì)待實(shí)習(xí)生,因此會(huì)對(duì)實(shí)習(xí)生缺乏一種系統(tǒng)管理。企業(yè)公司會(huì)認(rèn)為實(shí)習(xí)生大多只是為了完成學(xué)校任務(wù)而 進(jìn)行實(shí)習(xí),除非表現(xiàn)優(yōu)異,不然遲早會(huì)離開,因此缺乏對(duì)實(shí)習(xí)生工作的嚴(yán)格審評(píng)?,F(xiàn)今國(guó)內(nèi)的大多數(shù)實(shí)習(xí)生 管理基本都是傳統(tǒng)的方式,定時(shí)定期上交紙質(zhì)的工作記錄,容易造成數(shù)據(jù)的丟失,可能會(huì)對(duì)審評(píng)產(chǎn)生影響。 有些企業(yè)公司圖便利甚至也會(huì)取消這一環(huán)節(jié)。
固然國(guó)內(nèi)也有一些企業(yè)會(huì)搭建 C/S 結(jié)構(gòu)的,基于 C++等語(yǔ)言的客戶端型的實(shí)習(xí)生管理系統(tǒng)。這類系統(tǒng)能 保證穩(wěn)定性,但是缺乏靈活通便。例如實(shí)習(xí)生因?yàn)檎?qǐng)假,不能去線下完成工作,這樣就不能及時(shí)登錄客戶端 系統(tǒng)進(jìn)行工作匯報(bào),而若是采用 B/S 結(jié)構(gòu)就可以隨時(shí)隨地完成工作匯報(bào)。此外 C/S 結(jié)構(gòu)所應(yīng)用的數(shù)據(jù)庫(kù)一般 都是大型數(shù)據(jù)庫(kù),需要高性能 PC、工作站或小型機(jī),略顯不便。?
2) 國(guó)外現(xiàn)狀 基于國(guó)外的學(xué)制、學(xué)生習(xí)性不同,國(guó)外更注重的是學(xué)生的自主能力培養(yǎng),講究自我約束。因此國(guó)外的實(shí) 習(xí)生一般都會(huì)有很高的自主性,采用傳統(tǒng)紙質(zhì)和數(shù)字化系統(tǒng)并用的管理方式。目前國(guó)外并沒(méi)有只針對(duì)實(shí)習(xí)生 的管理系統(tǒng),一般都是混用正式員工的考勤系統(tǒng)。他們使用較為先進(jìn)的數(shù)據(jù)采集,利用生物技術(shù)對(duì)于人體機(jī) 能身份進(jìn)行識(shí)別,例如指紋識(shí)別、靜脈識(shí)別、虹膜識(shí)別、視網(wǎng)膜識(shí)別、面部識(shí)別、手掌幾何學(xué)識(shí)別、DNA 識(shí) 別和聲音識(shí)別等。考情系統(tǒng)的核心在于軟件部分,目前依舊使用 C,C++,Java,ASP 等,使用 Visual FoxPro6.0 數(shù)據(jù)庫(kù)開發(fā)系統(tǒng)作為考勤管理系統(tǒng)。
三、采用的相關(guān)技術(shù)
通過(guò)研究相關(guān)資料文獻(xiàn),對(duì)當(dāng)下主流的各項(xiàng)開發(fā)技術(shù)進(jìn)行對(duì)比分析,決定采用基于 node.js 環(huán)境的 Vscode+Vue 前端語(yǔ)言,結(jié)合 Python 和 MySQL 數(shù)據(jù)庫(kù)的基于 WEB 的某公司實(shí)習(xí)生管理系統(tǒng)。
1) C/S 結(jié)構(gòu)與 B/S 結(jié)構(gòu)的對(duì)比 C/S 結(jié)構(gòu),即 Client/Server(客戶機(jī)/服務(wù)器)結(jié)構(gòu),是大家熟知的軟件系統(tǒng)體系結(jié)構(gòu),通過(guò)將任務(wù)合 理分配到 Client 端和 Server 端,降低了系統(tǒng)的通訊開銷,可以充分利用兩端硬件環(huán)境的優(yōu)勢(shì),早期的軟件 系統(tǒng)多以此作為首選設(shè)計(jì)標(biāo)準(zhǔn)。在 C/S 模式結(jié)構(gòu)中,用戶界面、業(yè)務(wù)功能處理集中在客戶端,服務(wù)器端只完 成數(shù)據(jù)處理和維護(hù)功能。工作方式是客戶端向 server 端發(fā)送 SQL 命令編寫的請(qǐng)求,server 端經(jīng)分析、處理 后得到的結(jié)果經(jīng)中間件傳回 Client 端。Client 端可用的軟件 VB、VFP、DEPTH、PowerBuilder 等。中間件 ADO、DAO、ODBC 等。Server 端可以使用 SQL Server,Oracle,Sybase 等數(shù)據(jù)庫(kù)系統(tǒng)。 B/S 結(jié)構(gòu),即 Browser/Server(瀏覽器/服務(wù)器)結(jié)構(gòu),是隨著 Internet 技術(shù)的興起,對(duì) C/S 結(jié)構(gòu)的一種 變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶界面完全通過(guò)瀏覽器實(shí)現(xiàn),一部分事務(wù)邏輯在前端實(shí)現(xiàn),但是主 要事務(wù)邏輯在服務(wù)器端實(shí)現(xiàn),形成所謂 3-tier 結(jié)構(gòu)。B/S 結(jié)構(gòu),主要是利用了不斷成熟的瀏覽器技術(shù),結(jié)合 瀏覽器的多種 Script 語(yǔ)言(VBScript、JavaScript)和 ActiveX 技術(shù),用通用瀏覽器就實(shí)現(xiàn)了原來(lái)需要復(fù)雜 專用軟件才能實(shí)現(xiàn)的強(qiáng)大功能,并節(jié)約了開發(fā)成本,是一種全新的軟件系統(tǒng)構(gòu)造技術(shù)。隨著Win98以及Win2000 將瀏覽器技術(shù)植入操作系統(tǒng)內(nèi)部,這種結(jié)構(gòu)更成為當(dāng)今應(yīng)用軟件的首選體系結(jié)構(gòu)。 B/S 結(jié)構(gòu)界面統(tǒng)一、使用簡(jiǎn)單,易于維護(hù)并且擁有良好的擴(kuò)展性,能夠有效的保護(hù)企業(yè)投資。此外 B/S 結(jié)構(gòu)信息共享度高,有良好的廣域網(wǎng)支持和較高的安全性。 B/S 結(jié)構(gòu)的最大優(yōu)勢(shì)在于它可以在任何時(shí)間、任何地點(diǎn)(沒(méi)有局域、廣域之分)、以任何接入方式(有線或 無(wú)線連接)實(shí)現(xiàn)跨平臺(tái)的網(wǎng)絡(luò)實(shí)時(shí)操作。不限定用戶使用人數(shù),開發(fā)和使用成本都非常低突出的易用性,客 戶端采用國(guó)際標(biāo)準(zhǔn)化的瀏覽器(如 IE),因此基本上不需要進(jìn)行用戶培訓(xùn),無(wú)論是決策層還是操作層的人員都 無(wú)需培訓(xùn)就可以直接使用??蛻舳嗣饩S護(hù)、免安裝、免開發(fā),節(jié)省了內(nèi)存和存儲(chǔ)空間,也節(jié)省了開發(fā)時(shí)間, 降低了成本,給應(yīng)用系統(tǒng)的安裝、調(diào)試、日常維護(hù)和升級(jí)都帶來(lái)極大的便利 [2]。?
2) Vue 前端語(yǔ)言
Vue.js 是一個(gè)輕量級(jí)的框架,具有性能高、靈活性強(qiáng)的特點(diǎn)。數(shù)據(jù)的綁定在前端領(lǐng)域是個(gè)大問(wèn)題?,F(xiàn)在 我們更專注于數(shù)據(jù),而不是像使用 jQuery 一樣對(duì) DOM 進(jìn)行微觀的管理。Vue 通過(guò)雙向響應(yīng)數(shù)據(jù)綁定系統(tǒng)巧妙 地處理了這個(gè)問(wèn)題。為實(shí)現(xiàn)這種響應(yīng)性,Vue 為狀態(tài)中的每個(gè)變量添加了許多 getter 和 setter,以便它可 以跟蹤更改并自動(dòng)更新 DOM。Vue 允許將一個(gè)網(wǎng)頁(yè)分割成可復(fù)用的組件,每個(gè)組件都包含屬于自己的 HTML、 CSS、JavaScript 以用來(lái)渲染到網(wǎng)頁(yè)中相應(yīng)的地方,從而提高了代碼的復(fù)用性,有利于進(jìn)行后續(xù)界面的擴(kuò)展。 此外,Vue 的文檔也很容易閱讀,學(xué)習(xí)成本較低,所以選擇了這款比較流行的前端框架[3]。
3) Python Python 這一腳本語(yǔ)言,雖然目前只有近 20 年的發(fā)展歷史[4],但是由于其優(yōu)越的特性,比如開源、面向 對(duì)象、內(nèi)存管理、跨平臺(tái)、可擴(kuò)展、解釋性強(qiáng)、易學(xué)易讀等,贏得了眾多軟件開發(fā)人員的青睞。在 GUI(Graphical ?User Interface,圖形用戶界面)開發(fā)方面,Python 作為一種膠水型語(yǔ)言,其最大的優(yōu)勢(shì)就是它的快發(fā)開發(fā) 功能。 Django 是使用 Python 開發(fā)的 Web 框架。它的架構(gòu)成為 MTV (Model-Template-View),Model 用于數(shù)據(jù)庫(kù) 處理,Template 是模板系統(tǒng),用于顯示處理,View 是控制部分用于 Model 的處理、數(shù)據(jù)的加工和模板的調(diào) 用等工作。由于 Django 是使用 Python 開發(fā)的,所以如果用 Django 開發(fā)站點(diǎn),則用 Django 庫(kù)寫 Python 代 碼。Django 是一種十分高效的敏捷 Web 框架,從 2005 年發(fā)布到現(xiàn)在已經(jīng)出現(xiàn)了大量基于 Python 和 Django 開發(fā)的站點(diǎn)[5]。 Django 的 MTV 設(shè)計(jì)模式分為四個(gè)模塊,Models.py 用于創(chuàng)建數(shù)據(jù)庫(kù)模型,是對(duì)數(shù)據(jù)庫(kù)的上層封裝,大大 簡(jiǎn)化了編碼過(guò)程中對(duì)數(shù)據(jù)庫(kù)的增刪改查操作,與 MVC 中的 Model 功能類似;Views.py 是主要的功能模塊,負(fù) 責(zé)業(yè)務(wù)邏輯處理,與 Template 進(jìn)行數(shù)據(jù)交換,與 MVC 中的 Control 功能類似;Tem-plates 文件夾中的保存 的模版文件,用于生成最終 HTML 頁(yè)面;url.py 則用于定義整個(gè)系統(tǒng)或某個(gè)子模塊的路由表,指定了 URL 與 views.py 的映射關(guān)系。urls.py 根據(jù)用戶發(fā)起的請(qǐng)求,調(diào)用 Views.py 中對(duì)應(yīng)的函數(shù),與數(shù)據(jù)模型以及模版 進(jìn)行將來(lái)網(wǎng)絡(luò)演進(jìn)需要,網(wǎng)絡(luò)功能虛擬化依據(jù)其優(yōu)勢(shì)變成了 5G 關(guān)鍵技術(shù),在安防系統(tǒng)中有效運(yùn)用[6]。
4) MySQL?
MySQL 是一個(gè)小型關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)[7],開發(fā)者為瑞典 MySQL AB 公司。在 2008 年 1 月 16 號(hào)被 Sun 公司收購(gòu)。目前 MySQL 被廣泛地應(yīng)用在 Internet 上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成 本低,尤其是開放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了 MySQL 作為網(wǎng)站數(shù)據(jù) 庫(kù)。MySQL 的特點(diǎn)是使用 C 和 C++編寫,并使用了多種編譯器進(jìn)行測(cè)試,保證源代碼的可移植性,同時(shí)支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell NetWare、OpenBSD、OS/2 Wrap、Solaris、Windows 等多種 操作系統(tǒng),并多種編程語(yǔ)言包括 C、C++、Eiffel、Java、Perl、PHP、Python、Ruby 和 TCL 等提供了 API[8]。 此外 MySQL 支持多線程,充分利用 CPU 資源,優(yōu)化的 SQL 查詢算法,有效地提高查詢速度,既能夠作為一個(gè) 單獨(dú)的應(yīng)用程序應(yīng)用在客戶端服務(wù)器網(wǎng)絡(luò)環(huán)境中,也能夠作為一個(gè)庫(kù)而嵌入到其他的軟件中提供多語(yǔ)言支 持,常見的編碼如中文的 GB2312、Big5,日文的 Shift_JIS 等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名。 在沒(méi)有 Python DB-API 之前,Python 開發(fā)的應(yīng)用程序中包含 SQL 語(yǔ)句來(lái)對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行查詢等操 作,但 Python 應(yīng)用程序可以選用的數(shù)據(jù)庫(kù)可以是 MySQL、SQL Server、Oracle 等數(shù)據(jù)庫(kù),當(dāng) Python 應(yīng)用程 序要訪問(wèn)數(shù)據(jù)庫(kù)時(shí),各數(shù)據(jù)庫(kù)廠商針對(duì) Python 語(yǔ)言制定了不同的接口程序來(lái)實(shí)現(xiàn)對(duì)自己數(shù)據(jù)的訪問(wèn),比如 Python 訪問(wèn) MySQL 的接口程序、Python 訪問(wèn) SQL Server 的接口程序、Python 訪問(wèn) Oracle 的接口程序,這樣就導(dǎo)致了接口程序的混亂,同時(shí)對(duì)于開發(fā)者來(lái)說(shuō)必須精通不同數(shù)據(jù)庫(kù)的接口程序,增加了開發(fā)者的負(fù)擔(dān)和 開發(fā)的成本[9]。 Python DB-API 是 Python 訪問(wèn)數(shù)據(jù)庫(kù)的統(tǒng)一接口規(guī)范[10],通過(guò) Python 官網(wǎng)可以查看相關(guān)的接口,主要 接口有模塊接口 Module Interface、數(shù)據(jù)庫(kù)連接對(duì)象 Connection Objects、游標(biāo)對(duì)象 Cursor Objects 等。 Python DB-API 為不同的數(shù)據(jù)庫(kù)提供了一致的訪問(wèn)接口,Python 應(yīng)用程序就可以輕松通過(guò) Python DB-API 實(shí) 現(xiàn)對(duì)不同數(shù)據(jù)庫(kù)的訪問(wèn),這樣就解決了數(shù)據(jù)庫(kù)訪問(wèn)接口混亂的問(wèn)題。通過(guò) Python 訪問(wèn)數(shù)據(jù)庫(kù)的流程如圖 1 ?所示。

???四、 課題的主要內(nèi)容 ?????
系統(tǒng)的總體目標(biāo)是要提高實(shí)習(xí)生管理人員的工作效率和管理水平,方便實(shí)習(xí)生能更更好、更高效的投入 到日常工作中,達(dá)到將實(shí)習(xí)生管理工作納入科學(xué)化、規(guī)范化的軌道目的。 為了實(shí)現(xiàn)系統(tǒng)設(shè)計(jì)的總目標(biāo),基于 WEB 的某公司實(shí)習(xí)生管理系統(tǒng)應(yīng)具備以下功能目標(biāo),主要包括: 1) 系統(tǒng)登錄:該模塊負(fù)責(zé)將登錄成員分為實(shí)習(xí)生用戶和企業(yè)管理用戶。實(shí)習(xí)生用戶登錄成功后,進(jìn)入實(shí) 習(xí)生用戶界面;企業(yè)管理人員用戶登錄成功后,進(jìn)入管理人員用戶界面。登錄界面有供用戶輸入的 ID、密碼 和身份選擇文本框以及登錄、清空按鈕。 2) 考勤:此模塊只針對(duì)實(shí)習(xí)生用戶,分為上班考勤和下班考勤。上班考勤只需要點(diǎn)擊上班考勤按鈕,成 功后會(huì)跳出對(duì)應(yīng)提示框,顯示考勤成功及日期、時(shí)間信息,并且自動(dòng)記錄于表格內(nèi)供管理人員查看;下班考 勤則需要提交當(dāng)日的工作日志,可以是 Word/Excel 文件,若不上傳就點(diǎn)擊下班考勤會(huì)跳出對(duì)應(yīng)提示框,提 示考勤失敗,上傳成功后方能點(diǎn)擊下班考勤按鈕,同時(shí)跳出對(duì)應(yīng)提示框,顯示考勤成功及日期、時(shí)間信息, 并且自動(dòng)記錄于表格內(nèi)供管理人員查看。 3) 訊息、文件發(fā)布:此模塊供管理人員在相應(yīng)板塊發(fā)布訊息或者是文件,實(shí)習(xí)生用戶可以在此板塊查看 并下載。 4) 工作查看:此模塊可以讓管理人員查看實(shí)習(xí)生用戶的考勤信息,并且下載工作日志文件。 5) 信息查看:此模塊主要負(fù)責(zé)信息的增刪改查。實(shí)習(xí)生用戶只能查看自己的個(gè)人信息,并可以對(duì)信息進(jìn) 行修改,例如登錄密碼;管理人員用戶可以查看所有實(shí)習(xí)生信息,并進(jìn)行增加、刪除、修改。
五、 實(shí)施的意義
目前,普遍企業(yè)公司的實(shí)習(xí)生管理使用的仍是一套傳統(tǒng)的管理方法,其迫切需要系統(tǒng)化、規(guī)范化、科學(xué) 化、高效化。隨著計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展,計(jì)算機(jī)和網(wǎng)絡(luò)的應(yīng)用已經(jīng)滲透到了我們的學(xué)習(xí)、工作和生 活,為了使學(xué)校對(duì)實(shí)習(xí)管理工作更加科學(xué)、有效和安全,開發(fā)一套實(shí)習(xí)生管理系統(tǒng)設(shè)計(jì)成為必然趨勢(shì)。實(shí)習(xí) 生管理系統(tǒng)設(shè)計(jì)要提高管理的效率以及質(zhì)量,實(shí)現(xiàn)對(duì)高校學(xué)生實(shí)習(xí)過(guò)程的有效管理以及交流。系統(tǒng)建設(shè)和實(shí) 施后,將大大提高高校學(xué)生實(shí)習(xí)管理工作的信息化水平,提高工作效率。