Java-EE架構(gòu)設計與開發(fā)教程課件第9章_第1頁
Java-EE架構(gòu)設計與開發(fā)教程課件第9章_第2頁
Java-EE架構(gòu)設計與開發(fā)教程課件第9章_第3頁
Java-EE架構(gòu)設計與開發(fā)教程課件第9章_第4頁
Java-EE架構(gòu)設計與開發(fā)教程課件第9章_第5頁
已閱讀5頁,還剩185頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

JavaEE課程設計案例(SSH)第九章JavaEE課程設計案例(SSH)第九章了解JavaEE課程設計要求掌握JavaEE集成框架開發(fā)過程學習內(nèi)容熟悉JavaEE中SSH框架的綜合應用熟悉后臺數(shù)據(jù)庫的設計原理掌握JavaEE模塊化開發(fā)步驟了解JavaEE課程設計要求掌握JavaEE集成框架開發(fā)課程設計簡述1需求分析2搭建開發(fā)環(huán)境

3功能流程設計方案4目錄CONTENTS平臺功能實現(xiàn)5課程設計簡述1需求分析2搭建開發(fā)環(huán)境3功能流程設計方案4目課程設計簡述1課程設計簡述1課程設計簡述本次課程設計使用了一套基于SSH的課程輔導教學系統(tǒng),它采用模塊化方式來開發(fā),完成具有不同用戶身份驗證登錄,上機代碼的上傳與下載,作業(yè)下載與提交,上機實驗演示系統(tǒng)(包括視頻演示與PPT演示),發(fā)布作業(yè)信息與學習資料管理,信息維護等相關(guān)功能的Web應用程序。課程設計簡述本次課程設計使用了一套基于SSH的課程輔導教學系課程設計簡述對于這套系統(tǒng)的基本要求如下:完成PPT的上傳和下載功能;完成作業(yè)下載與提交;完成上機實驗演示系統(tǒng);完成發(fā)布留言討論功能;完成發(fā)布系統(tǒng)公告功能;完成信息維護;完成不同用戶身份的驗證登錄,管理員,老師,學生登陸后進入不同界面,能夠使用不同功能,管理不同信息。課程設計簡述對于這套系統(tǒng)的基本要求如下:課程設計簡述其中,管理員負責老師信息管理,學生信息管理和公告管理,同時可以修改自己的登錄密碼。老師賬號和學生賬號必須由管理員導入后才能進行登錄。老師可以進行教學資料管理,教學視頻管理,信息交流管理,布置作業(yè)管理和個人信息管理。學生可以進行作業(yè)下載,作業(yè)管理和個人信息修改。課程設計簡述其中,管理員負責老師信息管理,學生信息管理和公告需求分析功能性描述設計思想2系統(tǒng)功能結(jié)構(gòu)需求分析功能性描述設計思想2系統(tǒng)功能結(jié)構(gòu)需求分析功能性描述項目需求分析是一個項目的開端,也是項目建設的基石。在以往建設失敗的項目中,大多數(shù)是由于需求分析的不明確而造成。需求分析是分析系統(tǒng)在功能上需要“實現(xiàn)什么”,而不是考慮如何去“實現(xiàn)”。需求分析的目標是把用戶對待開發(fā)軟件提出的“要求”或“需要”進行分析與整理,確認后形成描述完整、清晰與規(guī)范的文檔,確定軟件需要實現(xiàn)哪些功能,完成哪些工作。需求分析功能性描述項目需求分析是一個項目的開端,也是項目建設需求分析功能性描述課程輔導教學系統(tǒng)旨在解決老師和學生通過系統(tǒng)進行教與學,在系統(tǒng)幫助下進行學習或輔導教學的問題。主要實現(xiàn)教學資料(包括PPT)和視頻的上傳、下載以及在線瀏覽,作業(yè)的發(fā)布和提交,教師和學生的交流以及學生和學生之間的交流等功能。本系統(tǒng)使用管理員、老師、學生三種不同的用戶身份驗證登錄,不同的用戶身份權(quán)限不同。整個系統(tǒng)分為主要由老師信息管理,學生信息管理,系統(tǒng)公告管理,教學資料管理,教學視頻管理,信息交流管理,作業(yè)信息管理和個人信息管理等組成。其具體功能如下:需求分析功能性描述課程輔導教學系統(tǒng)旨在解決老師和學生通過系統(tǒng)需求分析功能性描述老師信息管理和學生信息管理:由管理員進行管理,可以對老師和學生的各類信息進行增加,刪除操作。只有老師或?qū)W生的信息被管理員增加到系統(tǒng)中后,該教師或?qū)W生才能登陸本系統(tǒng)。系統(tǒng)公告管理:由管理員進行管理,對系統(tǒng)公告進行增加、刪除操作。教學資料管理和教學視頻管理:由老師進行操作,對PPT、視頻、文本文檔或其他文件進行上傳和刪除操作。視頻上傳后,學生可以進行下載或在線播放。信息交流管理:由老師進行管理,可以發(fā)布留言信息,也可以對自己或?qū)W生發(fā)布的留言信息進行刪除操作。需求分析功能性描述老師信息管理和學生信息管理:由管理員進行管需求分析功能性描述作業(yè)信息管理:由老師和學生共同管理。老師可以發(fā)布作業(yè)任務并上傳相關(guān)附件,也可以刪除作業(yè)任務。老師上傳作業(yè)任務后,學生可以下載或在線瀏覽作業(yè)任務。學生完成作業(yè)任務,可以通過系統(tǒng)將作業(yè)上傳。這時老師能夠查看學生提交的作業(yè)任務信息,并給出評語,同時可以刪除學生完成的作業(yè)任務。登錄密碼管理:對自己可以在驗證舊密碼成功之后,修改新密碼。個人信息管理:除管理員可以對所有老師和學生用戶的信息進行管理外,老師或?qū)W生也可以對自己的個人信息進行修改。需求分析功能性描述作業(yè)信息管理:由老師和學生共同管理。老師可需求分析設計思想在平臺系統(tǒng)功能設計的過程當中,所遵循的思想為:為了滿足多數(shù)用戶瀏覽網(wǎng)頁的習慣,可以利用SSH當中的MVC模式,能徹底分開前臺頁面的處理和后臺服務器的操作。采用面向?qū)ο蠹夹g(shù)能使得整個系統(tǒng)的高度和準確抽象。這是整個Java語言的特點。劃分系統(tǒng),分成若干個小的功能塊,有利于代碼的重載,簡化設計和實現(xiàn)過程。將系統(tǒng)的界面設計的簡單友好。使用戶能夠快速的操作。為了更加全面的滿足用戶的需求,有任何可能需要修改進步的地方,都要很細致的完成修改,達到用戶的設計需求。需求分析設計思想在平臺系統(tǒng)功能設計的過程當中,所遵循的思想為需求分析系統(tǒng)功能結(jié)構(gòu)跟據(jù)系統(tǒng)功能需求,把整個系統(tǒng)分析來劃分成幾個功能模塊:管理員模塊,學生和老師模塊。系統(tǒng)的功能模塊如下圖所示:需求分析系統(tǒng)功能結(jié)構(gòu)跟據(jù)系統(tǒng)功能需求,把整個系統(tǒng)分析來劃分成搭建開發(fā)環(huán)境配置實例3搭建開發(fā)環(huán)境配置實例3MyBatis配置配置實例本系統(tǒng)采用SSH,即Struts2+Spring+DAO+DWR+Hibernate框架架構(gòu)。SSH集成開發(fā)中,Struts為表示層主要負責控制使用,Hibernate為持久層負責操作數(shù)據(jù)庫的,Spring為業(yè)務邏輯層用于各層解耦業(yè)務使用。MyBatis配置配置實例本系統(tǒng)采用SSH,即StrutsMyBatis配置配置實例在MySQL中建立數(shù)據(jù)庫db_javaxc和各個對應的表,并在表中添加相關(guān)信息。在MyEclipse中建立Web項目javaxc。給項目添加Spring核心容器。右擊項目名稱選擇:MyEclipse->ProjectFacts[Capabilities]->InstallSpringFacet。然后選擇Spring版本和服務器運行環(huán)境配置,配置Spring,選擇Spring包,即可將Spring容器添加完畢。MyBatis配置配置實例在MySQL中建立數(shù)據(jù)庫db_jMyBatis配置配置實例給項目添加Hibernate框架。添加Hibernate框架之前要先將MyEclipse鏈接數(shù)據(jù)庫,正確填寫相關(guān)信息,并使用mysql.jar即可鏈接成功。右擊項目名稱選擇:MyEclipse->ProjectFacts[Capabilities]->InstallHibernateFacet,選擇Hibernate版本運行時信息,即可添加成功。給項目添加Struts框架。右擊項目名稱選擇:選擇MyEclipse->ProjectFacets[Capabilities]->InstallApacheStruts(2.x)Facet添加Struts,配置Struts2,選擇Spring包。MyBatis配置配置實例給項目添加Hibernate框架MyBatis配置配置實例生成數(shù)據(jù)庫表對應的Java類對象和映射文件。打開前面創(chuàng)建的MySQL鏈接,對每個表啟動HibernateReverseEngineering向?qū)В瑥囊延械臄?shù)據(jù)庫表生成對應的POJO對象及映射文件。分別在src目錄下創(chuàng)建各個類文件,并修改web.xml、applicationContext.xml、struts.xml等配置文件。添加JSP頁面在每個JSP頁面對用戶進行攔截操作。將系統(tǒng)部署到Tomcat中,在瀏覽器中輸入url即可顯示界面。MyBatis配置配置實例生成數(shù)據(jù)庫表對應的Java類對象功能流程設計方案設置界面關(guān)系類設計4數(shù)據(jù)庫邏輯結(jié)構(gòu)設計功能流程設計方案設置界面關(guān)系類設計4數(shù)據(jù)庫邏輯結(jié)構(gòu)設計功能流程設計方案設計界面關(guān)系設計界面關(guān)系課程輔導教學系統(tǒng)的界面關(guān)系如圖所示:在系統(tǒng)主頁面首先要選擇身份登陸,不同的身份意味著有不同的操作權(quán)限,因此,在身份的選擇上,本系統(tǒng)提供了三種:管理員、老師和學生。選擇相對應的身份,方可進入相應的操作界面。功能流程設計方案設計界面關(guān)系設計界面關(guān)系功能流程設計方案設計界面關(guān)系用戶登陸流程用戶登陸需要輸入信息驗證,信息包括用戶名和密碼。校驗的根據(jù)是輸入的內(nèi)容是否與先前存儲在數(shù)據(jù)庫中的信息一致。當校驗成功后,會有驗證碼驗證環(huán)節(jié),成功輸對驗證碼后方可登陸成功,否則其他情況一律失敗。用戶登陸流程圖如圖所示。功能流程設計方案設計界面關(guān)系用戶登陸流程功能流程設計方案設計界面關(guān)系老師信息管理和學生信息管理流程用戶的信息管理方式主要包含兩大功能:信息添加與信息管理。信息添加時所添加的內(nèi)容只有全部符合才會被成功寫到數(shù)據(jù)庫中。信息管理主要做的工作就是查詢和刪除,流程圖如圖所示:功能流程設計方案設計界面關(guān)系老師信息管理和學生信息管理流程功能流程設計方案設計界面關(guān)系老師信息管理和學生信息管理流程功能流程設計方案設計界面關(guān)系老師信息管理和學生信息管理流程功能流程設計方案設計界面關(guān)系系統(tǒng)公告管理流程系統(tǒng)公告管理同樣分為兩大塊系:公告添加和公告管理。但它添加了清空信息項和返回學生主界面的操作。具體流程如圖所示。功能流程設計方案設計界面關(guān)系系統(tǒng)公告管理流程功能流程設計方案設計界面關(guān)系教學資料管理和教學視頻管理流程功能流程設計方案設計界面關(guān)系教學資料管理和教學視頻管理流程功能流程設計方案設計界面關(guān)系教學資料管理和教學視頻管理流程功能流程設計方案設計界面關(guān)系教學資料管理和教學視頻管理流程功能流程設計方案設計界面關(guān)系信息交流管理流程在信息交流管理模塊中,學生必須登陸后才能上傳留言,而處理這些留言是由老師信息交流模塊處理的。方式包括刪除和回復,具體流程如圖所示。功能流程設計方案設計界面關(guān)系信息交流管理流程功能流程設計方案設計界面關(guān)系作業(yè)信息管理流程作業(yè)信息管理模塊較為復雜,對于學生而言,操作權(quán)限僅限于作業(yè)的下載和作業(yè)的上傳。對于老師管理而言,操作權(quán)限包括布置作業(yè)、評作業(yè)以及作業(yè)信息發(fā)步。具體流程如圖所示。功能流程設計方案設計界面關(guān)系作業(yè)信息管理流程功能流程設計方案類設計Action類action包里主要有adminAction、docAction、gonggaoAction、indexAction等類。他們的作用大致相同。action類在Struts2中承擔了Model的角色,主要用于處理業(yè)務邏輯并存放HTTP請求處理過程中各個變量的值。Action充當著MVC中模型的角色,也就是Action既封裝了業(yè)務數(shù)據(jù),又要處理業(yè)務功能。在Struts2中,作為action的Java類不需要繼承任何父類,也不需要實現(xiàn)任何接口。只要包含一個叫做execute()的方法,同時該execute()方法返回類型為String,那么這個Java類就可以作為Struts2應用程序中的action類而出現(xiàn)。這么做的原因很明顯:降低了應用程序代碼和Struts代碼之間的耦合,讓應用代碼更加的獨立。功能流程設計方案類設計Action類功能流程設計方案類設計Service類即loginService類。Service層是業(yè)務層,做相應的業(yè)務邏輯處理,引用對應的Dao層數(shù)據(jù)庫操作。功能流程設計方案類設計Service類功能流程設計方案類設計Dao類dao包里主要有TadminDAO、TdocDAO、TgonggaoDAO、TLiuyanDAO、TShipinDao等類。DAO層負責數(shù)據(jù)庫訪問,在系統(tǒng)中,當需要和數(shù)據(jù)源進行交互的時候則使用這個接口,并且編寫一個單獨的類來實現(xiàn)這個接口,這個單獨的類就是Dao類。DAO層處理的應該是對象關(guān)系相互轉(zhuǎn)換的工作,它需要的是一個連接對象。功能流程設計方案類設計Dao類功能流程設計方案類設計Model類model包里主要有Tadmin、Tdoc、Tgonggao、TLiuyan、TShipin等類。Model層,代表模型,從已有的數(shù)據(jù)庫表生成對應的POJO對象及映射文件。Model層里面的一個類對應數(shù)據(jù)庫里面的一張表,類里面的每一個屬性對應表里面的一個字段,每個屬性都有自己的GET和SET方法,項目中的數(shù)據(jù)存取都要依靠GET和SET方法來實現(xiàn)。功能流程設計方案類設計Model類功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計為了提高整個系統(tǒng)的質(zhì)量和效率,有必要設計出好的數(shù)據(jù)庫。需要進行數(shù)據(jù)的存儲收集,數(shù)據(jù)的檢索整理,和數(shù)據(jù)的更新加工等。規(guī)劃數(shù)據(jù)后,進行需求分析,設計出數(shù)據(jù)概念,分析數(shù)據(jù)邏輯,最后物理實現(xiàn)。這就是核心數(shù)據(jù)庫的開發(fā)設計過程。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計為了提高整個系統(tǒng)的質(zhì)量和效功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計數(shù)據(jù)庫對應著特定獨立的數(shù)據(jù)庫概念模型。根據(jù)具體使用本平臺的用戶,將得到的關(guān)系模型有學生用戶,老師用戶和管理員用戶等所需要的信息,如圖所示。內(nèi)部包含管理員注冊的相關(guān)信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計數(shù)據(jù)庫對應著特定獨立的數(shù)據(jù)功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計老師用戶信息表如圖所示,內(nèi)部包含老師用戶在系統(tǒng)中的基本信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計老師用戶信息表如圖所示,內(nèi)功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計學生用戶信息表如下圖所示,內(nèi)部包含學生用戶在系統(tǒng)中的基本信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計學生用戶信息表如下圖所示,功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計作業(yè)內(nèi)容信息表如圖所示,內(nèi)部包含作業(yè)內(nèi)容在系統(tǒng)中的相關(guān)信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計作業(yè)內(nèi)容信息表如圖所示,內(nèi)功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計教學視頻內(nèi)容信息表如圖所示,內(nèi)部包含教學內(nèi)容在系統(tǒng)中的相關(guān)信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計教學視頻內(nèi)容信息表如圖所示功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計教學資料信息表如圖所示,包含教學資料內(nèi)容在系統(tǒng)中的相關(guān)信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計教學資料信息表如圖所示,包功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計留言信息表如圖所示,內(nèi)部包含學生用戶留言內(nèi)容的相關(guān)信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計留言信息表如圖所示,內(nèi)部包功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計公告內(nèi)容信息表如圖所示,包含了系統(tǒng)中公告內(nèi)容的基本信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計公告內(nèi)容信息表如圖所示,包平臺功能實現(xiàn)創(chuàng)建工程項目三層架構(gòu)開發(fā)5系統(tǒng)實現(xiàn)平臺功能實現(xiàn)創(chuàng)建工程項目三層架構(gòu)開發(fā)5系統(tǒng)實現(xiàn)平臺功能實現(xiàn)創(chuàng)建工程項目在MyEclipse2017中新建J2EE項目,主要步驟如下:創(chuàng)建數(shù)據(jù)庫和表;添加Spring核心容器;添加Hibernate框架;添加Struts框架;集成Spring與Struts2框架。平臺功能實現(xiàn)創(chuàng)建工程項目在MyEclipse2017中新建平臺功能實現(xiàn)創(chuàng)建工程項目項目src目錄中各包放置代碼用途如下:com.action:放置Struts2的Action控制模塊。com.dao:放置DAO實現(xiàn)類。com.model:放置POJO類及映射文件。com.service:放置業(yè)務邏輯實現(xiàn)類。com.util:放置公用的工具類。平臺功能實現(xiàn)創(chuàng)建工程項目項目src目錄中各包放置代碼用途如下平臺功能實現(xiàn)三層架構(gòu)開發(fā)創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表利用Navicat工具,連接到MySQL,然后創(chuàng)建好名為db_javaxc的數(shù)據(jù)庫,然后按照系統(tǒng)數(shù)據(jù)庫設計中的設計圖,新建表t_admin、t_doc、t_gonggao、t_liuyan、t_shipin、t_stu、t_tea、t_zuoyes、t_zuoyet,然后向表中添加數(shù)據(jù)。如圖所示:平臺功能實現(xiàn)三層架構(gòu)開發(fā)創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表平臺功能實現(xiàn)三層架構(gòu)開發(fā)在MyEclipse中連接MySQL數(shù)據(jù)庫啟動MyEclipse2014,選擇Window→OpenPerspective→MyEclipseDatabaseExplorer菜單項,打開MyEclipse中DBBrowser瀏覽器,右擊菜單,如下圖所示。平臺功能實現(xiàn)三層架構(gòu)開發(fā)在MyEclipse中連接MySQL平臺功能實現(xiàn)三層架構(gòu)開發(fā)接下來選擇MyEclipseDerby,右擊選擇New,將彈出DatabaseDriver窗口。如后圖所示。在DatabaseDriver窗口內(nèi),將有幾行對話框,其代表意思與輸入數(shù)據(jù)如下:Drivertemplate:選擇數(shù)據(jù)庫驅(qū)動模板。DriverName:定義數(shù)據(jù)庫連接名稱。我們這里起名為MySQL。ConnectionURL:定義數(shù)據(jù)庫的連接URL。如后圖所示,因為采用的是MySQL數(shù)據(jù)庫,而且是JDBC的方法,所以前面為jdbc:mysql://localhost:3306/要連接數(shù)的據(jù)庫名字(本實訓為db_javaxc),所以最終URL為dbc:mysql://localhost:3306/db_javaxc。平臺功能實現(xiàn)三層架構(gòu)開發(fā)接下來選擇MyEclipseDer平臺功能實現(xiàn)三層架構(gòu)開發(fā)Username:定義登錄數(shù)據(jù)庫的用戶名。一般為root。Password:輸入登錄的用戶密碼。之前配置MySQL所輸入的密碼。本實訓為226485。DriverJARs:定義連接數(shù)據(jù)庫采用的JAR包。需要導入數(shù)據(jù)庫驅(qū)動程序,在資源里有,點擊AddJARs,導入mysql-connector-java-5.1.13-bin.jar。如后圖所示。Driverclassname:選擇數(shù)據(jù)庫連接驅(qū)動的類名稱。完成上述步驟,自動生成。如后圖所示,至此,數(shù)據(jù)庫Driver配置完成。

平臺功能實現(xiàn)三層架構(gòu)開發(fā)Username:定義登錄數(shù)據(jù)庫的平臺功能實現(xiàn)三層架構(gòu)開發(fā)平臺功能實現(xiàn)三層架構(gòu)開發(fā)平臺功能實現(xiàn)三層架構(gòu)開發(fā)平臺功能實現(xiàn)三層架構(gòu)開發(fā)平臺功能實現(xiàn)三層架構(gòu)開發(fā)完成數(shù)據(jù)庫Driver配置后,需要在左側(cè)的DBBrowser中打開連接,右擊創(chuàng)建的數(shù)據(jù)庫,此處為MySQL,選擇Openconnection。輸入MySQL的密碼,即可完成MyEclipse對MySQL數(shù)據(jù)庫的連接。如圖所示。平臺功能實現(xiàn)三層架構(gòu)開發(fā)完成數(shù)據(jù)庫Driver配置后,需要在平臺功能實現(xiàn)三層架構(gòu)開發(fā)完成數(shù)據(jù)庫Driver配置后,需要在左側(cè)的DBBrowser中打開連接,右擊創(chuàng)建的數(shù)據(jù)庫,此處為MySQL,選擇Openconnection。輸入MySQL的密碼,即可完成MyEclipse對MySQL數(shù)據(jù)庫的連接。如圖所示。平臺功能實現(xiàn)三層架構(gòu)開發(fā)完成數(shù)據(jù)庫Driver配置后,需要在平臺功能實現(xiàn)三層架構(gòu)開發(fā)創(chuàng)建Web項目,進行SSH集成開發(fā)在MyEclipse2014中,選擇菜單File->new->WebProject,新建一個javaxc的項目。平臺功能實現(xiàn)三層架構(gòu)開發(fā)創(chuàng)建Web項目,進行SSH集成開發(fā)平臺功能實現(xiàn)三層架構(gòu)開發(fā)添加Spring右擊項目名稱,選擇MyEclipse→ProjectFacets[Capabilities]→InstallSpringFacet命令,然后進入選擇Spring版本和服務器運行環(huán)境配置界面。如圖所示。平臺功能實現(xiàn)三層架構(gòu)開發(fā)添加Spring平臺功能實現(xiàn)三層架構(gòu)開發(fā)添加Hibernate首先需要創(chuàng)建數(shù)據(jù)庫連接,然后添加Hibernate。MyEclipse連接MySQL數(shù)據(jù)庫在上面有詳細步驟。連接后,右擊項目名稱,選擇MyEclipse→ProjectFacts[Capabilities]→InstallHibernateFacet命令,如圖所示。平臺功能實現(xiàn)三層架構(gòu)開發(fā)添加Hibernate平臺功能實現(xiàn)三層架構(gòu)開發(fā)添加Struts右擊項目名稱,選擇MyEclipse→ProjectFacets[Capabilities]→InstallApacheStruts(2.x)Facet命令添加Struts。點擊Next,進入配置界面,選擇Struts版本和運行信息對話框,如圖所示。點擊Next,進入配置界面,如圖所示。平臺功能實現(xiàn)三層架構(gòu)開發(fā)添加Struts平臺功能實現(xiàn)三層架構(gòu)開發(fā)生成數(shù)據(jù)庫對應的Java類對象和映射生成文件依次創(chuàng)建各表的POJO對象及映射文件。下面以t_admin表創(chuàng)建實例,其他表類似。從主菜單欄中選擇Window→OpenPerspective→Other→MyEclipseDatabaseExplorer命令,打開MyEclipseDatabaseExplorer視圖。打開前面創(chuàng)建的MySQL數(shù)據(jù)連接,選擇MySQL→dbo→TABLE項,右擊t_admin表,選擇快捷菜單中的HibernateReverseEngineering命令,如圖所示。然后選擇生成Java類和映像文件所在的位置,生成Hibernate映射文件和JavaPOJO類。平臺功能實現(xiàn)三層架構(gòu)開發(fā)生成數(shù)據(jù)庫對應的Java類對象和映射平臺功能實現(xiàn)三層架構(gòu)開發(fā)平臺功能實現(xiàn)三層架構(gòu)開發(fā)平臺功能實現(xiàn)三層架構(gòu)開發(fā)創(chuàng)建DAO、Service、Action類分別在src目錄下創(chuàng)建com.action、com.dao、com.model、com.service和com.util四個包,然后分別在四個包中新建各個類文件(完整詳細代碼在實訓資源包)。平臺功能實現(xiàn)三層架構(gòu)開發(fā)創(chuàng)建DAO、Service、Acti平臺功能實現(xiàn)三層架構(gòu)開發(fā)修改配置文件修改web.xml修改applicationContext.xml修改struts.xml添加JSP頁面部署運行項目(具體項目源碼見案例資源包)平臺功能實現(xiàn)三層架構(gòu)開發(fā)修改配置文件平臺功能實現(xiàn)三層架構(gòu)開發(fā)最后,將系統(tǒng)部署到Tomcat的sshjava目錄中,打開瀏覽器后輸入::8080/sshjava,出現(xiàn)的系統(tǒng)主界面,如圖所示。平臺功能實現(xiàn)三層架構(gòu)開發(fā)最后,將系統(tǒng)部署到Tomcat的ss平臺功能實現(xiàn)系統(tǒng)實現(xiàn)管理員和老師登陸界面在登錄平臺時,運用了Ajax方式進行用戶驗證,為了保證系統(tǒng)的安全性,使得不能不登錄就可以操作數(shù)據(jù)庫的內(nèi)容,當用戶在前臺界面的所有信息后,系統(tǒng)將在后臺對這些內(nèi)容進行異步驗證用戶的賬號、密碼和登錄類型,才能登錄系統(tǒng),繼續(xù)操作。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)管理員和老師登陸界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)管理員和老師登陸界面就本平臺系統(tǒng)的使用用戶而言,需要兩種平臺登錄界面,如下圖所示:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)管理員和老師登陸界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面由于本系統(tǒng)有不同三種不同身份驗證登錄,每種身份對應不同的主界面,管理員主界面、老師主界面和學生主界面。當?shù)顷懙较到y(tǒng)管理員主界面,管理員可以進行老師信息管理、學生信息管理、系統(tǒng)公告管理和修改登陸密碼的操作。如下圖所示。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面在老師用戶登陸平臺后,能夠?qū)崿F(xiàn)教學資料管理、教學視頻管理、作業(yè)信息管理、留言交流、修改個人信息的功能模塊。如下圖所示。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面學生用戶可以直接在平臺上面瀏覽網(wǎng)頁內(nèi)容,學習課程,完成作業(yè),也可以觀看教學視頻。在登陸成功后能夠與老師進行交流,就學習方面的事情進行討論,如下圖所示:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)在修改登錄密碼操作中,需要點擊“修改登陸密碼”按鈕,需要輸入原密碼進行驗證,才可以完成密碼修改的操作。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)在修改登錄密碼操作中,需要點擊“修改登陸平臺功能實現(xiàn)系統(tǒng)實現(xiàn)在老師信息管理模塊當中,管理員可以進行老師信息錄入、刪除操作功能,在學生信息管理模塊當中的學生信息錄入、刪除操作功能,以及在系統(tǒng)公告管理模塊當中的系統(tǒng)公告錄入、刪除操作功能。具體的老師信息錄入操作界面,如下圖所示:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)在老師信息管理模塊當中,管理員可以進行老平臺功能實現(xiàn)系統(tǒng)實現(xiàn)對學生信息的錄入操作界面,如下圖所示:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)對學生信息的錄入操作界面,如下圖所示:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)添加公告信息,是對公告信息的刪除,如下圖所示。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)添加公告信息,是對公告信息的刪除,如下圖平臺功能實現(xiàn)系統(tǒng)實現(xiàn)老師信息管理和學生信息管理由系統(tǒng)管理員負責管理。可以進行老師或?qū)W生信息添加和管理。進行學生信息添加時分別輸入學生的各類信息,如果每項信息填寫都符合要求,點擊提交后頁面顯示操作成功,學生信息被添加到底層數(shù)據(jù)庫中,并能夠在學生信息管理中查看到新加入的學生信息。否則需重新填寫。點擊取消則取消該信息的添加,跳回管理員主界面。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)老師信息管理和學生信息管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)老師信息管理和學生信息管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)老師信息管理和學生信息管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)老師信息管理和學生信息管理進行學生信息管理時,點擊刪除即可刪除相應學生信息,刪除成功后頁面顯示刪除成功。老師信息添加和管理與此相同,不再贅述。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)老師信息管理和學生信息管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)在老師用戶登陸平臺后,能夠?qū)崿F(xiàn)修改個人信息、作業(yè)管理、教學視頻管理、作業(yè)信息管理、留言交流的功能模塊。在修改登錄密碼操作中,需要點擊“修改個人信息”按鈕,輸入信息,就可以完成密碼修改的操作。修改信息資料頁面,如下圖所示:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)在老師用戶登陸平臺后,能夠?qū)崿F(xiàn)修改個人信平臺功能實現(xiàn)系統(tǒng)實現(xiàn)老師在作業(yè)管理模塊當中實現(xiàn)了作業(yè)的添加、刪除操作功能,在作業(yè)視頻管理模塊當中實現(xiàn)了作業(yè)視頻的添加、刪除操作功能,在作業(yè)信息管理模塊當中實現(xiàn)了學生作業(yè)查看、刪除操作功能,在交流互動模塊實現(xiàn)了學生留言回復、刪除操作功能。作業(yè)資料添加、刪除功能實現(xiàn),如圖所示:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)老師在作業(yè)管理模塊當中實現(xiàn)了作業(yè)的添加、平臺功能實現(xiàn)系統(tǒng)實現(xiàn)老師在在教學資料管理模塊當中實現(xiàn)了教學資料的添加、刪除操作功能,在教學視頻管理模塊當中實現(xiàn)了教學視頻的添加、刪除操作功能,在作業(yè)信息管理模塊當中實現(xiàn)了學生作業(yè)查看、刪除操作功能,在交流互動模塊實現(xiàn)了學生留言回復、刪除操作功能。作業(yè)講解視頻添加、刪除功能實現(xiàn),如圖所示:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)老師在在教學資料管理模塊當中實現(xiàn)了教學資平臺功能實現(xiàn)系統(tǒng)實現(xiàn)作業(yè)信息添加、刪除功能,如下圖所示:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)作業(yè)信息添加、刪除功能,如下圖所示:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)留言交流管理功能實現(xiàn),如下圖:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)留言交流管理功能實現(xiàn),如下圖:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)系統(tǒng)公告管理由系統(tǒng)管理員進行管理,學生可以進行查看。主要有系統(tǒng)公告添加和管理功能。進行系統(tǒng)公告添加時輸入各項信息,如過信息填寫符合要求,點擊提交后頁面顯示操作成功,系統(tǒng)公告被添加到底層數(shù)據(jù)庫中,并能夠在系統(tǒng)公告管理中查看到新加入的系統(tǒng)公告。學生也能夠在學生主界面中看到系統(tǒng)管理員發(fā)布的公告。如果填寫不符合要求需重新填寫。點擊重置,使當前頁面填寫的信息全部清空。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)系統(tǒng)公告管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)系統(tǒng)公告管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)系統(tǒng)公告管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)系統(tǒng)公告管理同時系統(tǒng)管理員能夠刪除系統(tǒng)公告。管理員刪除公告后,學生在學生主界面無法再看到此公告信息。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)系統(tǒng)公告管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)教學資料管理和教學視頻管理由老師進行管理,學生進行使用。老師對教學資料(包括PPT、上機代碼和實驗)、教學視頻進行上傳和刪除操作。老師上傳教學資料和教學視頻后,學生可以進行下載或在線瀏覽。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)教學資料管理和教學視頻管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)教學資料管理和教學視頻管理老師可以進行教學視頻添加,寫入符合要求的視頻標題、附件、介紹,即可提交,教學視頻會添加到底層數(shù)據(jù)庫中,并能夠在教學視頻管理中查看到新加入的教學視頻。如果填入信息不符合要求,則需要重新填寫。點擊重置,該頁面已填寫的信息全部清空。老師上傳教學視頻后,學生可以在學生主界面演示系統(tǒng)中看件已上傳的教學視頻。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)教學資料管理和教學視頻管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)教學資料管理和教學視頻管理學生身份登錄用戶可以在演示系統(tǒng)中下載視頻,也可以在演示系統(tǒng)中在線瀏覽視頻。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)教學資料管理和教學視頻管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)教學資料管理和教學視頻管理此外,老師也可以進行教學資料刪除操作。教學資料刪除后,學生無法在學生主界面看到該視頻。教學資料管理與此類似,不再贅述。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)教學資料管理和教學視頻管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)信息交流管理由老師進行和學生共同進行管理。學生在登陸后才可以發(fā)布留言,否則界面會提示登錄。登錄成功后填入信息內(nèi)容點擊提交就可以發(fā)布留言了。留言發(fā)布后,可以在留言板中查看到該留言。瀏覽此網(wǎng)頁的用戶都可以看到。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)信息交流管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)信息交流管理老師可以在信息交流模塊中對學生的留言進行刪除和回復。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)信息交流管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)作業(yè)信息管理由老師和學生共同管理。老師可以進行作業(yè)信息發(fā)布,輸入符合要求的信息,即可提交,作業(yè)信息會添加到底層數(shù)據(jù)庫中,并能夠在布置作業(yè)管理中查看到新加入的作業(yè)信息。如果填入信息不符合要求,則需要重新填寫。點擊重置,可以該頁面已填寫的信息全部清空。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)作業(yè)信息管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)作業(yè)信息管理老師上傳作業(yè)任務后,學生可以在個學生主界面中下載作業(yè)任務。學生完成作業(yè)任務后,可以通過系統(tǒng)將作業(yè)上傳。這時老師能夠查看學生提交的作業(yè),并給出評語,同時可以刪除學生完成的作業(yè)任務。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)作業(yè)信息管理平臺功能實現(xiàn)系統(tǒng)實現(xiàn)個人信息管理各眾身份的用戶都有此功能。除管理員可以對所有老師和學生用戶的信息進行管理外,老師或?qū)W生也可以對自己的個人信息進行修改。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)個人信息管理小結(jié)本章主要介紹Struts2、Hibernate和Spring三個框架融合開發(fā)的系統(tǒng)的具體過程和步驟,按照課程設計的要求從軟件工程開發(fā)的角度全方位介紹了可行性分析、需求分析、設計、編碼、測試、部署等過程內(nèi)容,在開發(fā)過程中靈活使用各種Ajax、JQuery、DWR、CKEditor等技術(shù),進一步培養(yǎng)SSH架構(gòu)綜合應用開發(fā)能力。小結(jié)本章主要介紹Struts2、Hibernate和SpriJavaEE課程設計案例(SSH)第九章JavaEE課程設計案例(SSH)第九章了解JavaEE課程設計要求掌握JavaEE集成框架開發(fā)過程學習內(nèi)容熟悉JavaEE中SSH框架的綜合應用熟悉后臺數(shù)據(jù)庫的設計原理掌握JavaEE模塊化開發(fā)步驟了解JavaEE課程設計要求掌握JavaEE集成框架開發(fā)課程設計簡述1需求分析2搭建開發(fā)環(huán)境

3功能流程設計方案4目錄CONTENTS平臺功能實現(xiàn)5課程設計簡述1需求分析2搭建開發(fā)環(huán)境3功能流程設計方案4目課程設計簡述1課程設計簡述1課程設計簡述本次課程設計使用了一套基于SSH的課程輔導教學系統(tǒng),它采用模塊化方式來開發(fā),完成具有不同用戶身份驗證登錄,上機代碼的上傳與下載,作業(yè)下載與提交,上機實驗演示系統(tǒng)(包括視頻演示與PPT演示),發(fā)布作業(yè)信息與學習資料管理,信息維護等相關(guān)功能的Web應用程序。課程設計簡述本次課程設計使用了一套基于SSH的課程輔導教學系課程設計簡述對于這套系統(tǒng)的基本要求如下:完成PPT的上傳和下載功能;完成作業(yè)下載與提交;完成上機實驗演示系統(tǒng);完成發(fā)布留言討論功能;完成發(fā)布系統(tǒng)公告功能;完成信息維護;完成不同用戶身份的驗證登錄,管理員,老師,學生登陸后進入不同界面,能夠使用不同功能,管理不同信息。課程設計簡述對于這套系統(tǒng)的基本要求如下:課程設計簡述其中,管理員負責老師信息管理,學生信息管理和公告管理,同時可以修改自己的登錄密碼。老師賬號和學生賬號必須由管理員導入后才能進行登錄。老師可以進行教學資料管理,教學視頻管理,信息交流管理,布置作業(yè)管理和個人信息管理。學生可以進行作業(yè)下載,作業(yè)管理和個人信息修改。課程設計簡述其中,管理員負責老師信息管理,學生信息管理和公告需求分析功能性描述設計思想2系統(tǒng)功能結(jié)構(gòu)需求分析功能性描述設計思想2系統(tǒng)功能結(jié)構(gòu)需求分析功能性描述項目需求分析是一個項目的開端,也是項目建設的基石。在以往建設失敗的項目中,大多數(shù)是由于需求分析的不明確而造成。需求分析是分析系統(tǒng)在功能上需要“實現(xiàn)什么”,而不是考慮如何去“實現(xiàn)”。需求分析的目標是把用戶對待開發(fā)軟件提出的“要求”或“需要”進行分析與整理,確認后形成描述完整、清晰與規(guī)范的文檔,確定軟件需要實現(xiàn)哪些功能,完成哪些工作。需求分析功能性描述項目需求分析是一個項目的開端,也是項目建設需求分析功能性描述課程輔導教學系統(tǒng)旨在解決老師和學生通過系統(tǒng)進行教與學,在系統(tǒng)幫助下進行學習或輔導教學的問題。主要實現(xiàn)教學資料(包括PPT)和視頻的上傳、下載以及在線瀏覽,作業(yè)的發(fā)布和提交,教師和學生的交流以及學生和學生之間的交流等功能。本系統(tǒng)使用管理員、老師、學生三種不同的用戶身份驗證登錄,不同的用戶身份權(quán)限不同。整個系統(tǒng)分為主要由老師信息管理,學生信息管理,系統(tǒng)公告管理,教學資料管理,教學視頻管理,信息交流管理,作業(yè)信息管理和個人信息管理等組成。其具體功能如下:需求分析功能性描述課程輔導教學系統(tǒng)旨在解決老師和學生通過系統(tǒng)需求分析功能性描述老師信息管理和學生信息管理:由管理員進行管理,可以對老師和學生的各類信息進行增加,刪除操作。只有老師或?qū)W生的信息被管理員增加到系統(tǒng)中后,該教師或?qū)W生才能登陸本系統(tǒng)。系統(tǒng)公告管理:由管理員進行管理,對系統(tǒng)公告進行增加、刪除操作。教學資料管理和教學視頻管理:由老師進行操作,對PPT、視頻、文本文檔或其他文件進行上傳和刪除操作。視頻上傳后,學生可以進行下載或在線播放。信息交流管理:由老師進行管理,可以發(fā)布留言信息,也可以對自己或?qū)W生發(fā)布的留言信息進行刪除操作。需求分析功能性描述老師信息管理和學生信息管理:由管理員進行管需求分析功能性描述作業(yè)信息管理:由老師和學生共同管理。老師可以發(fā)布作業(yè)任務并上傳相關(guān)附件,也可以刪除作業(yè)任務。老師上傳作業(yè)任務后,學生可以下載或在線瀏覽作業(yè)任務。學生完成作業(yè)任務,可以通過系統(tǒng)將作業(yè)上傳。這時老師能夠查看學生提交的作業(yè)任務信息,并給出評語,同時可以刪除學生完成的作業(yè)任務。登錄密碼管理:對自己可以在驗證舊密碼成功之后,修改新密碼。個人信息管理:除管理員可以對所有老師和學生用戶的信息進行管理外,老師或?qū)W生也可以對自己的個人信息進行修改。需求分析功能性描述作業(yè)信息管理:由老師和學生共同管理。老師可需求分析設計思想在平臺系統(tǒng)功能設計的過程當中,所遵循的思想為:為了滿足多數(shù)用戶瀏覽網(wǎng)頁的習慣,可以利用SSH當中的MVC模式,能徹底分開前臺頁面的處理和后臺服務器的操作。采用面向?qū)ο蠹夹g(shù)能使得整個系統(tǒng)的高度和準確抽象。這是整個Java語言的特點。劃分系統(tǒng),分成若干個小的功能塊,有利于代碼的重載,簡化設計和實現(xiàn)過程。將系統(tǒng)的界面設計的簡單友好。使用戶能夠快速的操作。為了更加全面的滿足用戶的需求,有任何可能需要修改進步的地方,都要很細致的完成修改,達到用戶的設計需求。需求分析設計思想在平臺系統(tǒng)功能設計的過程當中,所遵循的思想為需求分析系統(tǒng)功能結(jié)構(gòu)跟據(jù)系統(tǒng)功能需求,把整個系統(tǒng)分析來劃分成幾個功能模塊:管理員模塊,學生和老師模塊。系統(tǒng)的功能模塊如下圖所示:需求分析系統(tǒng)功能結(jié)構(gòu)跟據(jù)系統(tǒng)功能需求,把整個系統(tǒng)分析來劃分成搭建開發(fā)環(huán)境配置實例3搭建開發(fā)環(huán)境配置實例3MyBatis配置配置實例本系統(tǒng)采用SSH,即Struts2+Spring+DAO+DWR+Hibernate框架架構(gòu)。SSH集成開發(fā)中,Struts為表示層主要負責控制使用,Hibernate為持久層負責操作數(shù)據(jù)庫的,Spring為業(yè)務邏輯層用于各層解耦業(yè)務使用。MyBatis配置配置實例本系統(tǒng)采用SSH,即StrutsMyBatis配置配置實例在MySQL中建立數(shù)據(jù)庫db_javaxc和各個對應的表,并在表中添加相關(guān)信息。在MyEclipse中建立Web項目javaxc。給項目添加Spring核心容器。右擊項目名稱選擇:MyEclipse->ProjectFacts[Capabilities]->InstallSpringFacet。然后選擇Spring版本和服務器運行環(huán)境配置,配置Spring,選擇Spring包,即可將Spring容器添加完畢。MyBatis配置配置實例在MySQL中建立數(shù)據(jù)庫db_jMyBatis配置配置實例給項目添加Hibernate框架。添加Hibernate框架之前要先將MyEclipse鏈接數(shù)據(jù)庫,正確填寫相關(guān)信息,并使用mysql.jar即可鏈接成功。右擊項目名稱選擇:MyEclipse->ProjectFacts[Capabilities]->InstallHibernateFacet,選擇Hibernate版本運行時信息,即可添加成功。給項目添加Struts框架。右擊項目名稱選擇:選擇MyEclipse->ProjectFacets[Capabilities]->InstallApacheStruts(2.x)Facet添加Struts,配置Struts2,選擇Spring包。MyBatis配置配置實例給項目添加Hibernate框架MyBatis配置配置實例生成數(shù)據(jù)庫表對應的Java類對象和映射文件。打開前面創(chuàng)建的MySQL鏈接,對每個表啟動HibernateReverseEngineering向?qū)В瑥囊延械臄?shù)據(jù)庫表生成對應的POJO對象及映射文件。分別在src目錄下創(chuàng)建各個類文件,并修改web.xml、applicationContext.xml、struts.xml等配置文件。添加JSP頁面在每個JSP頁面對用戶進行攔截操作。將系統(tǒng)部署到Tomcat中,在瀏覽器中輸入url即可顯示界面。MyBatis配置配置實例生成數(shù)據(jù)庫表對應的Java類對象功能流程設計方案設置界面關(guān)系類設計4數(shù)據(jù)庫邏輯結(jié)構(gòu)設計功能流程設計方案設置界面關(guān)系類設計4數(shù)據(jù)庫邏輯結(jié)構(gòu)設計功能流程設計方案設計界面關(guān)系設計界面關(guān)系課程輔導教學系統(tǒng)的界面關(guān)系如圖所示:在系統(tǒng)主頁面首先要選擇身份登陸,不同的身份意味著有不同的操作權(quán)限,因此,在身份的選擇上,本系統(tǒng)提供了三種:管理員、老師和學生。選擇相對應的身份,方可進入相應的操作界面。功能流程設計方案設計界面關(guān)系設計界面關(guān)系功能流程設計方案設計界面關(guān)系用戶登陸流程用戶登陸需要輸入信息驗證,信息包括用戶名和密碼。校驗的根據(jù)是輸入的內(nèi)容是否與先前存儲在數(shù)據(jù)庫中的信息一致。當校驗成功后,會有驗證碼驗證環(huán)節(jié),成功輸對驗證碼后方可登陸成功,否則其他情況一律失敗。用戶登陸流程圖如圖所示。功能流程設計方案設計界面關(guān)系用戶登陸流程功能流程設計方案設計界面關(guān)系老師信息管理和學生信息管理流程用戶的信息管理方式主要包含兩大功能:信息添加與信息管理。信息添加時所添加的內(nèi)容只有全部符合才會被成功寫到數(shù)據(jù)庫中。信息管理主要做的工作就是查詢和刪除,流程圖如圖所示:功能流程設計方案設計界面關(guān)系老師信息管理和學生信息管理流程功能流程設計方案設計界面關(guān)系老師信息管理和學生信息管理流程功能流程設計方案設計界面關(guān)系老師信息管理和學生信息管理流程功能流程設計方案設計界面關(guān)系系統(tǒng)公告管理流程系統(tǒng)公告管理同樣分為兩大塊系:公告添加和公告管理。但它添加了清空信息項和返回學生主界面的操作。具體流程如圖所示。功能流程設計方案設計界面關(guān)系系統(tǒng)公告管理流程功能流程設計方案設計界面關(guān)系教學資料管理和教學視頻管理流程功能流程設計方案設計界面關(guān)系教學資料管理和教學視頻管理流程功能流程設計方案設計界面關(guān)系教學資料管理和教學視頻管理流程功能流程設計方案設計界面關(guān)系教學資料管理和教學視頻管理流程功能流程設計方案設計界面關(guān)系信息交流管理流程在信息交流管理模塊中,學生必須登陸后才能上傳留言,而處理這些留言是由老師信息交流模塊處理的。方式包括刪除和回復,具體流程如圖所示。功能流程設計方案設計界面關(guān)系信息交流管理流程功能流程設計方案設計界面關(guān)系作業(yè)信息管理流程作業(yè)信息管理模塊較為復雜,對于學生而言,操作權(quán)限僅限于作業(yè)的下載和作業(yè)的上傳。對于老師管理而言,操作權(quán)限包括布置作業(yè)、評作業(yè)以及作業(yè)信息發(fā)步。具體流程如圖所示。功能流程設計方案設計界面關(guān)系作業(yè)信息管理流程功能流程設計方案類設計Action類action包里主要有adminAction、docAction、gonggaoAction、indexAction等類。他們的作用大致相同。action類在Struts2中承擔了Model的角色,主要用于處理業(yè)務邏輯并存放HTTP請求處理過程中各個變量的值。Action充當著MVC中模型的角色,也就是Action既封裝了業(yè)務數(shù)據(jù),又要處理業(yè)務功能。在Struts2中,作為action的Java類不需要繼承任何父類,也不需要實現(xiàn)任何接口。只要包含一個叫做execute()的方法,同時該execute()方法返回類型為String,那么這個Java類就可以作為Struts2應用程序中的action類而出現(xiàn)。這么做的原因很明顯:降低了應用程序代碼和Struts代碼之間的耦合,讓應用代碼更加的獨立。功能流程設計方案類設計Action類功能流程設計方案類設計Service類即loginService類。Service層是業(yè)務層,做相應的業(yè)務邏輯處理,引用對應的Dao層數(shù)據(jù)庫操作。功能流程設計方案類設計Service類功能流程設計方案類設計Dao類dao包里主要有TadminDAO、TdocDAO、TgonggaoDAO、TLiuyanDAO、TShipinDao等類。DAO層負責數(shù)據(jù)庫訪問,在系統(tǒng)中,當需要和數(shù)據(jù)源進行交互的時候則使用這個接口,并且編寫一個單獨的類來實現(xiàn)這個接口,這個單獨的類就是Dao類。DAO層處理的應該是對象關(guān)系相互轉(zhuǎn)換的工作,它需要的是一個連接對象。功能流程設計方案類設計Dao類功能流程設計方案類設計Model類model包里主要有Tadmin、Tdoc、Tgonggao、TLiuyan、TShipin等類。Model層,代表模型,從已有的數(shù)據(jù)庫表生成對應的POJO對象及映射文件。Model層里面的一個類對應數(shù)據(jù)庫里面的一張表,類里面的每一個屬性對應表里面的一個字段,每個屬性都有自己的GET和SET方法,項目中的數(shù)據(jù)存取都要依靠GET和SET方法來實現(xiàn)。功能流程設計方案類設計Model類功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計為了提高整個系統(tǒng)的質(zhì)量和效率,有必要設計出好的數(shù)據(jù)庫。需要進行數(shù)據(jù)的存儲收集,數(shù)據(jù)的檢索整理,和數(shù)據(jù)的更新加工等。規(guī)劃數(shù)據(jù)后,進行需求分析,設計出數(shù)據(jù)概念,分析數(shù)據(jù)邏輯,最后物理實現(xiàn)。這就是核心數(shù)據(jù)庫的開發(fā)設計過程。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計為了提高整個系統(tǒng)的質(zhì)量和效功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計數(shù)據(jù)庫對應著特定獨立的數(shù)據(jù)庫概念模型。根據(jù)具體使用本平臺的用戶,將得到的關(guān)系模型有學生用戶,老師用戶和管理員用戶等所需要的信息,如圖所示。內(nèi)部包含管理員注冊的相關(guān)信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計數(shù)據(jù)庫對應著特定獨立的數(shù)據(jù)功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計老師用戶信息表如圖所示,內(nèi)部包含老師用戶在系統(tǒng)中的基本信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計老師用戶信息表如圖所示,內(nèi)功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計學生用戶信息表如下圖所示,內(nèi)部包含學生用戶在系統(tǒng)中的基本信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計學生用戶信息表如下圖所示,功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計作業(yè)內(nèi)容信息表如圖所示,內(nèi)部包含作業(yè)內(nèi)容在系統(tǒng)中的相關(guān)信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計作業(yè)內(nèi)容信息表如圖所示,內(nèi)功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計教學視頻內(nèi)容信息表如圖所示,內(nèi)部包含教學內(nèi)容在系統(tǒng)中的相關(guān)信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計教學視頻內(nèi)容信息表如圖所示功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計教學資料信息表如圖所示,包含教學資料內(nèi)容在系統(tǒng)中的相關(guān)信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計教學資料信息表如圖所示,包功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計留言信息表如圖所示,內(nèi)部包含學生用戶留言內(nèi)容的相關(guān)信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計留言信息表如圖所示,內(nèi)部包功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計公告內(nèi)容信息表如圖所示,包含了系統(tǒng)中公告內(nèi)容的基本信息。功能流程設計方案數(shù)據(jù)庫邏輯結(jié)構(gòu)設計公告內(nèi)容信息表如圖所示,包平臺功能實現(xiàn)創(chuàng)建工程項目三層架構(gòu)開發(fā)5系統(tǒng)實現(xiàn)平臺功能實現(xiàn)創(chuàng)建工程項目三層架構(gòu)開發(fā)5系統(tǒng)實現(xiàn)平臺功能實現(xiàn)創(chuàng)建工程項目在MyEclipse2017中新建J2EE項目,主要步驟如下:創(chuàng)建數(shù)據(jù)庫和表;添加Spring核心容器;添加Hibernate框架;添加Struts框架;集成Spring與Struts2框架。平臺功能實現(xiàn)創(chuàng)建工程項目在MyEclipse2017中新建平臺功能實現(xiàn)創(chuàng)建工程項目項目src目錄中各包放置代碼用途如下:com.action:放置Struts2的Action控制模塊。com.dao:放置DAO實現(xiàn)類。com.model:放置POJO類及映射文件。com.service:放置業(yè)務邏輯實現(xiàn)類。com.util:放置公用的工具類。平臺功能實現(xiàn)創(chuàng)建工程項目項目src目錄中各包放置代碼用途如下平臺功能實現(xiàn)三層架構(gòu)開發(fā)創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表利用Navicat工具,連接到MySQL,然后創(chuàng)建好名為db_javaxc的數(shù)據(jù)庫,然后按照系統(tǒng)數(shù)據(jù)庫設計中的設計圖,新建表t_admin、t_doc、t_gonggao、t_liuyan、t_shipin、t_stu、t_tea、t_zuoyes、t_zuoyet,然后向表中添加數(shù)據(jù)。如圖所示:平臺功能實現(xiàn)三層架構(gòu)開發(fā)創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表平臺功能實現(xiàn)三層架構(gòu)開發(fā)在MyEclipse中連接MySQL數(shù)據(jù)庫啟動MyEclipse2014,選擇Window→OpenPerspective→MyEclipseDatabaseExplorer菜單項,打開MyEclipse中DBBrowser瀏覽器,右擊菜單,如下圖所示。平臺功能實現(xiàn)三層架構(gòu)開發(fā)在MyEclipse中連接MySQL平臺功能實現(xiàn)三層架構(gòu)開發(fā)接下來選擇MyEclipseDerby,右擊選擇New,將彈出DatabaseDriver窗口。如后圖所示。在DatabaseDriver窗口內(nèi),將有幾行對話框,其代表意思與輸入數(shù)據(jù)如下:Drivertemplate:選擇數(shù)據(jù)庫驅(qū)動模板。DriverName:定義數(shù)據(jù)庫連接名稱。我們這里起名為MySQL。ConnectionURL:定義數(shù)據(jù)庫的連接URL。如后圖所示,因為采用的是MySQL數(shù)據(jù)庫,而且是JDBC的方法,所以前面為jdbc:mysql://localhost:3306/要連接數(shù)的據(jù)庫名字(本實訓為db_javaxc),所以最終URL為dbc:mysql://localhost:3306/db_javaxc。平臺功能實現(xiàn)三層架構(gòu)開發(fā)接下來選擇MyEclipseDer平臺功能實現(xiàn)三層架構(gòu)開發(fā)Username:定義登錄數(shù)據(jù)庫的用戶名。一般為root。Password:輸入登錄的用戶密碼。之前配置MySQL所輸入的密碼。本實訓為226485。DriverJARs:定義連接數(shù)據(jù)庫采用的JAR包。需要導入數(shù)據(jù)庫驅(qū)動程序,在資源里有,點擊AddJARs,導入mysql-connector-java-5.1.13-bin.jar。如后圖所示。Driverclassname:選擇數(shù)據(jù)庫連接驅(qū)動的類名稱。完成上述步驟,自動生成。如后圖所示,至此,數(shù)據(jù)庫Driver配置完成。

平臺功能實現(xiàn)三層架構(gòu)開發(fā)Username:定義登錄數(shù)據(jù)庫的平臺功能實現(xiàn)三層架構(gòu)開發(fā)平臺功能實現(xiàn)三層架構(gòu)開發(fā)平臺功能實現(xiàn)三層架構(gòu)開發(fā)平臺功能實現(xiàn)三層架構(gòu)開發(fā)平臺功能實現(xiàn)三層架構(gòu)開發(fā)完成數(shù)據(jù)庫Driver配置后,需要在左側(cè)的DBBrowser中打開連接,右擊創(chuàng)建的數(shù)據(jù)庫,此處為MySQL,選擇Openconnection。輸入MySQL的密碼,即可完成MyEclipse對MySQL數(shù)據(jù)庫的連接。如圖所示。平臺功能實現(xiàn)三層架構(gòu)開發(fā)完成數(shù)據(jù)庫Driver配置后,需要在平臺功能實現(xiàn)三層架構(gòu)開發(fā)完成數(shù)據(jù)庫Driver配置后,需要在左側(cè)的DBBrowser中打開連接,右擊創(chuàng)建的數(shù)據(jù)庫,此處為MySQL,選擇Openconnection。輸入MySQL的密碼,即可完成MyEclipse對MySQL數(shù)據(jù)庫的連接。如圖所示。平臺功能實現(xiàn)三層架構(gòu)開發(fā)完成數(shù)據(jù)庫Driver配置后,需要在平臺功能實現(xiàn)三層架構(gòu)開發(fā)創(chuàng)建Web項目,進行SSH集成開發(fā)在MyEclipse2014中,選擇菜單File->new->WebProject,新建一個javaxc的項目。平臺功能實現(xiàn)三層架構(gòu)開發(fā)創(chuàng)建Web項目,進行SSH集成開發(fā)平臺功能實現(xiàn)三層架構(gòu)開發(fā)添加Spring右擊項目名稱,選擇MyEclipse→ProjectFacets[Capabilities]→InstallSpringFacet命令,然后進入選擇Spring版本和服務器運行環(huán)境配置界面。如圖所示。平臺功能實現(xiàn)三層架構(gòu)開發(fā)添加Spring平臺功能實現(xiàn)三層架構(gòu)開發(fā)添加Hibernate首先需要創(chuàng)建數(shù)據(jù)庫連接,然后添加Hibernate。MyEclipse連接MySQL數(shù)據(jù)庫在上面有詳細步驟。連接后,右擊項目名稱,選擇MyEclipse→ProjectFacts[Capabilities]→InstallHibernateFacet命令,如圖所示。平臺功能實現(xiàn)三層架構(gòu)開發(fā)添加Hibernate平臺功能實現(xiàn)三層架構(gòu)開發(fā)添加Struts右擊項目名稱,選擇MyEclipse→ProjectFacets[Capabilities]→InstallApacheStruts(2.x)Facet命令添加Struts。點擊Next,進入配置界面,選擇Struts版本和運行信息對話框,如圖所示。點擊Next,進入配置界面,如圖所示。平臺功能實現(xiàn)三層架構(gòu)開發(fā)添加Struts平臺功能實現(xiàn)三層架構(gòu)開發(fā)生成數(shù)據(jù)庫對應的Java類對象和映射生成文件依次創(chuàng)建各表的POJO對象及映射文件。下面以t_admin表創(chuàng)建實例,其他表類似。從主菜單欄中選擇Window→OpenPerspective→Other→MyEclipseDatabaseExplorer命令,打開MyEclipseDatabaseExplorer視圖。打開前面創(chuàng)建的MySQL數(shù)據(jù)連接,選擇MySQL→dbo→TABLE項,右擊t_admin表,選擇快捷菜單中的HibernateReverseEngineering命令,如圖所示。然后選擇生成Java類和映像文件所在的位置,生成Hibernate映射文件和JavaPOJO類。平臺功能實現(xiàn)三層架構(gòu)開發(fā)生成數(shù)據(jù)庫對應的Java類對象和映射平臺功能實現(xiàn)三層架構(gòu)開發(fā)平臺功能實現(xiàn)三層架構(gòu)開發(fā)平臺功能實現(xiàn)三層架構(gòu)開發(fā)創(chuàng)建DAO、Service、Action類分別在src目錄下創(chuàng)建com.action、com.dao、com.model、com.service和com.util四個包,然后分別在四個包中新建各個類文件(完整詳細代碼在實訓資源包)。平臺功能實現(xiàn)三層架構(gòu)開發(fā)創(chuàng)建DAO、Service、Acti平臺功能實現(xiàn)三層架構(gòu)開發(fā)修改配置文件修改web.xml修改applicationContext.xml修改struts.xml添加JSP頁面部署運行項目(具體項目源碼見案例資源包)平臺功能實現(xiàn)三層架構(gòu)開發(fā)修改配置文件平臺功能實現(xiàn)三層架構(gòu)開發(fā)最后,將系統(tǒng)部署到Tomcat的sshjava目錄中,打開瀏覽器后輸入::8080/sshjava,出現(xiàn)的系統(tǒng)主界面,如圖所示。平臺功能實現(xiàn)三層架構(gòu)開發(fā)最后,將系統(tǒng)部署到Tomcat的ss平臺功能實現(xiàn)系統(tǒng)實現(xiàn)管理員和老師登陸界面在登錄平臺時,運用了Ajax方式進行用戶驗證,為了保證系統(tǒng)的安全性,使得不能不登錄就可以操作數(shù)據(jù)庫的內(nèi)容,當用戶在前臺界面的所有信息后,系統(tǒng)將在后臺對這些內(nèi)容進行異步驗證用戶的賬號、密碼和登錄類型,才能登錄系統(tǒng),繼續(xù)操作。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)管理員和老師登陸界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)管理員和老師登陸界面就本平臺系統(tǒng)的使用用戶而言,需要兩種平臺登錄界面,如下圖所示:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)管理員和老師登陸界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面由于本系統(tǒng)有不同三種不同身份驗證登錄,每種身份對應不同的主界面,管理員主界面、老師主界面和學生主界面。當?shù)顷懙较到y(tǒng)管理員主界面,管理員可以進行老師信息管理、學生信息管理、系統(tǒng)公告管理和修改登陸密碼的操作。如下圖所示。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面在老師用戶登陸平臺后,能夠?qū)崿F(xiàn)教學資料管理、教學視頻管理、作業(yè)信息管理、留言交流、修改個人信息的功能模塊。如下圖所示。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面學生用戶可以直接在平臺上面瀏覽網(wǎng)頁內(nèi)容,學習課程,完成作業(yè),也可以觀看教學視頻。在登陸成功后能夠與老師進行交流,就學習方面的事情進行討論,如下圖所示:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)不同驗證身份主界面平臺功能實現(xiàn)系統(tǒng)實現(xiàn)在修改登錄密碼操作中,需要點擊“修改登陸密碼”按鈕,需要輸入原密碼進行驗證,才可以完成密碼修改的操作。平臺功能實現(xiàn)系統(tǒng)實現(xiàn)在修改登錄密碼操作中,需要點擊“修改登陸平臺功能實現(xiàn)系統(tǒng)實現(xiàn)在老師信息管理模塊當中,管理員可以進行老師信息錄入、刪除操作功能,在學生信息管理模塊當中的學生信息錄入、刪除操作功能,以及在系統(tǒng)公告管理模塊當中的系統(tǒng)公告錄入、刪除操作功能。具體的老師信息錄入操作界面,如下圖所示:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)在老師信息管理模塊當中,管理員可以進行老平臺功能實現(xiàn)系統(tǒng)實現(xiàn)對學生信息的錄入操作界面,如下圖所示:平臺功能實現(xiàn)系統(tǒng)實現(xiàn)對學生信息

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論