第一篇:基于SSH框架的學(xué)生檔案信息管理系統(tǒng)
畢業(yè)設(shè)計(論文)
基于SSH框架的學(xué)生信息管理系統(tǒng)
系
別 : 計算機(jī)科學(xué)與技術(shù)系
專業(yè)(班級): 計算機(jī)科學(xué)與技術(shù)(2011級1班)作者(學(xué)號): 指導(dǎo)教師: 完成日期:
陳洪(51102011007)
顧珺、李鐵柱
2015年4月15日
蚌埠學(xué)院教務(wù)處制
目錄
摘 要........................................................................................................................Abstract....................................................................................................................1 概 述..................................................................................................................1.1 項目簡介............................................................................................................1.1.1 研究背景.........................................................................................................1.1.2 項目開發(fā)目的.................................................................................................1.1.3 項目開發(fā)的意義.............................................................................................2 開發(fā)工具及相關(guān)簡介........................................................................................2.1 SSH框架簡介....................................................................................................2.2 Jsp技術(shù)簡介......................................................................................................2.3 MySQL數(shù)據(jù)庫簡介..........................................................................................2.4 Tomcat 6.0介紹..................................................................................................2.5 MyEclipse的簡介..............................................................................................3 可行性分析........................................................................................................3.1 技術(shù)可行性........................................................................................................3.2 經(jīng)濟(jì)可行性........................................................................................................3.3 社會可行性........................................................................................................3.3.1 法律因素.........................................................................................................3.3.2 用戶使用可行性.............................................................................................4 需求分析............................................................................................................4.1 功能分析............................................................................................................4.1.1 管理員模塊.....................................................................................................4.1.2 教師模塊.........................................................................................................4.1.3 學(xué)生模塊.........................................................................................................4.2 系統(tǒng)分析............................................................................................................4.2.1 業(yè)務(wù)流程分析.................................................................................................4.2.2 功能流程分析...............................................................................................5 總體設(shè)計..........................................................................................................5.1 系統(tǒng)功能設(shè)計..................................................................................................5.2 數(shù)據(jù)庫設(shè)計....................................................................................................5.2.1 概念結(jié)構(gòu)設(shè)計...............................................................................................5.2.2 管理員實體屬性圖.......................................................................................5.2.3 教師實體屬性圖...........................................................................................5.2.4 學(xué)生實體屬性圖...........................................................................................5.2.5 公告實體屬性圖...........................................................................................5.2.6 成績實體屬性圖...........................................................................................5.2.7 E-R模型的組成元素....................................................................................5.3 數(shù)據(jù)庫表設(shè)計..................................................................................................5.3.1 管理員信息表...............................................................................................5.3.2 教師信息表...................................................................................................5.3.3 學(xué)生信息表...................................................................................................5.3.4 成績信息表...................................................................................................5.3.5 公告信息表...................................................................................................5.4 系統(tǒng)開發(fā)工具與開發(fā)模式的選擇..................................................................5.4.1 系統(tǒng)開發(fā)工具...............................................................................................5.4.2 系統(tǒng)設(shè)計模式...............................................................................................6 詳細(xì)設(shè)計............................................................................................................6.1 系統(tǒng)登錄模塊..................................................................................................6.1.1 登錄模塊.......................................................................................................6.2.1 基礎(chǔ)信息管理界面.......................................................................................6.2.2 個人信息管理界面.......................................................................................6.2.3 課程管理界面...............................................................................................6.2.4 錄入教師信息界面.......................................................................................6.2.5 錄入學(xué)生信息界面.......................................................................................6.3 教師用戶模塊..................................................................................................6.3.1 個人信息管理界面.......................................................................................6.3.2 查看公告信息界面.......................................................................................6.3.3 學(xué)生成績管理界面.......................................................................................6.4 學(xué)生登錄模塊..................................................................................................6.4.1 查看個人信息界面.......................................................................................6.4.2 課程查詢界面...............................................................................................6.4.3 學(xué)校公告界面...............................................................................................6.4.4 我的成績界面...............................................................................................7 軟件測試與分析..............................................................................................7.1 軟件測試的重要性..........................................................................................7.2 系統(tǒng)的實際測試..............................................................................................7.3 測試環(huán)境與測試條件......................................................................................7.4 系統(tǒng)運(yùn)行情況..................................................................................................8 結(jié)
論..............................................................................................................8.1 系統(tǒng)的優(yōu)勢......................................................................................................8.2 系統(tǒng)的不足......................................................................................................8.3 總結(jié)..................................................................................................................致
謝....................................................................................................................參 考 文 獻(xiàn)..........................................................................................................蚌埠學(xué)院畢業(yè)設(shè)計(論文)
基于SSH框架的學(xué)生信息檔案管理系統(tǒng)
摘要:由于現(xiàn)在高校招生率的提高,各大高校的學(xué)生數(shù)量普遍增多,隨之增加的就是學(xué)生檔案信息。面對如今繁雜龐大的信息數(shù)據(jù)庫,傳統(tǒng)的手工記錄的管理方式顯得力不從心。伴隨著網(wǎng)絡(luò)信息技術(shù)在教育事業(yè)上的應(yīng)用,學(xué)生檔案管理相應(yīng)而出,使得學(xué)生檔案的管理比以前更方便。本文就此系統(tǒng)做了全面的解析概述,以及每個功能所應(yīng)用的核心技術(shù)及其運(yùn)用方法,整體結(jié)構(gòu)方法也做了全面介紹。本系統(tǒng)以Myeclipse 2014做為開發(fā)工具,用作支持本系統(tǒng)的數(shù)據(jù)庫是MySQL,服務(wù)器選擇的是Tomcat 6.0,Jsp和Servlet技術(shù)用作前臺開發(fā)手段[1],總體框架采用SSH架構(gòu)。項目總體分為前、后臺兩個部分,前臺提供管理員、教師用戶和學(xué)生用戶的登錄。教師用戶的主要職責(zé)是評定學(xué)生的考試成績,此外還可以對個人信息和公告信息進(jìn)行查看;學(xué)生用戶可以查看個人信息、課程信息、公告信息和個人成績;管理員則從后臺登錄,管理數(shù)據(jù)庫中的相關(guān)信息如對學(xué)生用戶和教師用戶的添加,以及對公告信息的調(diào)整。
關(guān)鍵詞:SSH框架;MyEclipse;MySQL;Tomcat;Jsp
陳洪:基于SSH框架的學(xué)生檔案信息管理
Students Information File Management System Based on SSH Framework Abstract: Now that increase college enrollment rates, the number of students in major universities generally increased, increased is the student profile information.Today the face of huge information database complexity, the traditional manual records management appeared to be inadequate.Along with the network of information technology, student records management in the education of corresponding out, making the management of student records and more convenient than ever.In this paper, this system made a comprehensive analysis overview, and each function is applied the core technology and its application method, the overall structure of methods to do a comprehensive introduction.This system Myeclipse 2014 as a development tool, used to support the system's database is MySQL, the server is selected Tomcat 6.0, Jsp and Servlet technologies used as foreground development tools, the overall framework architecture using SSH.The overall project is divided into front, back two parts, the front desk manager, teacher and student user to provide the user's login.Teachers users to view personal information, student information and post information, modify personal information, as well as courses for student achievement rates;student users can view personal information, course information, announcements and personal achievement;background provide administrator login, database management for the information of student, teacher and so on[2].Keywords: SSH Framework;MyEclipse;MySQL;Tomcat;Jsp
蚌埠學(xué)院畢業(yè)設(shè)計(論文)開發(fā)工具及相關(guān)簡介
2.1 SSH框架簡介
SSH框架包括了Struts、Spring以及Hibernate,是目前使用相對廣泛的一個Web開源架構(gòu)[3]。
SSH框架結(jié)構(gòu)清晰,大體可分為表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)持久層和域模塊層,各層之間有很好的關(guān)聯(lián)。該框架有諸多的優(yōu)點,如有較強(qiáng)的可復(fù)用性,能夠幫助使用者更為清晰的搭建需要使用的架構(gòu),而且可維護(hù)性好。本系統(tǒng)中的Struts框架采用的是Struts2,主要用在系統(tǒng)的業(yè)務(wù)邏輯層,負(fù)責(zé)業(yè)務(wù)的跳轉(zhuǎn);Hibernate框架主要是負(fù)責(zé)對數(shù)據(jù)庫進(jìn)行輕量級封裝,做持久化處理,可以減少SQL語句的編寫;Spring框架則是Struts和Hibernate框架的管理者[4]。SSH框架的實現(xiàn)方法是通過配置相關(guān)的xml文件,然后導(dǎo)入一些所需要的jar包,然后對這些jar包進(jìn)行調(diào)用。
2.2 Jsp技術(shù)簡介
Jsp是SUN公司和許多公司一起建立的一種動態(tài)技術(shù)標(biāo)準(zhǔn)。Jsp網(wǎng)頁的組成其實是在原本網(wǎng)頁中的Html文件中加入了Jsp標(biāo)簽和相關(guān)Java程序片段從而形成了如今Jsp網(wǎng)頁[5]。Jsp技術(shù)的最大特點就是它的所有操作都能在服務(wù)器端的瀏覽器上進(jìn)行,然后將運(yùn)行的結(jié)果反饋給用戶,這樣就會很大程度降低對用戶的客戶端瀏覽器的要求。
Jsp技術(shù)是Java Servlet API的擴(kuò)展。Jsp頁面通常由靜態(tài)Html/XML組件、自定義Jsp標(biāo)簽和成為scriptlet的Java代碼片段組成。Jsp技術(shù)是建立在Servlet基礎(chǔ)上的,兩者的執(zhí)行都是在服務(wù)器端的,用戶可以通過瀏覽器直接進(jìn)行訪問執(zhí)行。當(dāng)服務(wù)器端出現(xiàn)訪問請求超時時,其中的Java程序會首先被執(zhí)行,之后將執(zhí)行結(jié)果返回給用戶,一并返回的還有相關(guān)的Html代碼。通常的情況下Jsp頁面很少去操作后臺的數(shù)據(jù),Jsp頁面只是用來提取輸入到網(wǎng)頁上的數(shù)據(jù)和解決網(wǎng)頁的靜態(tài)化頁面,至于業(yè)務(wù)處理則毫無干系。若想要對數(shù)據(jù)庫進(jìn)行操作或者對網(wǎng)頁重定向以及發(fā)送E-mail,都是通過向網(wǎng)頁中插入Java代碼來實現(xiàn),其它所需功能也都可以通過此方法實現(xiàn)。
陳洪:基于SSH框架的學(xué)生檔案信息管理
2.3 MySQL數(shù)據(jù)庫簡介
MySQL的開發(fā)者是瑞典的MySQL AB公司,它是一個免費(fèi)開源的數(shù)據(jù)庫,對于Windows、Linux等操作系統(tǒng)都適用;此外,MySQL對于網(wǎng)絡(luò)也是完全適用的,也就是說用其構(gòu)建的數(shù)據(jù)庫可以被網(wǎng)上的任何服務(wù)器進(jìn)行訪問[6]。MySQL具有十分強(qiáng)大的功能,操作又十分簡單,而且有較強(qiáng)的安全可靠性,運(yùn)行速度方面也不會讓人失望,也比較容易管理。除了以上特點,MySQL最大的優(yōu)點就是它是一個免費(fèi)開源軟件!而且能夠直接從網(wǎng)上下載到與其相匹配的第三方工具軟件對其操作。在諸如Unix這樣的操作系統(tǒng)上MySQL可以直接下載它的服務(wù)器和客戶端軟件。如果是在Windows系統(tǒng)上,MySQL數(shù)據(jù)庫的客戶機(jī)和客戶機(jī)程序也都是免費(fèi)的,這就是MySQL最大的優(yōu)勢。
2.4 Tomcat 6.0介紹
Tomcat服務(wù)器是由Apache Software Foundation(Apache軟件基金會)中Apache Group Jadarta開發(fā)小組開發(fā)的一個免費(fèi)的開放源代碼的服務(wù)器軟件[7]。Tomcat能夠完全兼容Jsp和Servlet的最新規(guī)范,這都得力于SUN公司的支持。它的不足之處就是它的配置比較繁瑣,而且還具有一些安全問題,但是這些缺點絲毫不會影響它在開發(fā)者心中的地位,Tomcat先進(jìn)的技術(shù),出色的穩(wěn)定性和兼容性,以及最為人性化的免費(fèi)政策都是深受開發(fā)者喜愛的原因,成為應(yīng)用最為廣泛的WEB應(yīng)用服務(wù)器軟件。
2.5 MyEclipse的簡介
MyEclipse是一個企業(yè)級的工作平臺,它的前生只是Eclipse的一個插件[8],但是如今卻發(fā)展成為比Eclipse功能更為強(qiáng)大的工作平臺。它是Eclipse的擴(kuò)展,對Eclipse的功能有全面性的完善,其中就包括了完備的編碼,調(diào)試、測試和發(fā)布功能。利用它可以在數(shù)據(jù)庫和JavaEE(Java Enterpride Edition)的開發(fā)、發(fā)布以及應(yīng)用程序服務(wù)器的整合方面大大提高了工作效率,能豐富JavaEE集成開發(fā)環(huán)境。
在MyEclipse組件中,更為方便地提供了Jsp、Servlet、HTML、XML、Struts、Hibernate、Spring等框架的開發(fā)支持,而隨著不斷衍生發(fā)展的新技術(shù),MyEclipse也在不斷的發(fā)展[9]。
蚌埠學(xué)院畢業(yè)設(shè)計(論文)需求分析
4.1 功能分析
4.1.1 管理員模塊
系統(tǒng)管理員可以修改個人密碼,添加修改課程信息、系別信息以及公告信息,此外還可以瀏覽學(xué)生基本信息和成績。
4.1.2 教師模塊
本系統(tǒng)中的教師用戶的主要職責(zé)是對學(xué)生成績進(jìn)行評定,給出相應(yīng)分?jǐn)?shù),然后可以根據(jù)課程信息和考試時間對考試成績查看。另外,可以對相關(guān)信息進(jìn)行查看,如個人信息、公告信息和學(xué)生信息等。
4.1.3 學(xué)生模塊
學(xué)生模塊實現(xiàn)的有查看個人信息、課程信息、考試成績和公告信息,此外可以添加自己的相關(guān)課程。
4.2 系統(tǒng)分析
4.2.1 業(yè)務(wù)流程分析
所謂業(yè)務(wù)流程分析是指在進(jìn)行設(shè)計開發(fā)之前,對自己的系統(tǒng)設(shè)計按照所給要求進(jìn)行相關(guān)的業(yè)務(wù)處理,設(shè)計好系統(tǒng)的總體框架,根據(jù)實際功能需要進(jìn)行相關(guān)的業(yè)務(wù)分析,對各個業(yè)務(wù)流程進(jìn)行詳細(xì)分析,如業(yè)務(wù)內(nèi)容、處理所需的大致時間等,此外對各個業(yè)務(wù)流程所需的信息來源、信息處理的方法也都要有相對應(yīng)的總結(jié),這樣才能更好的進(jìn)行開發(fā)。
業(yè)務(wù)流程分析就是為了讓開發(fā)者能夠更好的了解系統(tǒng)的開發(fā)方向以及相關(guān)的流程處理,幫助開發(fā)者梳理清楚開發(fā)思路,使系統(tǒng)開發(fā)更有條理。一下是系統(tǒng)的流程圖。
具體業(yè)務(wù)流程如圖4-1所示。
陳洪:基于SSH框架的學(xué)生檔案信息管理
學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)學(xué)
圖 4-1 業(yè)務(wù)流程圖
4.2.2 系統(tǒng)功能流程分析
功能流程分析能夠讓開發(fā)者對自己的系統(tǒng)中各個角色的功能之間的關(guān)系更加明了,這讓系統(tǒng)更加結(jié)構(gòu)化,在開發(fā)的同時自己在大腦中能夠有一個明確的構(gòu)思,有一個清晰的開發(fā)方向。
下面將具體分析學(xué)生角色和管理員之間的關(guān)系,因為教師與管理員之間的關(guān)系與此基本相似,所以就不一一列出。
具體功能流程圖如圖4-2所示:
0-
陳洪:基于SSH框架的學(xué)生檔案信息管理 總體設(shè)計
5.1 系統(tǒng)功能設(shè)計
系統(tǒng)設(shè)計是一個把功能需求轉(zhuǎn)換成用設(shè)計程序表示的過程。系統(tǒng)設(shè)計時需要事先對要實現(xiàn)的目標(biāo)系統(tǒng)進(jìn)行分析研究,之后總結(jié)出一套系統(tǒng)的設(shè)計規(guī)劃,以便能夠有計劃地設(shè)計系統(tǒng)。對于本系統(tǒng)來說,設(shè)計之前就要對學(xué)生檔案信息管理系統(tǒng)進(jìn)行全方位的調(diào)查總結(jié),然后繪制一個系統(tǒng)的總體規(guī)劃。系統(tǒng)設(shè)計包括系統(tǒng)總體設(shè)計、系統(tǒng)詳細(xì)設(shè)計、系統(tǒng)數(shù)據(jù)庫設(shè)計、系統(tǒng)開發(fā)工具、開發(fā)技術(shù)和開發(fā)模式等[8]。
從數(shù)據(jù)流圖出發(fā),對數(shù)據(jù)流圖進(jìn)行分析,如圖5-1:
后臺功能模塊老師模塊管理員模塊學(xué)生模塊個人信息學(xué)生成績系統(tǒng)公共個人信息學(xué)院管理系別管理班級管理課程管理班級管理學(xué)生管理公共管理個人信息我的成績系統(tǒng)公共
圖5-1 學(xué)生信息管理系統(tǒng)功能模塊圖
5.2 數(shù)據(jù)庫設(shè)計
本系統(tǒng)主的功能實現(xiàn)主要圍繞數(shù)據(jù)庫展開的,所以本系統(tǒng)的核心就是數(shù)據(jù)庫。數(shù)據(jù)庫的設(shè)計直接影響本設(shè)計各項功能的進(jìn)行,是本設(shè)計的基礎(chǔ),就像是房子的根基一樣,它的穩(wěn)固與否直接影響整個建筑的施工,所以在設(shè)計本系統(tǒng)的數(shù)據(jù)庫的時候非常的細(xì)心,不能出現(xiàn)任何漏洞。
5.2.1 概念結(jié)構(gòu)設(shè)計
從數(shù)據(jù)需求分析中得出系統(tǒng)的實體屬性圖。
陳洪:基于SSH框架的學(xué)生檔案信息管理
級、年齡等。
如圖5-4所示:
開始用戶登錄用戶名密碼是否正確N返回登錄頁面Y進(jìn)入主頁面結(jié)束
圖5-4學(xué)生實體屬性圖
5.2.5 公告實體屬性圖
公告實體屬性圖描述的是公告信息,包括公告編號、標(biāo)題、內(nèi)容、時間等。如圖5-5所示:
開始用戶登錄用戶名密碼是否正確N返回登錄頁面Y進(jìn)入主頁面結(jié)束
圖5-5公告實體屬性圖
5.2.6成績實體屬性圖
成績屬性圖描述的是學(xué)生的成績信息,包括成績編號、學(xué)生編號、成績、考核時間等。
如圖5-6所示:
陳洪:基于SSH框架的學(xué)生檔案信息管理
開始用戶登錄用戶名密碼是否正確N返回登錄頁面Y進(jìn)入主頁面結(jié)束
圖5-7系統(tǒng)E-R圖
5.3 數(shù)據(jù)庫表設(shè)計
5.3.1 管理員信息表
管理員信息表用來存放管理員信息,其中包括管理員編號、用戶名和用戶密碼。具體信息如表5-1所示:
表5-1管理員信息表
字段名 id name pwd
類型 Int varchar varchar
長度 4 30 20
說明
管理員編號(主鍵)
用戶名 用戶密碼
5.3.2 教師信息表
教師信息表用來存放教師信息,包括教師編號、密碼、姓名、年齡、電話等。具體信息如表5-2所示:
陳洪:基于SSH框架的學(xué)生檔案信息管理
具體信息如表5-4所示:
表5-4成績信息表
字段名 id student_id course_id Grade Time Beizhu
類型 Int Int Int Int Datetime varchar
長度 4 4 4 4 8 50
說明 成績編號(主鍵)學(xué)生學(xué)號(外鍵)考核類型編號(外鍵)
成績 考核時間 備注
5.3.5 公告信息表
公告信息表用來存放公告信息,包括公告編號、標(biāo)題、內(nèi)容、時間等。具體信息如表5-5所示:
表5-5公告信息表
字段名 id Title Content Time
數(shù)據(jù)類型 Int varchar varchar Datetime
長度 4 20 100 8
功能描述 編號(主鍵)
標(biāo)題 內(nèi)容 時間
5.4 系統(tǒng)開發(fā)工具與開發(fā)模式的選擇
5.4.1 系統(tǒng)開發(fā)工具
本系統(tǒng)主要的架構(gòu)使用的是SSH框架,結(jié)合Jsp技術(shù)對前端的設(shè)計進(jìn)行的系統(tǒng)開發(fā)。Jsp技術(shù)安全性較高,可隨處運(yùn)行,并且與各個開發(fā)軟件兼容;SSH框架則為開發(fā)者提供了一個系統(tǒng)的總體框架,讓開發(fā)者的工作更加系統(tǒng)性的進(jìn)行,其中Struts2作為系統(tǒng)的基礎(chǔ)框架,也就是為系統(tǒng)搭建一個大致的架構(gòu),Hibernate則是負(fù)責(zé)連接數(shù)據(jù)庫的,通過Spring框架對這兩個框架進(jìn)行管理,讓
陳洪:基于SSH框架的學(xué)生檔案信息管理
綜上所述,本系統(tǒng)所采用的B/S架構(gòu)也是現(xiàn)在較為流行的開發(fā)架構(gòu)相對于其他架構(gòu)有著不容忽視的優(yōu)勢,這也將會是將來開發(fā)模式的主要發(fā)展趨勢。
0-
陳洪:基于SSH框架的學(xué)生檔案信息管理
圖6-2 登錄失敗
具體流程如圖6-3所示:
開始用戶登錄用戶名密碼是否正確N返回登錄頁面Y進(jìn)入主頁面結(jié)束
圖6-3 登錄程序流程圖
陳洪:基于SSH框架的學(xué)生檔案信息管理
如圖6-6所示:
圖6-6 課程管理界面
6.2.4 錄入教師信息界面
這是錄入教師信息的功能界面,如圖6-7所示:
圖6-7錄入教師界面
6.2.5錄入學(xué)生信息界面
這是錄入學(xué)生信息的功能界面,如圖6-8所示:
陳洪:基于SSH框架的學(xué)生檔案信息管理
6.3.3 學(xué)生成績管理界面
教師可以按照考試課程、考試時間和考試類型錄入學(xué)生成績信息,如圖6-11所示:
圖6-11學(xué)生成績管理界面
6.4 學(xué)生登錄模塊
6.4.1 查看個人信息界面
學(xué)生可以查看個人信息。如圖6-12所示:
圖6-12 個人信息界面
6.4.2 課程查詢界面
學(xué)生可以查看課程信息,如圖6-13所示:
陳洪:基于SSH框架的學(xué)生檔案信息管理 軟件測試與分析
系統(tǒng)測試是設(shè)計的最后一項,也是至關(guān)重要的一項,只有測試通過新的系統(tǒng)才算完成,所以測試在開發(fā)過程中也占有舉足輕重的地位。軟件測試有專門的測試人員負(fù)責(zé),這和開發(fā)人員的工作是完全不同。如今的軟件測試趨向于開發(fā)的每個階段都應(yīng)該包含測試,該觀點的依據(jù)是早發(fā)現(xiàn)問題早解決,這樣也可以防止影響到后續(xù)工作的進(jìn)行。
7.1 軟件測試的重要性
軟件測試在整個的軟件開發(fā)中占有著重要的地位,這是軟件交付于客戶之前最后的檢測手段。就相當(dāng)于汽車量產(chǎn)之前的撞墻檢查一樣,這也是從用戶的“安全問題”考慮。所謂的軟件測試就是在運(yùn)行成功的程序上尋找Bug,檢測出的錯誤一般都是運(yùn)行時不會出現(xiàn)的,也是開發(fā)人員看不出來的,這就是所謂的Bug。而現(xiàn)在推崇的逐步測試是在開發(fā)的每個階段都進(jìn)行測試,這樣能更好的消除開發(fā)過程中所遇到的問題,更好的完成開發(fā)。
實際上,對于一個軟件的開發(fā)來說,不論具有多么熟練的開發(fā)技術(shù)、采用怎樣完善的方法,都會有錯誤產(chǎn)生。開發(fā)人員能夠做到的只能是減少錯誤的引入而不能杜絕錯誤的產(chǎn)生,這些引入的錯誤就需要測試來將其找出來,而軟件中的錯誤的數(shù)量也是需要通過測試計算的,所以說測試在軟件開發(fā)中占有著舉足輕重的地位。只要有開發(fā)有程序就一定會有測試。而且據(jù)統(tǒng)計表明,在系統(tǒng)的開發(fā)中,并不是大家想的測試肯定比開發(fā)工作量小,這恰恰是相反的,測試的工作量一般情況下都會比開發(fā)的工作量多40%。而且在開發(fā)中,測試的成本也是占有很大部分的,一般來說都會占有30%到50%。如果把維護(hù)階段也考慮在內(nèi),討論整個軟件生存期時,測試的成本比例也許會有所降低,但實際上維護(hù)工作相當(dāng)于二次開發(fā),乃至多次開發(fā),其中必定還包含有許多測試工作。
7.2 系統(tǒng)的實際測試
軟件測試主要分為黑盒測試和白盒測試。黑盒測試:也稱功能測試,數(shù)據(jù)驅(qū)動測試等,它將待測對象堪稱是一個黑盒子,在完全不考慮程序的內(nèi)部結(jié)構(gòu)和特性的情況下,只依據(jù)規(guī)格說明書檢查程序的功能是否能正常使用[15]。白盒測試:
陳洪:基于SSH框架的學(xué)生檔案信息管理 結(jié)
論
8.1 系統(tǒng)的優(yōu)勢
本系統(tǒng)是針對學(xué)生檔案信息的管理而開發(fā),為了讓管理者更為輕松的管理學(xué)生檔案信息。本系統(tǒng)能夠條理化的錄入學(xué)生信息、教師信息、課程信息和公告信息,相比傳統(tǒng)方式更加便捷;在查詢時,可以根據(jù)個人需要的條件進(jìn)行查詢,如:根據(jù)學(xué)生學(xué)號查詢學(xué)生成績,根據(jù)課程信息查詢所有該課程的學(xué)生成績等;管理時管理員只需要對后臺數(shù)據(jù)庫進(jìn)行管理,面對龐大的數(shù)據(jù)也可以輕松應(yīng)對。
8.2 系統(tǒng)的不足
所謂人無完人,本系統(tǒng)也有不足之處,例如系統(tǒng)采用B/S架構(gòu)開發(fā),所以管理工作只能在瀏覽器上進(jìn)行,沒有客戶端方便;系統(tǒng)目前只支持Tomcat 6.0服務(wù)器;系統(tǒng)目前只有對數(shù)據(jù)信息的基本增刪改查功能,在以后的學(xué)習(xí)中一定對其完善。
8.3 總結(jié)
經(jīng)過這幾個月的系統(tǒng)開發(fā),讓我獲益匪淺。由于之前對SSH架構(gòu)掌握的不是很熟練,所以在開發(fā)過程中也在自學(xué),這也算是自學(xué)成功的勞動成果。在整個設(shè)計過程中,由主體SSH框架引申開展的一系列功能均能良好實現(xiàn)。此外,在開發(fā)過程中也對之前的Jsp技術(shù)和MySQL數(shù)據(jù)庫的相關(guān)知識復(fù)習(xí),在運(yùn)用起來更為熟練。在通過開發(fā)后期對系統(tǒng)的調(diào)試后,系統(tǒng)功能正常運(yùn)行,基本功能都順利實現(xiàn)。而且本系統(tǒng)界面美觀,操作方便,符合大眾要求。不過部分細(xì)節(jié)可能由于時間倉促加上系統(tǒng)開發(fā)經(jīng)驗上的經(jīng)驗不足,系統(tǒng)在設(shè)計過程中不可避免地遇到了一些諸如以下的一些問題,如:
(1)起初對數(shù)據(jù)庫的構(gòu)建不夠完善,導(dǎo)致開發(fā)初期的部分?jǐn)?shù)據(jù)取不到值;(2)在前端頁面的跳轉(zhuǎn)中,由于頁面較多,出現(xiàn)了一些跳轉(zhuǎn)錯誤;(3)在測試階段,在使用了Tomcat7.0服務(wù)器出現(xiàn)了Session error的錯誤。不過在后期的系統(tǒng)完善方面,這些問題都受到了重視,也都得到了解決,使得本系統(tǒng)真正的符合了開發(fā)者和用戶的需求,也更加規(guī)范、科學(xué)。
0-
陳洪:基于SSH框架的學(xué)生檔案信息管理
參 考 文 獻(xiàn)
[1] 劉佳.基于JSP&Servlet圖書信息管理系統(tǒng)的設(shè)計與實現(xiàn)[D].天津大學(xué),2012.[2] Peluso M, Takizawa P.Student involvement in the development of integrated curricula.[J].Medical Education, 2010, 44(11):1120–1121.0.[3] 馬鐸.基于SSH技術(shù)的小區(qū)車輛管理系統(tǒng)設(shè)計與實現(xiàn)[J].信息與電腦:理論版, 2013,(3).[4] 李寧.Java Web編程實戰(zhàn)寶典[M].北京:清華大學(xué)出版,2014: 41.[5] 包子建.基于B/S模式和JSP技術(shù)的教師辦公管理系統(tǒng)的設(shè)計與實現(xiàn)[D].華東師范大學(xué), 2006.DOI:10.7666/d.y1015368.[6] 王飛飛.MySQL數(shù)據(jù)庫應(yīng)用從入門到精通[M].北京:中國鐵道出版社,2014: 36.[7] 李鑒.開源技術(shù)Struts、Spring、Hibernate在MIS開發(fā)中的應(yīng)用研究[D].北方民族大學(xué), 2008.[8] 曹大有, 王瑜.基于MyEclipse的Hibernate持久層框架的開發(fā)過程[J].計算機(jī)系統(tǒng)應(yīng)用, 2007,(12):101-104.DOI:10.3969/j.issn.1003-3254.2007.12.025.[9] 張曉梅.基于J2EE的教學(xué)實驗管理系統(tǒng)的設(shè)計與開發(fā)[D].山東大學(xué), 2006.DOI:10.7666/d.y982177.[10] 年軼, 林琳.E-R圖向關(guān)系模型轉(zhuǎn)換規(guī)則的研究[J].微型電腦應(yīng)用, 2004, 20(1):12-14.DOI:10.3969/j.issn.1007-757X.2004.01.002.[11] 李寧.Java Web編程實戰(zhàn)寶典[M].北京:清華大學(xué)出版,2014: 72.[12] 王飛飛.MySQL數(shù)據(jù)庫應(yīng)用從入門到精通[M].北京:中國鐵道出版社,2014: 36.[13] CSDN博客頻道.關(guān)于B/S架構(gòu)和C/S架構(gòu)探析[J].2006.http://blog.csdn.net/yuelengxin/article/details/593561.[14] 王宇.無線局域網(wǎng)基本原理及前沿應(yīng)用[J].中國數(shù)據(jù)通信,2003,5(8):34-39.[15] 薩默維爾.軟件工程(第九版)[M].北京:機(jī)械工業(yè)出版社,2011: 78-81.2-
第二篇:學(xué)生檔案信息管理系統(tǒng)
#include “stdio.h”
#include “string.h”
#include “stdlib.h”
#include“conio.h”
typedef struct student
{ long num;
char name[5];
char sex[3];
longyear;
longmonth;
longdate;
char address[20];
long tel;
struct student * next;
}STU;
void input()
{ int i,n;
STU a;
FILE *fp;
system(“cls”);
getchar();
if((fp=fopen(“d:學(xué)生檔案”,“wb”))==NULL){ printf(“error!n”);exit(0);}
printf(“nt 請輸入學(xué)生的人數(shù):”);scanf(“%d”,&n);
getchar();
for(i=0;i { printf(“t請輸入學(xué)號:”); scanf(“%ld”,&a.num); printf(“t 請輸入學(xué)生姓名:”); scanf(“%s”,a.name); printf(“t 請輸入學(xué)生性別:”); scanf(“%s”,a.sex); printf(“t請輸入學(xué)生出生年:”);scanf(“%ld”,&a.year); printf(“t月:”);scanf(“%ld”,&a.month); printf(“t日:”);scanf(“%ld”,&a.date); printf(“t 請輸入學(xué)生生源地:”);scanf(“%s”,&a.address); printf(“t 請輸入學(xué)生電話:”);scanf(“%ld”,&a.tel); fwrite(&a,sizeof(STU),1,fp); } fclose(fp); } void list() {STU a; FILE *fp; system(“cls”);getchar(); if((fp=fopen(“d:學(xué)生檔案”,“rb”))==NULL) { printf(“空白文件n”);exit(1);} printf(“nnnt學(xué)號t姓名t性別t出生年月日t生源地t電話nn”); while(fread(&a,sizeof(STU),1,fp)!=0) printf(“t%ldt%st%st%ldt%ldt%ldt%st%ld”,a.num,a.name,a.sex,a.year,a.month,a.date,a.address,a.tel); fclose(fp); printf(“nt按任意鍵繼續(xù)...”); getchar();getchar(); } /*void modify()/*修改* { STU a[10], *p; int num,n=0,f,i; FILE *fp; p=a; fp=fopen(“d:學(xué)生檔案”,“rb+”); if(fp==NULL){ printf(“error!”);return;} system(“cls”); while(fread(&a[n],sizeof(STU),1,fp)!=0)n++; printf(“請輸入學(xué)生學(xué)號:”); scanf(“%ld”,&num); for(f=0;f<=10;f++,p++) { if(num==a[f].num) printf(“nnnt學(xué)號t姓名t性別t出生年月日t生源地t電話nn”); printf(“t%ldt%st%st%ldt%ldt%ldt%st%ld”,a[f-1].num,a[f-1].name,a[f-1].sex,a[f-1].date,a[f-1].address,a[f-1].tel);break;} do {system(“cls”); printf(“nnttt修改nn”); printf(“ttt1-----修改學(xué)生姓名n”); printf(“ttt2-----修改學(xué)生性別n”); printf(“ttt3-----修改學(xué)生出生年月n”); printf(“ttt4-----修改學(xué)生生源地n”); printf(“ttt5-----修改學(xué)生電話n”); printf(“ttt0-----退出系統(tǒng)n”); printf(“ttt請選擇:”); scanf(“%d”,&i); switch(i) {case 1: printf(“t請輸入學(xué)生姓名:”); scanf(“%s”,&a[f].name); printf(“ttt0-----退出系統(tǒng)n”); printf(“ttt請選擇:”);break; case 2: printf(“t請輸入學(xué)生性別:”); scanf(“%s”,&a[f].sex);break; case 3: printf(“t請輸入學(xué)生出生年月:”); scanf(“%ld”,&a[f].date);break; case 4: printf(“t請輸入學(xué)生生源地:”); scanf(“%s”,&a[f].address);break; case 5: printf(“t請輸入學(xué)生電話:”); scanf(“%ld”,&a[f].tel);break; case 0:break; } }while(i!=0); /* fwrite(&a[f-1],sizeof(STU),1,fp);* printf(“修改后信息:”); printf(“nnntt學(xué)號t姓名t性別t出生年月t生源地t電話號碼nn”); printf(“t%ldt%st%st%ldt%ldt%ldt%st%ld”,a[f-1].num,a[f-1].name,a[f-1].sex,a[f-1].date,a[f-1].address,a[f-1].tel); fseek(fp,(-1)sizeof(STU),0); fwrite(&a[f-1],sizeof(STU),1,fp); fclose(fp); getchar(); }*/ void search()/*查詢*/ { int w; char name[10]; long num; char add[30]; STUa; FILE *fp; system(“cls”); fp=fopen(“d:學(xué)生檔案”,“r”); if(fp==NULL) { printf(“無法打開n”); exit(0); } printf(“ttt1----按姓名查詢n”); printf(“ttt2----按學(xué)號查詢n”); printf(“ttt3----按生源地查詢n”); printf(“t輸入查詢的方式”); scanf(“%d”,&w); switch(w) { case 1: { printf(“請輸入要查學(xué)生姓名:”); scanf(“%s”,name); while(fread(&a,sizeof(STU),1,fp)!=0) {if(strcmp(name,a.name)==0) printf(“t%ldt%st%st%ldt%ldt%ldt%st%ld”,a.num,a.name,a.sex,a.year,a.month,a.date,a.address,a.tel); } break;getchar();getchar(); } case 2: { printf(“請輸入要查學(xué)生學(xué)號:”); scanf(“%ld”,&num); while(fread(&a,sizeof(STU),1,fp)!=0) {if(num==a.num) printf(“t%ldt%st%st%ldt%ldt%ldt%st%ld”,a.num,a.name,a.sex,a.year,a.month,a.date,a.address,a.tel); }break; } case 3: { printf(“請輸入要查學(xué)生生源地:”); scanf(“%s”, add); while(fread(&a,sizeof(STU),1,fp)!=0) {if(strcmp(add,a.address)==0) printf(“t%ldt%st%st%ldt%ldt%ldt%st%ld”,a.num,a.name,a.sex,a.year,a.month,a.date,a.address,a.tel); } } } fclose(fp); printf(“ntpress any key to continue...”); getchar();getchar(); } void delet() { long num,f=0; STU a,*head,*p1,*p2;head=NULL;p1=p2=(STU *)malloc(sizeof(STU));FILE *fp; fp=fopen(“d:學(xué)生檔案.dat”,“rb”); if(fp==NULL){ printf(“error!”);return;} system(“cls”); printf(“n input the deleted number:”); scanf(“%ld”,&num); p1=head; while(num!=p1->num&&p1->next!=NULL) {p2=p1;p1=p1->next;} if(num==p1->num) { if(p1==head) head=p1->next; else p2->next=p1->next; free(p1); } else printf(“%ld 查無此人!n”,num); } void main() {int a; do { system(“cls”); printf(“nntt五組學(xué)生檔案信息管理系統(tǒng)nn”); printf(“ttt1...錄入學(xué)生檔案信息n”); printf(“ttt2...顯示學(xué)生檔案信息n”); printf(“ttt3...查詢學(xué)生檔案信息n”); printf(“ttt4...修改學(xué)生檔案信息n”);printf(“ttt5...刪除學(xué)生檔案信息n”);printf(“ttt0-----退出系統(tǒng)n”);printf(“ttt請選擇:”); scanf(“%d”,&a); switch(a) { case 1:input();break;case 2:list();break; case 3:search();break;//case 4:modify();break;case 5:delet();break;case 0:break; } }while(a!=0); }; 對于java中SSH框架的理解 SSH 是指 Struts+ spring+ hibernate 的一個集成框架,這是一種比較流行的java web應(yīng)用程序開源框架。 Struts Struts是一個基于Sun J2EE平臺的MVC框架,主要采用Servlet和JSP技術(shù)來實現(xiàn)的。由于Struts能充分滿足引用開發(fā)的需求,簡單易用,敏捷迅速,所以很受關(guān)注。Struts 吧Servlet、JSP、自定義標(biāo)簽和信息資源(message resource)整合到一個統(tǒng)一的框架中,開發(fā)人員利用其進(jìn)行開發(fā)室不用再自己編寫實現(xiàn)全套的MVC模式,極大的節(jié)省了時間。 Spring Spring是一個解決了許多在J2EE開發(fā)中常見的問題的強(qiáng)大框架。Spring提供了管理業(yè)務(wù)對象的一致方法并且鼓勵了注入對接口編程而不是對類編程的良好習(xí)慣。 Spring的架構(gòu)基礎(chǔ)是基于JavaBean屬性的Inversion of Control 容器。然而,這僅僅是完整圖景中的一部分:在Spring使用IOC容器作為構(gòu)建完關(guān)注所有架構(gòu)層的完整解決方案是獨(dú)一無二的。Spring提供了唯一的數(shù)據(jù)訪問抽象,包括簡單和有效率的JDBC框架,極大的改進(jìn)了效率并且減少了可能的錯誤。Spring的數(shù)據(jù)訪問架構(gòu)還集成了Hibernate 和其他O/R mapping 解決方案。Spring還提供了唯一的事物管理抽象。它能夠在各種底層事務(wù)管理技術(shù),例如JTA 或者JDBC事務(wù)提供一個一致的編程模型。Spring提供了一個標(biāo)準(zhǔn)Java語言編寫的AOP框架,他給POJOs提供了聲明式的事務(wù)管理和其他企業(yè)事務(wù)——如果有必要還可以實現(xiàn)自己的aspects。這個框架提供了可以和IOC容器集成的強(qiáng)大而靈活的MVC web框架。 Hibernate Hibernate 是一個開放源代碼的對象關(guān)系映射框架,它對JDBC進(jìn)行了非常輕量級的對象封裝,是的java程序員可以隨心所欲的適用對象編程思維來操控數(shù)據(jù)庫。Hibernate 可以應(yīng)用在任何使用JDBC的場合,既可以在java客戶端程序中使用,也可以在Servlet/jsp的web應(yīng)用中使用,其最具革命性意義的是:Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。 在SSH的組合框架模式中,三者各自的作用 Struts 是一個很好的MVC框架,主要技術(shù)是Servlet和JSP。Struts的MVC設(shè)計模式可以讓我們的邏輯思維變得很清晰,讓我們寫程序?qū)哟畏置鳌?/p> Spring提供了管理業(yè)務(wù)對象的一致方法,并鼓勵注入對接口編程而不是對類編程的良好習(xí)慣,使我們的產(chǎn)品在最大程度上解耦。 Hibernate 是用來持久化數(shù)據(jù)的,提供了完全面向?qū)ο蟮臄?shù)據(jù)庫操作。Hibernate對JDBC進(jìn)行了非常輕量級的封裝,使得他與關(guān)系型數(shù)據(jù)庫打交道變得非常輕松。 負(fù)責(zé)Web層: ActionFormBean接收網(wǎng)頁中表單提交的數(shù)據(jù),然后通過Action進(jìn)行處理,再Forward到對應(yīng)的網(wǎng)頁,在Struts-config.xml中定義了 Spring負(fù)責(zé)業(yè)務(wù)層管理,即Service: Service為Action提供統(tǒng)一的調(diào)用接口,封裝持久層的DAO,并集成Hibernate,Spring可對JavaBean和事物進(jìn)行統(tǒng)一管理。 Hibernate負(fù)責(zé)持久層,完成數(shù)據(jù)庫的CRUD操作: Hibernate有一組hbm.xml文件和PO,是與數(shù)據(jù)庫中的表相對應(yīng)的,然后定義DAO,這些是與數(shù)據(jù)庫打交道的類。 在Struts+Spring+Hibernate系統(tǒng)中,對象之間的調(diào)用流程如下: Struts——>Spring——>Hibernate JSP——>Action——>Service——>DAO——>Hibernate 學(xué)生檔案信息管理系統(tǒng)的設(shè)計與實現(xiàn) 商學(xué)院: 楊鋼勇 洪興平指導(dǎo)老師:曾祥光 摘要:高校學(xué)生檔案管理是高校日常管理的一個重要組成部分,其管理效率的高低直接影響著整個學(xué)校的管理工作。現(xiàn)代是以網(wǎng)上手段為主,兼容面授、函授等多種媒體優(yōu)化組合的學(xué)習(xí)方式。學(xué)生檔案信息管理系統(tǒng)是二十一世紀(jì)現(xiàn)代遠(yuǎn)程教育的發(fā)展方向。本文探討了學(xué)生檔案信息管理系統(tǒng)的設(shè)計與實現(xiàn)。 關(guān)鍵詞:學(xué)生信息管理系統(tǒng),B/S架構(gòu) University students' archives management in colleges and universities is the daily management is an important part, its management efficiency directly affects the whole school management work.Modern is online means is given priority to, compatible face to award, correspondence and so on the many kinds of media optimized combination ways of learning.Students file information management system is the 21st century modern distance education development direction.This paper discusses the student file information management system design and implementation.Keywords: students' information management system, B/S structure 一 緒論 1.1 背景介紹 面對信息時代的挑戰(zhàn),網(wǎng)絡(luò)的功能越來越強(qiáng),國內(nèi)教育系統(tǒng)也在積極建設(shè)或升級計算機(jī)網(wǎng)絡(luò),并已建成了規(guī)模較大的中國教育科研網(wǎng),全國許多學(xué)校也紛紛建立或升級自己的校園網(wǎng)絡(luò)系統(tǒng),但是,目前校園網(wǎng)的利用率卻不是很高,主要原因是缺少好的網(wǎng)絡(luò)應(yīng)用平臺。以前開發(fā)的MIS系統(tǒng)往往是在單機(jī)上運(yùn)行,或者采用C/S技術(shù)開發(fā)出來的,對于今天因特網(wǎng)時代來說,這些系統(tǒng)很大程度上已經(jīng)不能滿足用戶隨時隨地獲取信息的需要,再者由于高校的擴(kuò)招,在校學(xué)生人數(shù)的增加,使得開發(fā)B/S結(jié)構(gòu)的MIS是勢在必行。本文正是在這種背景下提出的,目的是為了開發(fā)和設(shè)計出一套功能完善、操作便捷、及時性好、適用面廣的高校學(xué)生檔案管理系統(tǒng),以提高高校學(xué)生檔案管理的效率。 1.2 基于B/S結(jié)構(gòu)的應(yīng)用系統(tǒng)簡介 當(dāng)前,管理信息系統(tǒng)(MIS)一般分為基于單機(jī)的集中式的MIS、基于C/S結(jié)構(gòu)的MIS以及基于B/S結(jié)構(gòu)的MIS。 客戶/服務(wù)器結(jié)構(gòu):即Client/Server結(jié)構(gòu),它的基本思想是應(yīng)用程序或應(yīng)用邏輯可以根據(jù)需要劃分在服務(wù)器和客戶工作站中,它可以使應(yīng)用程序合理負(fù)擔(dān)在服務(wù)器和客戶端。瀏覽器/服務(wù)器結(jié)構(gòu):即Browser/Server結(jié)構(gòu),它的基本思想與C/S結(jié)構(gòu)相似,應(yīng)用程序或應(yīng)用邏輯可以根據(jù)需要劃分在服務(wù)器端和客戶端中。 二 高校學(xué)生檔案管理系統(tǒng)的需求分析 2.1問題定義 1.提出問題:如何設(shè)計和實現(xiàn)一個高校學(xué)生檔案管理系統(tǒng)。 2.問題性質(zhì):即設(shè)計一個基于網(wǎng)絡(luò)的優(yōu)秀的學(xué)生信息檔案管理系統(tǒng)。3.應(yīng)用領(lǐng)域:各大高校的學(xué)生管理部門。4.工程設(shè)計目標(biāo): (1)目標(biāo)系統(tǒng)應(yīng)該是一個功能完善的應(yīng)用系統(tǒng)。該系統(tǒng)應(yīng)當(dāng)具有:檔案上傳功能,檔案更新功能、檔案刪除功能、檔案查詢功能,系統(tǒng)管理功能等。 (2)目標(biāo)系統(tǒng)應(yīng)該具有友好的用戶界面。該系統(tǒng)采用基于B/S結(jié)構(gòu)的操作界面。(3)此系統(tǒng)應(yīng)滿足不同地點的終端用戶都可以使用此系統(tǒng)。5.總體目標(biāo) 學(xué)生信息管理系統(tǒng)的設(shè)計與實現(xiàn)包括后臺數(shù)據(jù)庫的建立維護(hù)和前臺各種窗體展現(xiàn)兩方面的功能。后臺數(shù)據(jù)庫的建立維護(hù)要靠建立表來完成,以此來存儲與學(xué)生相關(guān)的信息。前臺窗體的展現(xiàn)要靠在數(shù)據(jù)庫中建立窗體來實現(xiàn),要求能夠保護(hù)數(shù)據(jù)庫的安全,提示用戶如何更好地使用該系統(tǒng)等多項功能。學(xué)生信息管理系統(tǒng)的總目標(biāo)是對學(xué)生信息進(jìn)行存儲、查詢、修改和刪除等操作。 可行性分析 2.2.1 對現(xiàn)有系統(tǒng)的分析 目前,在不少大、中專院校學(xué)生檔案管理系統(tǒng)都是單機(jī)的MIS,甚至有的還是手工方式。這種單機(jī)的管理系統(tǒng)不僅工作方式效率是極低,而且存在許多弊端,主要包括: 1.檔案錄入效率低下:例如每學(xué)期開學(xué),數(shù)以千計的學(xué)生檔案都由學(xué)生處負(fù)責(zé)錄入,這個工程量之大,可想而知。 2.查詢不便:例如,某個系部要調(diào)出某個學(xué)生的檔案,由于系部沒有管理檔案的權(quán)限,他就必須到學(xué)生處去調(diào)這個學(xué)生的檔案。 3.畢業(yè)生轉(zhuǎn)檔不便:每年大量畢業(yè)生,他們都要轉(zhuǎn)走自已的檔案。在這個過程中,若沒有管理信息系統(tǒng)的參與,工作繁重不可言喻。 2.2.2 設(shè)計技術(shù)和設(shè)計工具 本高校學(xué)生檔案管理系統(tǒng)中,將使用Dreamweaver和ASP、Microsoft Access作為開發(fā)工具。 1.網(wǎng)站構(gòu)架平臺Dreamweaver.Dreamweaver 提供視覺化網(wǎng)頁開發(fā)工具,同時不會降低HTML原始碼的控制,Dreamweaver 提供的 Roundtrip HTML 功能,可以無誤地切換于視覺模式與慣用的原始碼編輯器,拖放式的表格與頁框設(shè)計以及以透過資料庫來管理網(wǎng)站的內(nèi)容更新。2.ASP語言簡介.ASP是 Active Server Pages(動態(tài)服務(wù)器主頁)的縮寫,它是一個服務(wù)器端的腳本環(huán)境,在站點的Web服務(wù)器上解釋腳本,可產(chǎn)生并執(zhí)行動態(tài)、交互式、高效率的站點服務(wù)器應(yīng)用程序。因此利用ASP完全可以實現(xiàn)本系統(tǒng)。3.數(shù)據(jù)庫支持 Microsoft Access就是關(guān)系數(shù)據(jù)庫開發(fā)工具,數(shù)據(jù)庫能匯集各種信息以供查詢、存儲和檢索。4.系統(tǒng)流程圖 系統(tǒng)流程圖是描繪未來物理系統(tǒng)的的傳統(tǒng)工具,下面是該系統(tǒng)的流程圖: 三、詳細(xì)設(shè)計 該系統(tǒng)主要實現(xiàn)學(xué)生信息的瀏覽、查詢、編輯、刪除,可以對于選定的信息生成word文檔。 1、學(xué)生查詢系統(tǒng)主頁的設(shè)計: 根據(jù)以前學(xué)習(xí)過的html編程語言對主頁進(jìn)行設(shè)計,以表格的形式顯示學(xué)生信息,再通過鏈接到該系統(tǒng)下其他功能的頁面進(jìn)行功能操作。頁面文字字體大小顏色等套用css文件,是的主頁代碼更為簡潔 2、學(xué)生信息系統(tǒng)查詢模塊: 根據(jù)實驗要求,可以根據(jù)學(xué)院、班級、學(xué)號、姓名字段查詢學(xué)生信息。在主頁上建立了這四個字段的查詢?nèi)肟冢c擊查詢按鈕后自動跳轉(zhuǎn)到查詢頁面,執(zhí)行查詢操作并先是查詢結(jié)果。 3、系統(tǒng)模塊設(shè)計 3.1用戶登錄模塊 3.1.1界面設(shè)計 功能描述:在用戶登錄時,首先判斷登錄用戶名和用戶密碼是否正確,是否具有登錄本系統(tǒng)的權(quán)限,根據(jù)不同的權(quán)限可以進(jìn)入不同系統(tǒng)界面。單擊“登錄”按鈕后,對用戶名、密碼和權(quán)限進(jìn)行驗證。 3.1.2主要代碼設(shè)計 單擊“登錄”按鈕所執(zhí)行的后臺代碼進(jìn)行操作。 3.2.1管理員教師 模塊 1主界面設(shè)計 功能描述:用戶以用戶名admin,密碼123登錄系統(tǒng)后,將進(jìn)入管理員界面。教師進(jìn)入系統(tǒng)后的默認(rèn)模塊,這個模塊包括了本系統(tǒng)管理員所能完成的各種功能,包括學(xué)生管理、班級管理、教師管理、課程管理、選課管理和成績管理功能。用戶可以調(diào)用任一個需要的功能模塊進(jìn)入相應(yīng)的界面。此外,在此頁面中還會顯示用戶的昵稱。 模塊 2學(xué)生管理界面設(shè)計 功能描述:管理員在登錄后的主頁面點擊左側(cè)導(dǎo)航欄的學(xué)生管理后即進(jìn)入此頁面,管理員可以對學(xué)生信息進(jìn)行編輯、刪除以及更新操作。 模塊3班級管理界面設(shè)計 功能描述:管理員在登錄后的主頁面點擊左側(cè)導(dǎo)航欄的班級管理后即進(jìn)入此頁面。管理員可以對班級信息進(jìn)行編輯、刪除以及更新操作。 模塊4教師管理界面設(shè)計 功能描述:管理員在登錄后的主頁面點擊左側(cè)導(dǎo)航欄的教師管理后即進(jìn)入此頁面。通過后臺的功能代碼把教師信息表與GridView建立數(shù)據(jù)綁定以顯示數(shù)據(jù)信息,管理員可以對教師信息進(jìn)行編輯、刪除以及更新操作。 模塊6選課管理界面設(shè)計 功能描述:管理員在登錄后的主頁面點擊左側(cè)導(dǎo)航欄的選課管理后即進(jìn)入此頁面。通過后臺的功能代碼把學(xué)生信息表、學(xué)生課程表和教師課程表與GridView建立數(shù)據(jù)綁定以顯示數(shù)據(jù)信息,管理員可以對其進(jìn)行刪除操作。 模塊七 成績管理界面設(shè)計 功能描述:管理員在登錄后的主頁面點擊左側(cè)導(dǎo)航欄的成績管理后即進(jìn)入此頁面。通過后臺的功能代碼把學(xué)生信息表、學(xué)生課程表和課程表與GridView建立數(shù)據(jù)綁定以顯示數(shù)據(jù)信息,管理員可以對其進(jìn)行編輯、刪除以及更新操作。 3.2.2普通用戶學(xué)生 模塊 1主界面設(shè)計 功能描述:學(xué)生登錄系統(tǒng)后,將進(jìn)入學(xué)生主界面。這是普通用戶學(xué)生,進(jìn)入系統(tǒng)后的默認(rèn)模塊,這個模塊包括了本系統(tǒng)普通用戶所能完成的各種功能,包括個人信息、課程信息、班級信息、選課瀏覽、成績查詢和學(xué)生個人密碼修改功能,用戶可以調(diào)用任一個需要的功能模塊進(jìn)入相應(yīng)的界面。此外,在此頁面中還可以顯示用戶的昵稱和用戶上傳的頭像。 模塊2個人信息界面設(shè)計 功能描述:普通用戶學(xué)生在登錄后的主頁面點擊左側(cè)導(dǎo)航欄的個人信息后即進(jìn)入此頁面。在此頁面中,學(xué)生可以查看自己的基本信息。模塊3課程信息界面設(shè)計 功能描述:普通用戶學(xué)生在登錄后的主頁面點擊左側(cè)導(dǎo)航欄的課程信息后即進(jìn)入此頁面。在此頁面中,學(xué)生可以查看自己所需課程的基本信息。模塊4選課瀏覽界面設(shè)計 功能描述:普通用戶學(xué)生在登錄后的主頁面點擊左側(cè)導(dǎo)航欄的選課瀏覽后即進(jìn)入此頁面。在此頁面中學(xué)生可以查看自己所選課程的基本信息。如果學(xué)生還沒選課,則還可以在此頁面中選擇自己所需的課程。模塊5.學(xué)生密碼修改界面設(shè)計 功能描述:普通用戶學(xué)生在登錄后的主頁面點擊左側(cè)導(dǎo)航欄的修改密碼后即進(jìn)入此頁面。在此頁面中學(xué)生輸入自己的用戶名和原密碼后,單擊“修改密碼”即可進(jìn)行密碼的修改。 系統(tǒng)實現(xiàn)和維護(hù) 4.1系統(tǒng)調(diào)試 系統(tǒng)的編碼和測試通稱為系統(tǒng)的實現(xiàn)。在經(jīng)過了對VS2008和SQL Server 2005初步學(xué)習(xí)的基礎(chǔ)上,基本上完成了學(xué)生信息管理系統(tǒng)。系統(tǒng)開發(fā)的各個階段包含了大量的腦力、體力勞動但是人的活動和運(yùn)用的工具存在著缺陷。在開發(fā)過程中難免存在著一定的錯誤,因此,系統(tǒng)完成設(shè)計后就必須對系統(tǒng)進(jìn)行必要的調(diào)試,系統(tǒng)調(diào)試是系統(tǒng)質(zhì)量的保證,是對需求分析、系統(tǒng)設(shè)計和編碼的不斷復(fù)審,盡可能早點發(fā)現(xiàn)錯誤與缺陷,以改進(jìn)和提高系統(tǒng)質(zhì)量及可靠性。4.2系統(tǒng)維護(hù) 系統(tǒng)維護(hù)在一個系統(tǒng)中起著極其重要的作用。一個功能完善的系統(tǒng)要求有完善的維護(hù)模塊,以備系統(tǒng)的管理、維護(hù)、更新周密考慮用戶的需要,做到系統(tǒng)的完整性和數(shù)據(jù)的安全性、有效性以適應(yīng)實際應(yīng)用的需要。因此設(shè)計一個功能完善的備份和恢復(fù)模塊是很有必要的,技術(shù)上要求能夠?qū)崿F(xiàn)備份和恢復(fù)不同類型的數(shù)據(jù),方便快捷的操作界面,完善的存取路徑。總結(jié)與展望 在本系統(tǒng)的設(shè)計過程中,由于是初次很系統(tǒng)的設(shè)計軟件,在知識、經(jīng)驗方面都存在著不足。另外,在整個設(shè)計的過程中,時間也比較倉促。因此,該系統(tǒng)必然會存在一些缺陷和不足。因為對學(xué)生管理的整個流程不夠熟悉,在需求分析時未能做到完全滿足用戶的需求。雖然網(wǎng)絡(luò)在學(xué)生管理系統(tǒng)中的應(yīng)用不是很多,但這將會是未來的發(fā)展方向。盡管本管理系統(tǒng)存在著很多不足,但其功能全面、易于日后程序更新、數(shù)據(jù)庫管理容易、界面友好、操作方便、效率高、安全性好等優(yōu)點是本管理系統(tǒng)所必需的。相信本學(xué)生信息管理系統(tǒng)是一套學(xué)校在日常管理中必不可少的管理軟件,通過設(shè)計這個系統(tǒng)我又加深了對SQL Server的了解,鞏固了對ASP.Net的學(xué)習(xí),但在這次信息系統(tǒng)的設(shè)計中的最大收獲并不是掌握這幾門開發(fā)工具的應(yīng)用而是學(xué)會了設(shè)計系統(tǒng)的思維方法以及如何處理遇到的一些編譯問題的能力。但是總的來說,這次的設(shè)計對我來說是一次非常難得的鍛煉機(jī)會。在這期間也得到了指導(dǎo)老師曾祥光老師很多的支持和幫助。 基于SSH的圖書館管理系統(tǒng)的設(shè)計與實現(xiàn) 摘要: 通過對圖書館管理系統(tǒng)的運(yùn)行管理機(jī)制進(jìn)行調(diào)查研究,采用Java編程技術(shù)和MySQL數(shù)據(jù)庫,在MyEclipse 集成開發(fā)環(huán)境下應(yīng)用SSH框架,完成了圖書館管理系統(tǒng)的設(shè)計全過程。本系統(tǒng)在開發(fā)過程中采用B/S結(jié)構(gòu),運(yùn)用面向?qū)ο蟮拈_發(fā)技術(shù),實現(xiàn)了瀏覽器端和服務(wù)器端的各自功能,其中瀏覽器端主要實現(xiàn)了讀者登錄、查詢、超期提醒等功能,服務(wù)器端主要實現(xiàn)了系統(tǒng)設(shè)置、讀者管理、圖書管理、用戶管理、圖書借還、系統(tǒng)查詢、更改密碼等管理員功能。系統(tǒng)通過Hibernate和數(shù)據(jù)庫進(jìn)行連接,有效解決了數(shù)據(jù)庫連接及訪問過程中的安全性及效率問題,提高了系統(tǒng)的可靠性及運(yùn)行效率。論文較詳細(xì)地敘述了該系統(tǒng)開發(fā)實現(xiàn)的全過程,并對具體關(guān)鍵技術(shù)及開發(fā)中遇到的問題進(jìn)行了詳盡的描述。關(guān)鍵詞: 圖書館管理 SSH 借閱查詢 圖書借還 1 引言 隨著計算機(jī)的廣泛應(yīng)用,圖書館管理系統(tǒng)逐步成為現(xiàn)代化的標(biāo)志。圖書館或者一些企業(yè)內(nèi)部,甚至是書店,在正常運(yùn)行過程中總是面對大量的讀者信息,書籍信息以及兩者相互作用產(chǎn)生的借書信息、還書信息。因此需要對讀者資源、書籍資源、借書信息、還書信息進(jìn)行管理,及時了解各個環(huán)節(jié)中信息的變更,要對因此而產(chǎn)生的單據(jù)進(jìn)行及時的處理,為了提高圖書館或者企業(yè)內(nèi)部對圖書存銷的自動化的管理,能夠更快速的滿足讀者的要求,提高各種工作的效率,現(xiàn)對其設(shè)計相應(yīng)的系統(tǒng),以達(dá)到上述的目的。準(zhǔn)備建立一個圖書館管理系統(tǒng),使圖書管理工作規(guī)范化、系統(tǒng)化、程序化,提高信息處理的速度和準(zhǔn)確性,能夠及時準(zhǔn)備,有效的查詢和修改圖書的情況。 圖書館管理系統(tǒng)的主要功能是實現(xiàn)圖書館圖書借閱和歸還的管理的自動化,圖書新增及銷毀的及時化,用戶及圖書信息的更新。圍繞這一主要功能,本系統(tǒng)涉及到以下核心功能:借閱管理、歸還管理、圖書管理、讀者管理、用戶管理。除了這些核心功能外,還包括一些基本和輔助功能,它們是:系統(tǒng)查詢、系統(tǒng)設(shè)置。 管理系統(tǒng),方便實現(xiàn)圖書查詢、借閱管理等功能,提高工作效率和工作質(zhì)量,有利于對整個業(yè)務(wù)發(fā)展趨勢進(jìn)行分析,具有重要的開發(fā)價值和應(yīng)用意義。2.2 解決方案 系統(tǒng)采用B/S模式、面向?qū)ο蟮脑O(shè)計方法,用Java技術(shù),以關(guān)系型數(shù)據(jù)庫MySql作為后臺數(shù)據(jù)庫,MyEclipse 8.5作為開發(fā)環(huán)境下應(yīng)用SSH框架進(jìn)行開發(fā)設(shè)計[1]。考慮到瀏覽器端、服務(wù)器端對數(shù)據(jù)庫的操作,決定利用Hibernate持久化框架來操縱數(shù)據(jù)庫。2.3 可行性分析 可行性研究是為了弄清楚系統(tǒng)開發(fā)的項目是不是可以實現(xiàn)和值得進(jìn)行研究的過程,實際上是一次大大簡化系統(tǒng)分析和系統(tǒng)設(shè)計的過程[2],所以進(jìn)行可執(zhí)行性的分析是非常必要的,也是十分重要的,經(jīng)過最初的設(shè)計目標(biāo)和進(jìn)行的市場調(diào)查得出以下四點的可行性分析。1.技術(shù)可行性 技術(shù)上的可行性分析主要分析技術(shù)條件能否順利完成開發(fā)工作,軟、硬件能否滿足需要。 Java語言[3]是一個支持網(wǎng)絡(luò)計算的面向?qū)ο蟪绦蛟O(shè)計語言,現(xiàn)在Java平臺已經(jīng)嵌入了幾乎所有的操作系統(tǒng),這樣Java程序可以只編譯一次,就可以在各種系統(tǒng)中運(yùn)行。因此系統(tǒng)采用其開發(fā),在技術(shù)上完全可行。 MySQL是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它也支持Linux、Windows等多種操作系統(tǒng),且能為Java 提供API;支持多線程,能夠充分利用CPU資源,優(yōu)化的SQL查詢算法;還提供了TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫連接途徑。是一個集管理、檢查、優(yōu)化數(shù)據(jù)庫操作的管理工具。因此系統(tǒng)采用其作為服務(wù)器端數(shù)據(jù)庫,在技術(shù)上完全可行。硬件方面,在科技飛速發(fā)展的今天,硬件更新速度越來越快,容量越來越大,可靠性越來越高,價格越來越便宜,因此硬件平臺也能夠滿足本系統(tǒng)所需。 系統(tǒng)使用的是目前較流行的一種Web應(yīng)用程序開源框架即SSH框架[4]。集成SSH框架的系統(tǒng)從職責(zé)上分為四層:表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)持久層和域模塊層[13],以幫助開發(fā)人員在短期內(nèi)搭建結(jié)構(gòu)清晰、可復(fù)用性好、維護(hù)方便的Web應(yīng)用程序。其中使用Struts作為系統(tǒng)的整體基礎(chǔ)架構(gòu),負(fù)責(zé)MVC的分離,在Struts框架的模型部分,利用Hibernate框架對持久層提供支持,業(yè)務(wù)層用Spring支持。具體做法是:用面向?qū)ο蟮姆治龇椒ǜ鶕?jù)需求提出一些模型,將這些模型實現(xiàn)為基本的Java對象,然后編寫基本的DAO接口,并給出Hibernate的DAO實現(xiàn),采用Hibernate架構(gòu)實現(xiàn)的DAO類來實現(xiàn)Java類與數(shù)據(jù)庫之間的轉(zhuǎn)換和訪問,最后由Spring完成業(yè)務(wù)邏輯。2.經(jīng)濟(jì)可行性 鑒于計算機(jī)技術(shù)發(fā)展異常迅猛,在硬件軟件配置以及開發(fā)技術(shù)均以可行的情況下開發(fā)這樣一個管理系統(tǒng)成本不會很高,但其可以大大提高圖書館的工作效率,也是圖書館管理發(fā)展的必然趨勢,其必將有比較寬闊的市場,因此該系統(tǒng)在經(jīng)濟(jì)可行性上是可行的。3.運(yùn)行可行性 圖書館管理系統(tǒng)是基于B/S模式的,因此在任意一臺聯(lián)網(wǎng)的計算機(jī)上只要正確登錄就可完成圖書查詢、借閱查詢等操作了,對用戶來說方便、快捷。4.法律可行性 因為該平臺是作為畢業(yè)設(shè)計與商業(yè)無關(guān),又因為是自主開發(fā)設(shè)計,因此不會構(gòu)成侵權(quán),在法律上是可行的。2.4 用戶需求 通過對圖書館管理流程的分析與研究,以及與讀者和圖書館管理員的交流,得出用戶對系統(tǒng)功能的實際需求。2.4.1 系統(tǒng)的基本信息 1.圖書的基本信息 圖書館具有若干圖書,圖書有出版社、圖書名稱、圖書編號、ISBN編號、圖書類型等信息。讀者可以任意選擇圖書館的某本圖書。2.用戶的基本信息 用戶通過身份驗證登錄系統(tǒng),執(zhí)行相應(yīng)權(quán)限的操作;包括登錄名,登錄密碼,用戶姓名,用戶類型,權(quán)限等。3.讀者的基本信息 圖書館具有若干讀者,讀者有讀者姓名、讀者編號、證件號、讀者類型等信息。4.查詢的基本信息 讀者通過相應(yīng)查詢條件查詢圖書信息和自身借閱詳情以及超期罰款情況;管理員通過相應(yīng)查詢條件查詢圖書信息,讀者信息,借閱情況和超期查詢詳情。5.借還業(yè)務(wù)的基本信息 管理員根據(jù)讀者的要求進(jìn)行查詢,在查詢的基礎(chǔ)之上輸入讀者的信息(讀者姓名、證件號),等待讀者核對信息、確認(rèn)。執(zhí)行相應(yīng)的操作。 3.1 系統(tǒng)總體設(shè)計 根據(jù)需求分析,得出本系統(tǒng)前后臺兩種不同權(quán)限要求[5],前臺要求實現(xiàn)查詢圖書、借閱詳情等操作,后臺要求能夠?qū)D書信息、讀者信息、用戶信息、系統(tǒng)查詢、圖書借還、系統(tǒng)設(shè)置等分別進(jìn)行管理。系統(tǒng)功能模塊劃分如圖3.1所示。后臺信息管理子系統(tǒng)各模塊功能描述如下。 (1)圖書管理模塊:對圖書的基本信息進(jìn)行管理,可以對圖書的基本信息進(jìn)行添加、修改、刪除、詳細(xì)信息查詢操作,均是針對bookinfo表進(jìn)行的,并將操作后的結(jié)果保存在該表中。 (2)讀者管理模塊:對讀者的基本信息進(jìn)行管理,可以對讀者的基本信息進(jìn)行添加、修改、刪除、詳細(xì)信息查詢操作,均是針對readerinfo表進(jìn)行的,并將操作后的結(jié)果保存在該表中。圖3.1 系統(tǒng)結(jié)構(gòu)圖 (3)用戶管理模塊:對用戶的基本信息進(jìn)行管理,可以對用戶的基本信息進(jìn)行添加、修改、刪除操作,均是針對manager表進(jìn)行的,并將操作后的結(jié)果保存在該表中其中最主要的是對用戶權(quán)限進(jìn)行設(shè)置(系統(tǒng)管理員特有)。(4)系統(tǒng)查詢:根據(jù)查詢條件查看圖書信息,讀者信息,借閱詳情。(5)圖書借還:包括圖書借閱,續(xù)借,歸還(超期罰款),超期查詢等操作。(6)系統(tǒng)設(shè)置:設(shè)置圖書館信息(系統(tǒng)管理員特有),實現(xiàn)信息發(fā)布。(7)管理員密碼修改:管理員可以修改自己的密碼。前臺讀者信息查詢子系統(tǒng)各模塊功能描述如下。(1)讀者登錄模塊:對讀者身份進(jìn)行驗證。 (2)查詢模塊:對圖書信息,讀者自己借閱情況(包括超期處罰)進(jìn)行查詢。圖書館管理系統(tǒng) 前臺讀者登錄 后臺用戶登錄 系統(tǒng)主頁 查詢頁面 借閱及超期查詢 圖書查詢頁面 用戶管理 詳細(xì)信息 添加信息 更改信息 刪除信息 讀者管理 圖書管理 圖書借還 圖書借閱 圖書續(xù)借 圖書歸還 超期查詢 系統(tǒng)設(shè)置 消息發(fā)布 更改密碼 圖書館設(shè)置 查詢管理 圖書查詢 讀者查詢 借閱查詢 (3)超期提醒和罰款模塊:讀者登錄系統(tǒng)看到自己的超期借閱情況,并可查看超期詳情。 3.2 數(shù)據(jù)庫設(shè)計 3.2.1 概要設(shè)計 整個系統(tǒng)所包括的信息有圖書信息、讀者信息、圖書借閱信息、圖書歸還信息、系統(tǒng)用戶信息、讀者類型信息。可將這些信息抽象為下列系統(tǒng)所需要的數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)[2]。(1)圖書信息(條形碼,圖書名稱,類型,作者,譯者,出版社,ISBN,價格,所在書架,錄入時間,管理員編號等) (2)管理員權(quán)限表(編號,系統(tǒng)設(shè)置,讀者管理,圖書管理,圖書借還,系統(tǒng)查詢,用戶管理)(3)讀者信息(編號,姓名,性別,條形碼,讀者類型,出生年月,證件號碼,辦證日期,電話,郵箱,管理員編號等) (4)讀者類型(編號,名稱,可借閱書數(shù)量,可借閱書天數(shù))(5)圖書借閱信息(編號,讀者編號,圖書編號,借書時間,還書時間,管理員編號,是否續(xù)借過, 圖書名稱,讀者名稱) (6)管理員(編號,姓名,登錄名,登錄密碼,性別,管理員類型等)(7)圖書館信息(編號,名稱,圖書館所屬,電話,地址,郵箱,網(wǎng)址,創(chuàng)建日期,簡介)(8)圖書館參數(shù)信息(編號,辦證費(fèi)用,有效期限)(9)信息發(fā)布(編號,信息)表3.8 圖書證參數(shù)信息表parameter 字段名稱 數(shù)據(jù)類型 描述 約束 id int 編號 主鍵不為null cost varchar 借書證費(fèi)用 Null validity int 有效期限 Null 9.信息發(fā)布表結(jié)構(gòu)設(shè)計 管理員預(yù)留信息的發(fā)布。表的具體結(jié)果設(shè)計如表3.9所示。表3.9 信息發(fā)布表information 字段名稱 數(shù)據(jù)類型 描述 約束 id int 編號 主鍵不為null infomation varchar 發(fā)布的信息 Null time varchar 發(fā)布時間 Null 4 系統(tǒng)實施 4.1 系統(tǒng)架構(gòu)分析 框架是一個應(yīng)用程序的半成品,框架提供了可在應(yīng)用程序之間共享的、可復(fù)用的公共結(jié)構(gòu)。開發(fā)者把框架融入自己的應(yīng)用程序,并加以擴(kuò)展,以滿足特定需要[7]。 SSH框架是指Struts2 + Hibernate + Spring三大開源框架技術(shù)[8],用SSH技術(shù)進(jìn)行開發(fā),能夠提高開發(fā)效率,層次清晰。不僅實現(xiàn)了視圖、控制器與模型的徹底分離,而且還實現(xiàn)了業(yè)務(wù)邏輯層與持久層的分離。這樣無論前端如何變化,模型層只需很少的改動,并且數(shù)據(jù)庫的變化也不會對前端有所影響,大大提高了系統(tǒng)的可復(fù)用性。所以本系統(tǒng)應(yīng)用SSH框架。Struts2實現(xiàn)頁面的設(shè)計和請求的跳轉(zhuǎn)調(diào)用業(yè)務(wù)邏輯;Hibernate是jdbc的輕量級封裝,主要是基于持久層的,它是對數(shù)據(jù)庫的直接操作,利用hibernate.hbm.xml對數(shù)據(jù)庫中的表進(jìn)行關(guān)系映射,把數(shù)據(jù)庫中表對應(yīng)到相應(yīng)的類,它的屬性是數(shù)據(jù)庫各表的字段的關(guān)系映射;Spring通過依賴注入控制對象的生成和事務(wù)的處理[9]。4.2 數(shù)據(jù)庫操作接口設(shè)計 系統(tǒng)的設(shè)計中采用了通用的DAO接口[10],而不是直接寫訪問數(shù)據(jù)庫的實現(xiàn)類,這樣可以創(chuàng)建不同的實現(xiàn)類來實現(xiàn)接口。當(dāng)改變數(shù)據(jù)庫或數(shù)據(jù)庫訪問技術(shù)時,就可以編寫新的實現(xiàn)類,不用改變原來的代碼。以BorrowDao對借閱信息數(shù)據(jù)進(jìn)行訪問的接口為例,具體設(shè)計如下所示。 public interface BorrowDao { // 保存借閱信息操作 public void save(Borrowinfo borrowinfo);// 刪除操作 public void delete(Borrowinfo borrowinfo);// 更新借閱信息 public void update(Borrowinfo borrowinfo);// 通過Id獲得讀者的類型 public Readertype getReaerTypeById(int id);// 通過讀者的ID獲得借閱信息 public Borrowinfo findBorrowinfoById(int id);// 通過讀者的ID獲得該讀者所有的借閱圖書信息 public List public List public List public List public List SSH框架是指Struts2 + Hibernate + Spring三大開源框架技術(shù),用SSH技術(shù)進(jìn)行開發(fā),能夠提高開發(fā)效率,層次清晰[14]。5.1 Spring+Hibernate整合 將Spring與Hibernate整合是一個新的突破,因為Spring可以替換Hibernate與數(shù)據(jù)庫的連接。1.系統(tǒng)與數(shù)據(jù)庫的鏈接通過Spring的配置來完成。在applicationContext.xml文件中應(yīng)該配置如下內(nèi)容。 org.hibernate.dialect.MySQLDialect true 5.2 Spring+Struts2整合 必須在Web應(yīng)用啟動時,創(chuàng)建Spring的ApplicationContext實例。1.Spring配置在web.xml文件中的上下文監(jiān)聽器。 contextConfigLocation classpath*:spring/*.xml 1.先從最底層開發(fā),先開發(fā)POJO類,和Hibernate映射文件。它相當(dāng)于系統(tǒng)的數(shù)據(jù)庫層。 2.再開發(fā)DAO層,它是對于數(shù)據(jù)進(jìn)行持久化的一層,專門處理各種數(shù)據(jù)增、刪、改、查的功能。 3.第三是開發(fā)manager層,它相當(dāng)于軟件的業(yè)務(wù)邏輯層,即專門處理各種業(yè)務(wù)邏輯,實現(xiàn)系統(tǒng)的業(yè)務(wù)處理功能。 4.Action層,即軟件的表示層,處理action的接收與回復(fù)。第三篇:java的SSH框架總結(jié)(范文)
第四篇:學(xué)生檔案信息管理系統(tǒng)的設(shè)計與實現(xiàn)
第五篇:ssh實現(xiàn)圖書館管理系統(tǒng)