jsp47婚紗影樓網站(ssh)-qrp_第1頁
jsp47婚紗影樓網站(ssh)-qrp_第2頁
jsp47婚紗影樓網站(ssh)-qrp_第3頁
jsp47婚紗影樓網站(ssh)-qrp_第4頁
jsp47婚紗影樓網站(ssh)-qrp_第5頁
已閱讀5頁,還剩35頁未讀 繼續免費閱讀

VIP免費下載

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

大學畢業論文PAGEII摘要在21世紀這個信息高度發達,并且高速流通的時代,計算機的普及以及計算機網絡技術的應用,讓大量普通人能夠有機會接觸到比以往更多的知識。作為一個以傳播知識為主要職能的機構——學校,建立一個婚紗影樓管理系統是十分必要的事情,這不僅能使更多的人可以瀏覽到用戶的作品信息,同時也對于提升學校自身的知名度,提高用戶的素質,有相當大的幫助。本論文就此婚紗影樓管理系統進行了詳細全面的論述。訪問本系統的用戶分為用戶和管理員兩種角色,2個角色共有十幾個功能的實現。系統中用戶的主要功能有:在線注冊,作品瀏覽,上傳作品、系統留言板等模塊。管理員的主要功能有:用戶信息管理、作品類別信息管理、新聞資訊管理、作品信息管理、系統留言板管理等功能,關鍵字作品展示、JSP、MySql、MyEclipseAbstractIntwenty-firstCentury,thisinformationishighlydeveloped,andhighspeedflowofthetimes,theapplicationofthepopularizationofthecomputerandnetworktechnologyofthecomputer,sothatalargenumberofordinarypeopletohavetheopportunitytogetmoreknowledgethanbefore.Asatransmissionofknowledgeasthemainfunctionsoftheagency--theschool,astudentworksdisplaynetworkisverynecessarythings,whichnotonlymakemorepeoplecanbrowsetotheworksofstudentsinformation,butalsoforenhancingthevisibilityoftheirschools,improvethequalityofstudents,thereisabighelp。Basedonthedetailednetworkofstudentwork.Usersaccessthesystemisdividedintotworoles,teachers,studentsandadministrators,hasmanyfunctionsintherealizationof3characters.Themainfunctionsofthissysteminclude:onlineregistration,browsing,studentsworktouploadworks,messageboardmodulesystem.Administrator'smainfunctionis:studentinformationmanagement,teacherinformationmanagement,informationmanagement,informationmanagement,messageboardmanagementfunctions,theroleofteachersismainlycommentforstudentstoworkanduploadrate。KeyWordsWorksshow、JSP、MySql、MyEclipse目錄摘要 IAbstract II緒論 11系統概述與技術介紹 21.1B/S結構介紹 21.2MyEclipse介紹 21.3JavaScrip語言 21.4JSP技術 31.5MVC模式 41.6Tomcat介紹 71.7MySQL 82系統需求分析 92.1開發環境 92.2需求分析 92.3可行性分析 103系統概要設計 113.1系統設計概述 113.2系統用例圖 123.3系統功能模塊圖 154數據庫設計與實現 174.1數據庫結構設計 174.1.1表概要說明 174.1.2數據表的結構 175系統的實現 215.1網站前臺模塊 215.1.1網站首頁設計 215.1.2網站導航設計 215.1.3作品展示列表 225.1.4用戶注冊實現 245.2用戶功能模塊 265.2.1提交攝影作品 265.2.2管理我的作品 285.3管理員模塊 285.3.1登陸界面設計 285.3.2用戶信息管理 315.3.3作品類別管理 325.3.4作品信息管理 355.3.4退出系統后臺 366系統測試 374.1測試方法 374.2系統測試結果 37總結 39參考文獻 40大學畢業論文PAGE36緒論Internet是目前世界上最大的計算機互聯網絡,它遍布全球,將世界各地各種規模的網絡連接成一個整體。作為Internet上一種先進的,易于被人們所接受的信息檢索手段,WorldWideWeb(簡稱WWW)發展十分迅速,成為目前世界上最大的信息資源寶庫。如今,網絡技術已經滲入到人們日常生活的每個角落,隨處都可以看到網絡的存在,隨處都可以享受到網絡給我們帶來的方便。網絡,不僅僅代表著一項技術、一種應用,更代表著一個時代、一種時尚。隨著Internet的發展,Web技術日新月異,人們已經不再滿足于靜態HTML技術,更多的是要求動態、交互的網絡技術。以前用戶作品展示都是通過在展示大廳或者一些公告欄上展示,這樣的方式存在一定局限性,導致用戶不能隨時隨地瀏覽那些作品信息,通過用戶作品展示系統這個平臺,可以使用戶足不出戶就可以了解用戶的作品信息,極大的方便了用戶。1系統概述與技術介紹1.1B/S結構介紹本系統采用B/S結構,即Browser/Server(瀏覽器/服務器)結構,就是只安裝維護一個服務器(Server),而客戶端采用瀏覽器(Browse)運行軟件。它是隨著Internet技術的興起,對C/S結構的一種變化和改進。主要利用了不斷成熟的WWW瀏覽器技術,結合多種Script語言(VBScript、JavaScript…)和ActiveX技術,是一種全新的軟件系統構造技術。在B/S體系結構系統中,用戶通過瀏覽器向分布在網絡上的許多服務器發出請求,服務器對瀏覽器的請求進行處理,將用戶所需信息返回到瀏覽器。而其余如數據請求、加工、結果返回以及動態網頁生成、對數據庫的訪問和應用程序的執行等工作全部由WebServer完成。1.2MyEclipse介紹本系統是跨越平臺限制和跨越瀏覽器限制的充滿動感的網頁。構建作品展示網所用的網頁編輯器為MyEclipse,MyEclipse,是一個十分優秀的用于開發Java,J2EE的Eclipse插件集合,MyEclipse的功能非常強大,支持也十分廣泛,尤其是對各種開元產品的支持十分不錯。MyEclipse企業級工作平臺(MyEclipseEnterpriseWorkbench,簡稱MyEclipse)是對EclipseIDE的擴展,利用它我們可以在數據庫和JavaEE的開發、發布,以及應用程序服務器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發環境,包括了完備的編碼、調試、測試和發布功能,完整支持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。1.3JavaScrip語言Javascript是一種解釋性的,基于對象的腳本語言,Javascript主要是基于客戶端運行的,用戶點擊帶有Javascript的網頁,網頁里的Javascript就傳到瀏覽器,由瀏覽器對此作處理。它的代碼可以直接嵌入到HTML命令中,最大特點是可以方便操縱網站上的元素,并與Web瀏覽器交互,同時JavaScrip可以捕捉用戶操作并作出反映。JavaScript是一種基于對象和事件驅動并具有相對安全性的客戶端腳本語言。同時也是一種廣泛用于客戶端Web開發的腳本語言,常用來給HTML網頁添加動態功能,比如響應用戶的各種操作。JavaScript的一個重要功能就是面向對象的功能,通過基于對象的程序設計,可以用更直觀、模塊化和可重復使用的方式進行程序開發。在HTML基礎上,使用Javascript可以開發交互式Web網頁。Javascript的出現使得網頁和用戶之間實現了一種實時性的、動態的、交互性的關系,使網頁包含更多活躍的元素和更加精彩的內容。在本系統中很多地方使用了javascript技術,比如說,檢驗用戶輸入數據的有效性,是否重復,是否為空等等。1.4JSP技術JSP技術使用Java編程語言編寫類XML的tags和scriptlets,來封裝產生動態網頁的處理邏輯。網頁還能通過tags和scriptlets訪問存在于服務端的資源的應用邏輯。JSP將網頁邏輯與網頁設計和顯示分離,支持可重用的基于組件的設計,使基于Web的應用程序的開發變得迅速和容易。Web服務器在遇到訪問JSP網頁的請求時,首先執行其中的程序段,然后將執行結果連同JSP文件中的HTML代碼一起返回給客戶。插入的Java程序段可以操作數據庫、重新定向網頁等,以實現建立動態網頁所需要的功能。JSP與Servlet一樣,是在服務器端執行的,通常返回給客戶端就是一個HTML文本,因此客戶端只要有瀏覽器能瀏覽。JSP頁面由HTML代碼和嵌入其中的Java代碼所組成。服務器在頁面被客戶端請求以后對這些Java代碼進行處理,然后將生成的HTML頁面返回給客戶端的瀏覽器。Servlet是JSP的技術基礎,而且大型的Web應用程序的開發需要JavaServlet和JSP配合才能完成。JSP具備了Java技術的簡單易用,完全的面向對象,具有平臺無關性且安全可靠,主要面向因特網的所有特點。JSP技術的優點:(1)一次編寫,到處運行。除了系統之外,代碼不用做任何更改。(2)系統的多平臺支持。基本上可以在所有平臺上的任意環境中開發,在任意環境中進行系統部署,在任意環境中擴展。相比ASP/.net的局限性是顯而易見的。(3)強大的可伸縮性。從只有一個小的Jar文件就可以運行Servlet/JSP,到由多臺服務器進行集群和負載均衡,到多臺Application進行事務處理,消息處理,一臺服務器到無數臺服務器,Java顯示了一個巨大的生命力。(4)多樣化和功能強大的開發工具支持。Java已經有了許多非常優秀的開發工具,而且許多可以免費得到,并且其中許多已經可以順利的運行于多種平臺之下(5)支持服務器端組件。web應用需要強大的服務器端組件來支持,開發人員需要利用其他工具設計實現復雜功能的組件供web頁面調用,以增強系統性能。JSP可以使用成熟的JAVABEANS組件來實現復雜商務功能。內部對象說明:request客戶端請求,此請求會包含來自GET/POST請求的參數;response網頁傳回客戶端的響應;pageContext網頁的屬性是在這里管理;session與請求有關的會話;applicationservlet正在執行的內容;out用來傳送響應的輸出流;config代碼片段配置對象;pageJSP網頁本身;exception針對錯誤網頁,未捕捉的例外。1.5MVC模式為了滿足系統對先進性、安全性、跨平臺性、可擴展性、可移植性、分布式等方面的要求,系統總體架構設計采用先進的基于java的B/S的三層體系結構。MVC是三個單詞的縮寫,分別為:模型(Model),視圖(View)和控制Controller)[9]。MVC模式的目的就是實現Web系統的職能分工。Model層實現系統中的業務邏輯,通常可以用JavaBean或EJB來實現。View層用于與用戶的交互,通常用JSP來實現。Controller層是Model與View之間溝通的橋梁,它可以分派用戶的請求并選擇恰當的視圖以用于顯示,同時它也可以解釋用戶的輸入并將它們映射為模型層可執行的操作。Web瀏覽技術已經廣泛地應用于Internet,并被廣大用戶接受和使用。Web技術是隨http和html一起出現的。Web服務器利用http傳遞html文件,Web瀏覽器使用http檢索html文件。Web服務器一旦檢索到信息,Web瀏覽器就會以靜態和交互(如文本、圖像)方式顯示各種對象。在電子商務業務進行過程中,需要在各種貿易角色之間瀏覽和交換各種信息,此時就要使用Web瀏覽技術。這種模型使系統結構更加清楚,分工更加明確,有利于整個系統后期的維護和升級。MVC(ModelViewController)模型(model)-視圖(view)-控制器(controller)MVC本來是存在于Desktop程序中的,M是指數據模型,V是指用戶界面,C則是控制器。使用MVC的目的是將M和V的實現代碼分離,從而使同一個程序可以使用不同的表現形式。比如一批統計數據你可以分別用柱狀圖、餅圖來表示。C存在的目的則是確保M和V的同步,一旦M改變,V應該同步更新。模型-視圖-控制器(MVC)是XeroxPARC在八十年代為編程語言Smalltalk-80發明的一種軟件設計模式,至今已被廣泛使用。最近幾年被推薦為Oracle旗下Sun公司JavaEE平臺的設計模式,并且受到越來越多的使用ColdFusion和PHP的開發者的歡迎。模型-視圖-控制器模式是一個有用的工具箱,它有很多好處,但也有一些缺點。三層體系結構由瀏覽器、web服務器和數據庫組成,并結合HTML語言、jsp、JavaScript腳本語言、Ajax、ODBC等技術,后臺的數據庫采用微軟的MySQL2005,系統一般的MVC模型如圖1-1所示。圖1-1系統MVC結構圖如圖1-1可知,用戶界面層是用戶和整個系統的接口,客戶端只需安裝通用的瀏覽器即可建立與本系統的連接。業務邏輯層負責處理用戶輸入的信息,或將這些信息發送給數據庫層進行保存,或調用數據庫層中的函數再次讀出這些數據。數據訪問層是整個分層體系的最底層,它主要用來實現與數據庫的交互,即完成查詢、插入、刪除和修改數據庫中數據的功能MVC是一個設計模式,它強制性的使應用程序的輸入、處理和輸出分開。使用MVC應用程序被分成三個核心部件:模型、視圖、控制器。它們各自處理自己的任務。分層概念視圖,模型,控制器。視圖是用戶看到并與之交互的界面。對老式的Web應用程序來說,視圖就是由HTML元素組成的界面,在新式的Web應用程序中,HTML依舊在視圖中扮演著重要的角色,但一些新的技術已層出不窮,它們包括MacromediaFlash和象XHTML,XML/XSL,WML等一些標識語言和Webservices。如何處理應用程序的界面變得越來越有挑戰性。MVC一個大的好處是它能為你的應用程序處理很多不同的視圖。在視圖中其實沒有真正的處理發生,不管這些數據是聯機存儲的還是一個雇員列表,作為視圖來講,它只是作為一種輸出數據并允許用戶操縱的方式。模型表示企業數據和業務規則。在MVC的三個部件中,模型擁有最多的處理任務。例如它可能用象EJBs和ColdFusionComponents這樣的構件對象來處理數據庫。被模型返回的數據是中立的,就是說模型與數據格式無關,這樣一個模型能為多個視圖提供數據。MVC模型還可以實現軟件工程的高內聚,低耦合的終極目標。由于應用于模型的代碼只需寫一次就可以被多個視圖重用,所以減少了代碼的重復性。控制器接受用戶的輸入并調用模型和視圖去完成用戶的需求。所以當單擊Web頁面中的超鏈接和發送HTML表單時,控制器本身不輸出任何東西和做任何處理。它只是接收請求并決定調用哪個模型構件去處理請求自己本身并不參與業務邏輯處理,然后再確定用哪個視圖來顯示返回的數據。MVC的優點:1)低耦合性2)高重用性和可適用性3)較低的生命周期成本4)快速的部署5)可維護性6)有利于軟件工程化管理1.6Tomcat介紹Tomcat是Apache軟件基金會(ApacheSoftwareFoundation)的Jakarta項目中的一個核心項目,由Apache、Sun和其他一些公司及個人共同開發而成。由于有了Sun的參與和支持,最新的Servlet和JSP規范總是能在Tomcat中得到體現,Tomcat5支持最新的Servlet2.4和JSP2.0規范。因為Tomcat技術先進、性能穩定,而且免費,因而深受Java愛好者的喜愛并得到了部分軟件開發商的認可,成為目前比較流行的Web應用服務器。目前最新版本是7.0。Tomcat很受廣大程序員的喜歡,因為它運行時占用的系統資源小,擴展性好,支持負載平衡與郵件服務等開發應用系統常用的功能;而且它還在不斷的改進和完善中,任何一個感興趣的程序員都可以更改它或在其中加入新的功能。Tomcat是一個輕量級應用服務器,在中小型系統和并發訪問用戶不是很多的場合下被普遍使用,是開發和調試JSP程序的首選。對于一個初學者來說,可以這樣認為,當在一臺機器上配置好Apache服務器,可利用它響應對HTML頁面的訪問請求。實際上Tomcat部分是Apache服務器的擴展,但它是獨立運行的,所以當你運行tomcat時,它實際上作為一個與Apache獨立的進程單獨運行的。這里的訣竅是,當配置正確時,Apache為HTML頁面服務,而Tomcat實際上運行JSP頁面和Servlet。另外,Tomcat和IIS、Apache等Web服務器一樣,具有處理HTML頁面的功能,另外它還是一個Servlet和JSP容器,獨立的Servlet容器是Tomcat的默認模式。不過,Tomcat處理靜態HTML的能力不如Apache服務器。Tomcat目錄結構:/bin:存放windows或Linux平臺上啟動和關閉Tomcat的腳本文件/conf:存放Tomcat服務器的各種全局配置文件。/doc:存放Tomcat文檔/server:包含三個子目錄:classes、lib和webapps/server/lib:存放Tomcat服務器所需的各種JAR文件/server/webapps:存放Tomcat自帶的兩個WEB應用admin應用和manager應用/common/lib:存放Tomcat服務器以及所有web應用都可以訪問的jar文件/shared/lib:存放所有web應用都可以訪問的jar文件(但不能被Tomcat服務器訪問)/logs:存放Tomcat執行時的日志文件/src:存放Tomcat的源代碼/webapps:Tomcat的主要Web發布目錄,默認情況下把Web應用文件放于此目錄/work:存放JSP編譯后產生的class文件1.7MySQLMySQL是最受歡迎的開源SQL數據庫管理系統,它由MySQLAB開發、發布和支持。MySQLAB是一家基于MySQL開發人員的商業公司,它是一家使用了一種成功的商業模式來結合開源價值和方法論的第二代開源公司。MySQL是MySQLAB的注冊商標。MySQL是一個快速的、多線程、多用戶和健壯的SQL數據庫服務器。MySQL服務器支持關鍵任務、重負載生產系統的使用,也可以將它嵌入到一個大配置(mass-deployed)的軟件中去。MySQL網站()提供了關于MySQL和MySQLAB的最新的消息。MySQL是一個數據庫管理系統一個數據庫是一個結構化的數據集合。它可以是從一個簡單的銷售表到一個美術館、或者一個社團網絡的龐大的信息集合。如果要添加、訪問和處理存儲在一個計算機數據庫中的數據,你就需要一個像MySQL這樣的數據庫管理系統。從計算機可以很好的處理大量的數據以來,數據庫管理系統就在計算機處理中和獨立應用程序或其他部分應用程序一樣扮演著一個重要的角色。MySQL是一個關系數據庫管理系統關系數據庫把數據存放在分立的表格中,這比把所有數據存放在一個大倉庫中要好得多,這樣做將增加你的速度和靈活性。“MySQL”中的SQL代表“StructuredQueryLanguage”(結構化查詢語言)。SQL是用于訪問數據庫的最通用的標準語言,它是由ANSI/ISO定義的SQL標準。SQL標準發展自1986年以來,已經存在多個版本:SQL-86,SQL-92,SQL:1999,SQL:2003,其中SQL:2003是該標準的當前版本。MySQL是開源的開源意味著任何人都可以使用和修改該軟件,任何人都可以從Internet上下載和使用MySQL而不需要支付任何費用。如果你愿意,你可以研究其源代碼,并根據你的需要修改它。MySQL使用GPL(GNUGeneralPublicLicense,通用公共許可),在hpt:///licenses中定義了你在不同的場合對軟件可以或不可以做什么。如果你覺得GPL不爽或者想把MySQL的源代碼集成到一個商業應用中去,你可以向MySQLAB購買一個商業許可版本。2系統需求分析2.1開發環境本系統的開發環境為WindowsXP,數據庫使用的是開源的MySQL,使用DreamweaverMX2004軟件制作網頁,發布使用MyEclipse工具。采用JSP為服務器端腳本環境,腳本語言使用JavaScript編寫的婚紗影樓管理系統,不需要安裝客戶端程序,客戶端只需安裝瀏覽器即可,使用方便,方便升級維護,方便與Internet和Internet上的應用程序集成。2.2需求分析需求分析是指理解用戶需求,就軟件功能與客戶達成一致,估計軟件風險和評估項目代價,最終形成開發計劃的一個復雜過程。需求分析之所以重要,就因為他具有決策性、方向性、策略性的作用,需求分析是軟件定義的最后一個階段,它的基本任務是回答“系統必須做什么”這個問題。需求分析的任務不是確定系統怎樣完成他的工作,而僅僅是確定系統完成哪些工作,也就是對目標系統提出完整、準確、清晰、具體的要求,它在軟件開發的過程中具有舉足輕重的地位。系統初步調查的主要目標是從系統分析人員和管理人員的角度看新項目開發有無必要和可能,其基本內容包括:系統的基本情況、系統信息處理情況和系統資源情況。獨具匠心的網站規劃設計就像一幢宏偉的建筑前期的規劃設計一樣,要進行認真、科學總體規劃,之后才可以“破土動工”。2.3可行性分析(1)經濟性服務器端的安裝簡潔明了,客戶機無需再裝任何軟件,通過瀏覽器就可以直接訪問,可以直接接入Internet,無論您身在何處,只要您可以訪問Internet都可以使用本系統。本系統對計算機配置的要求不高,企業機房更換下來的低配置電腦都可以完全滿足需要,所以在經濟上具有完全的可行性(2)技術性本系統開發工具是MyEclipse和MySQL數據庫,開發語言是Java,主要使用了J2EE的技術,java是一種面向對象編程語言,簡單易學而且靈活方便。大三時就學習了java課程,大四期間也系統的了解了J2EE的知識,作品展示網系統總體上開發難度不高,數據庫的設計和操作是本系統設計的核心。在大學期間學習過軟件工程,軟件測試,UML統一建模語言等課程,每個學期也會完成對應的課程設計,具備一定的系統分析、設計和測試能力。因此,完成系統實現在技術上完全具有可行性(3)操作系本系統操作簡單,輸入信息頁面大多數都是下拉框的選擇形式,在某些頁面,信息可以自動生成,無需輸入,時間的輸入也是用的日歷控件,操作簡便,對用戶的要求很低,只需對WINDOWS操作熟練,而且本系統可視性非常好,所以在技術上不會有很大難度。(4)法律性本系統是自行開發的管理系統,是很有實際意義的系統,開發環境軟件和使用的數據庫都是開源代碼,開發這個系統不同于開發普通的系統軟件,不存在侵權等問題,即法律上是可行的。3系統概要設計3.1系統設計概述系統設計是在系統分析的基礎上由抽象到具體的過程,同時,還應考慮到系統所實現的內外環境和主客觀條件,本著實事求是的態度進行這一階段的工作。系統設計階段的主要目的是將系統分析階段所提出的反映用戶信息需求的系統邏輯方案轉換成可以實施的基于計算機與通信系統的物理方案。這一階段的主要任務就是從管理信息系統的總體目標出發,根據系統分析階段對系統的邏輯功能的要求,并考慮到經濟、技術和運行環境等方面的條件,確定系統的總體結構和系統各組成部分的技術方案,合理選擇計算機和通信的軟、硬件設備,提出系統的實施計劃,確保系統總體目標的實現[11]。系統設計工作的特點:1)系統設計階段,大量工作是技術性的。2)允許用戶對已提出的信息需求做非原則性的修改或補充。3)用戶在操作使用和運行環境等方面的具體要求也要在系統設計階段加以明確并在系統的技術方案中得反映,因此系統設計人員還要同管理環境打交道。4)系統設計工作的環境是管理環境和技術環境的結合,是系統設計工作的重要特點也是整個系統成功的一個必不可缺的環節。系統設計原則 1)階段開發原則:系統框架和數據結構全面設計,具體功能實現分階段進行。 2)易用性原則:方便上網客戶瀏覽和操作,最大限度地減輕后臺管理人員的負擔,做到部分業務的自動化處理,提供良好的用戶體驗。 3)業務完整性原則:對于業務進行中的特殊情況能夠做出及時、正確的響應,保證業務數據的完整性,減少數據的誤讀。 4)業務規范化原則:在系統設計的同時,也為將來的業務流程制定了較為完善的規范,具有較強的實際操作性,也給整個系統帶來安全性。 5)可擴展性原則:系統設計要考慮到業務未來發展的需要,要盡可能設計得簡明,各個功能模塊間的耦合度小,便于系統的擴展。如果存在舊有的數據庫系統,則需要充分考慮兼容性,比如說瀏覽器的兼容。3.2系統用例圖用戶的操作: 1、可以在線注冊 2、作品信息瀏覽。 3、系統留言板模塊發布留言。4、新聞資訊瀏覽。5、上傳攝影作品

用戶用例圖,如圖3-1所示:圖3-1用戶模塊用例圖管理員的操作:1、管理員可以管理注冊的用戶信息。2、管理員可以管理作品類別。3、管理員可以管理用戶上傳的作品。4、管理員可以進行新聞資訊的管理。6、管理員可以進行系統留言板的管理。管理員用例圖,如圖3-2所示:圖3-2管理員用例圖3.3系統功能模塊圖圖3-5系統前臺功能圖 圖3-6管理員功能圖4數據庫設計與實現4.1數據庫結構設計數據庫是“按照數據結構來組織、存儲和管理數據的倉庫”。作為網絡的一個重要應用,數據庫在網站建設中發揮著重要的作用,與普通網站相對而言,具有數據庫功能的網站網頁我們通常稱為動態頁面,也就是說頁面不是一層不變的,頁面上內容(或部分內容)是動態生成的,它可以根據數據庫中相應部分內容的調整而變化,使網站內容更靈活,維護更方便,更新更便捷。MySQL數據庫,由于具有操作簡單、界面友好等特點,具有較大的用戶群體。本系統數據庫采用MySQL數據庫,系統數據庫名稱為db_zp,下面分別給出數據表概要說明、主要數據表的結構。4.1.1表概要說明系統數據庫db_dj中含有6張數據表,用戶信息表t_xuesheng、作品類別信息表t_lasohi、管理員信息表t_admin、新聞資訊表t_news、攝影作品表t_zuopin、留言信息表t_liuyan。4.1.2數據表的結構(1)t_zuopin(攝影作品表)攝影作品表主要用于保存用戶上傳的作品,如作品標題、作品介紹、上傳時間,該表結構如表4.1所示。表4.1t_zuopin表結構字段名數據類型長度主鍵否描述idint4是自動編號xuesheng_idint50否用戶信息mingchengvarchar50否作品名稱jieshaovarchar50否作品介紹fujianvarchar50否作品圖片fenshuint50否分數pingyuvarchar50否作品類別評語(2)t_news(新聞資訊表)新聞資訊表主要用于保存管理員發布的新聞的信息,比如標題、內容、發布時間,該表結構如表4.2所示。表2.4t_news表結構字段名數據類型長度主鍵否描述news_idint4是自動編號news_titlevarchar50否標題news_contentvarchar50否內容news_datevarchar50否發布時間(3)t_user(用戶信息表)用戶信息表主要用于保存注冊的用戶信息,該表結構如表4.3所示。表4.3t_user的結構字段名數據類型長度主鍵否描述idint4是自動編號xuehaoint50否學號xingmingvarchar50否姓名xingbievarchar50否性別nianlingvarchar50否年齡banjivarchar50否班級loginpwvarchar50否登錄密碼(4)t_admin(管理員信息表)管理員信息表主要用于保存管理員的基本信息,該表結構如表4.4所示。表4.4t_user的結構字段名數據類型長度主鍵否描述idint4是自動編號userNamevarchar50否登錄賬號userPwvarchar50否登錄密碼(5)t_laoshi(作品類別表)作品類別表主要用于保存作品類別的信息,比如標題、內容、發布時間,該表結構如表4.5所示。表4.5t_laoshi的結構字段名數據類型長度主鍵否描述idint4是自動編號xingmingvarchar50否名稱(6)t_liuyan(留言信息表)留言信息表主要用于保存用戶的留言信息信息,比如留言標題、留言內容、留言時間,該表結構如表4.6所示。表2.4t_liuyan表結構字段名數據類型長度主鍵否描述idint4是自動編號neirongvarchar50否留言內容liuyanshivarchar50否留言時間userIdvarchar50否用戶信息huifuvarchar50否回復信息huifushivarchar50否回復時間5系統的實現5.1網站前臺模塊5.1.1前臺首頁是瀏覽者打開一個網站后第一眼看到的網頁,網站能不能吸引瀏覽者,在很大程度上取決于首頁做得怎么樣。首頁包含內容雖然豐富但不雜亂,色彩搭配要合理,整體風格要獨特。網站前臺首頁的運行結果如圖5-1所示。圖5-1網站首頁運行結果5.1.2網站導航設計導航是網站設計不可缺少的基礎元素之一,它不僅是信息結構的基礎分類,也是瀏覽者的網站路標,就像一本書或雜志的目錄一樣,但比書籍或雜志的目錄更為重要,因為書籍我們可以一頁一頁的從頭向后翻,而我們的網頁卻不可以,只有有了清楚、明晰的導航,才能讓瀏覽者知道自己身處網站的什么位置。網站導航有很多種,如帶圖標的文字導航、按鈕導航、Flash導航等。網站導航設計效果頁面如圖5-2所示。圖5-2網站導航頁面設計效果5.1.3作品展示列表作品展示模塊的主要功能是讓用戶瀏覽用戶上傳的作品信息,因此作品展示模塊主要包括作品列表、詳細信息內容兩個部分。點擊導航欄“作品列表”按扭,進入作品列表頁面,頁面中會顯示作品的圖片和作品名稱,該頁面的設計效果如圖5-3所示。圖5-3黨團知識模塊界面設計此頁面的主要代碼是通過調用zuopinAction的方法zuopinAll方法來實現的。該方法的主要功能是查詢數據庫,獲取相關的信息,并綁定這些信息到reqeust對象,然后傳遞到JSP頁面顯示。代碼主要是:publicStringzuopinAll(){HttpServletRequestrequest=ServletActionContext.getRequest(); Stringsql="fromTZuopin"; ListzuopinList=zuopinDAO.getHibernateTemplate().find(sql); request.setAttribute("zuopinList",zuopinList); returnActionSupport.SUCCESS; } publicStringzuopinDetailQian() {TZuopinzuopin=zuopinDAO.findById(id); Maprequest=(Map)ServletActionContext.getContext().get("request"); request.put("zuopin",zuopin); returnActionSupport.SUCCESS; }然后點擊作品圖片進入相應的信息詳細頁面,執行頁面效果如圖5-4。圖5-4作品信息詳細界面5.1.4用戶注冊實現對于普通游客,只有瀏覽的功能和基本的功能,如果想進一步使用本系統,比如說留言板功能、作品提交等,首先需要注冊一個合法的賬號,然后登陸后,方能使用,點擊導航欄菜單“用戶注冊”,調用js的open()方法,彈出注冊頁面,輸入相關正確信息后點擊注冊按鈕即可完成注冊,如果是沒有輸入完整的信息,或都會給出相應的錯誤提示,不能錄入成功。輸入數據都通過form表單中定義的方法onsubmit="returncheckForm()"來檢查,checkForm()函數中是各種的校驗輸入數據的方式。2.程序效果圖如圖4.19所示:圖4.19用戶注冊界面設計用戶注冊關鍵代碼publicStringuserReg(){ Maprequest=(Map)ServletActionContext.getContext().get("request"); Stringsql="fromTUserwherexuehao='"+xuehao.trim()+"'"; Listlist=userDAO.getHibernateTemplate().find(sql); if(list.size()>0) { request.put("msg","學號重復。請重新輸入"); } else { TUseruser=newTUser(); user.setXuehao(xuehao); user.setXingming(xingming); user.setXingbie(xingbie); user.setNianling(nianling); user.setBanji(banji); user.setLoginpw(loginpw); user.setDel("no"); userDAO.save(user); request.put("msg","注冊成功。請登錄"); } return"msg"; }5.2用戶功能模塊5.2.1提交攝影作品用戶通過注冊,然后登錄系統后,可以在線留言,和管理員進校交流,還可以提交攝影作品,作品類別登陸系統后,可以進行打分和寫評語操作。2.程序效果圖如圖4.19所示:圖4.19提交作品界面設計提交作品關鍵代碼:publicStringzuopinAdd(){ HttpServletRequestrequest=ServletActionContext.getRequest(); HttpSessionsession=request.getSession(); TUseruser=(TUser)session.getAttribute("user"); TZuopinzuopin=newTZuopin(); zuopin.setUserId(user.getId());zuopin.setMingcheng(mingcheng);zuopin.setJieshao(jieshao);zuopin.setFujian(fujian);zuopin.setFenshu(0);zuopin.setPingyu("");zuopinDAO.save(zuopin);request.setAttribute("msg","作品上傳完畢");return"msg"; } publicStringzuopinMine() { HttpServletRequestrequest=ServletActionContext.getRequest(); HttpSessionsession=request.getSession(); TUseruser=(TUser)session.getAttribute("user"); Stringsql="fromTZuopinwhereuserId="+user.getId(); ListzuopinList=zuopinDAO.getHibernateTemplate().find(sql); request.setAttribute("zuopinList",zuopinList); returnActionSupport.SUCCESS; }5.2.2管理我的作品用戶在登陸的入庫登陸系統后,點擊“管理中心”超鏈接,進入個人中心管理界面,課余管理自己的作品信息,5.3管理員模塊5.3.1登陸界面設計由于網站后臺是用于維護整個網站系統,所以必須先要登錄系統,才能進校相關的管理操作,當用戶單擊“管理員登錄”超鏈接時,將彈出確認進入后臺管理頁面的程序窗口,要求用戶輸入正確的用戶名、密碼,二者缺一不可,管理員通過后臺登錄入口進入后臺登錄模塊,后臺登錄模塊主要用于驗證管理員的身份和密碼。后臺登錄模塊的運行效果如圖5-6:圖5-6后臺登錄模塊的設計效果圖判斷管理員身份的相應代碼:publicStringlogin(StringuserName,StringuserPw,intuserType) { try { Thread.sleep(700); }catch(InterruptedExceptione) { //TODOAuto-generatedcatchblock e.printStackTrace(); } Stringresult="no"; if(userType==0)//系統管理員登陸 { Stringsql="select*fromt_adminwhereuserName=?anduserPw=?"; Object[]params={userName,userPw}; DBmydb=newDB(); mydb.doPstm(sql,params); try { ResultSetrs=mydb.getRs(); booleanmark=(rs==null||!rs.next()?false:true); if(mark==false) { result="no"; } else { result="yes"; TAdminadmin=newTAdmin(); admin.setUserId(rs.getInt("userId")); admin.setUserName(rs.getString("userName")); admin.setUserPw(rs.getString("userPw")); WebContextctx=WebContextFactory.get(); HttpSessionsession=ctx.getSession(); session.setAttribute("userType",0); session.setAttribute("admin",admin); } rs.close(); } catch(SQLExceptione) { System.out.println("登錄失敗!"); e.printStackTrace(); } finally { mydb.closed(); } } if(userType==1) { } if(userType==2) { } returnresult; }5.3.2用戶信息管理本模塊實現對注冊的用戶進行管理操作,包括用戶信息的查詢、刪除操作。點擊用戶信息管理菜單,進入用戶信息管理頁面,該頁面通過列表列出已注冊的用戶信息信息,包括姓名、性別、班級等。點擊列表的刪除按鈕,實現信息的刪除操作。界面設計如圖5-8:圖5-8用戶信息信息管理該模塊的主要功能userAction類實現的,該類的主要功能是與數據庫交互,查詢或刪除用戶信息,,并通過response跳轉,打開相應的jsp頁面。主要代碼是publicStringuserMana(){ Stringsql="fromTUserwheredel='no'"; ListuserList=userDAO.getHibernateTemplate().find(sql); Maprequest=(Map)ServletActionContext.getContext().get("request"); request.put("userList",userList); returnActionSupport.SUCCESS; } publicStringuserDel() { TUseruser=userDAO.findById(id); user.setDel("yes"); userDAO.attachDirty(user); Maprequest=(Map)ServletActionContext.getContext().get("request"); request.put("msg","操作成功"); return"msg";}5.3.3作品類別本模塊實現對作品類別的管理操作,包括作品類別信息的添加和刪除等操作。點擊作品類別信息管理菜單,進入作品類別信息管理頁面。點擊列表的刪除按鈕,實現信息的刪除操作。界面設計如圖5-8:圖5-8作品類別信息管理點擊添加按鈕,進入作品類別信息添加頁面,輸入符合條件的作品類別信息,完成作品類別的添加操作。界面設計如圖5-9:圖5-9作品類別信息添加該模塊的主要功能lasohiAction類實現的,該類的主要功能是與數據庫交互,查詢或保存類別信息,并通過response跳轉,打開相應的jsp頁面。主要代碼是:publicStringlaoshiAdd(){ TLaoshilaoshi=newTLaoshi(); laoshi.setBianhao(bianhao); laoshi.setXingming(xingming); laoshi.setXingbie(xingbie); laoshi.setNianling(nianling); laoshi.setLoginpw(loginpw); laoshi.setDel("no"); laoshiDAO.save(laoshi); Maprequest=(Map)ServletActionContext.getContext().get("request"); request.put("msg","信息添加成功"); return"msg"; } publicStringlaoshiMana() { Stringsql="fromTLaoshiwheredel='no'"; ListlaoshiList=laoshiDAO.getHibernateTemplate().find(sql); Maprequest=(Map)ServletActionContext.getContext().get("request"); request.put("laoshiList",laoshiList); returnActionSupport.SUCCESS; } publicStringlaoshiDel() { TLaoshilaoshi=laoshiDAO.findById(id); laoshi.setDel("yes"); laoshiDAO.attachDirty(laoshi); Maprequest=(Map)ServletActionContext.getContext().get("request"); request.put("msg","信息刪除成功"); return"msg"; }5.3.4作品信息管理本模塊實現對用戶上傳的作品進行管理操作,包括作品信息的查詢、刪除操作。點擊作品信息管理菜單,進入作品信息管理頁面,該頁面通過列表列出用戶上傳的作品信息,包括作品名稱、圖片、介紹、提交時間等。點擊列表的刪除按鈕,實現信息的刪除操作。界面設計如圖5-8:圖5-8作品信息信息管理該模塊的主要功能zuopinAction類實現的,該類的主要功能是與數據庫交互,查詢或刪除作品信息,并通過response跳轉,打開相應的jsp頁面。主要代碼是publicStringzuopinDel(){ TZuopinzuopin=zuopinDAO.findById(id); zuopinDAO.delete(zuopin); HttpServletRequestrequest=ServletActionContext.getRequest(); request.setAttribute("msg","作品刪除完畢");return"msg"; } publicStringzuopinMana() { HttpServletRequestrequest=ServletActionContext.getRequest(); Stringsql="fromTZuopin"; ListzuopinList=zuopinDAO.getHibernateTemplate().find(sql); request.setAttribute("zuopinList",zuopinList); returnActionSupport.SUCCESS;}5.3.4退出系統后臺退出后臺管理模塊主要用于退出后臺管理系統。當管理員退出后臺管理系統之后,再單擊【退出】按鈕時,雖還在后臺中,但已不能進行任何操作;單擊其他功能模塊時,將彈出后臺登錄窗口,要求用戶輸入正確的用戶名、密碼以及驗證碼。6系統測試系統測試是系統開發過程的重要組成部分,是用來確認一個系統的品質或性能是否符合開發之前所提出的一些要求。系統測試就是在系統

溫馨提示

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

評論

0/150

提交評論