日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

java毕业设计——基于java+JSP+MySQL的网上购书系统设计与实现(毕业论文+程序源码)——网上购书系统

發布時間:2024/3/12 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java毕业设计——基于java+JSP+MySQL的网上购书系统设计与实现(毕业论文+程序源码)——网上购书系统 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

基于java+JSP+MySQL的網上購書系統設計與實現(畢業論文+程序源碼)

大家好,今天給大家介紹基于java+JSP+MySQL的網上購書系統設計與實現,文章末尾附有本畢業設計的論文和源碼下載地址哦。

文章目錄:

  • 基于java+JSP+MySQL的網上購書系統設計與實現(畢業論文+程序源碼)
    • 1、項目簡介
    • 2、資源詳情
    • 3、關鍵詞:
    • 4、畢設簡介
    • 5、資源下載

1、項目簡介

  • 本網站頁面主要用JSP實現,業務邏輯層用SSH框架(Hibernate+Struts+Spring)及Java代碼實現,數據管理用MySQL數據庫,開發工具使用Eclipse,服務器用Tomcat8最新版本。本系統針對管理員和普通兩類用戶設置了不同的功能。管理員功能包括:圖書信息管理、圖書類別管理、訂單管理、用戶信息管理;普通用戶功能包括:注冊信息、瀏覽書店信息、瀏覽圖書信息、搜索圖書、在線生成訂單等功能。該系統用戶界面友好,模塊劃分清晰,具有使用方便,安全穩定,維護簡單等特點。

  • 2、資源詳情

    項目難度:中等難度
    適用場景:相關題目的畢業設計
    配套論文字數:24014個字57頁
    包含內容:整套源碼+完整畢業論文+答辯PPT+任務書+輔導視頻+運行截圖


    3、關鍵詞:

    網上購書;Java;JSP;MySQL

    4、畢設簡介

    提示:以下為畢業論文的簡略介紹,項目源碼及完整畢業論文下載地址見文末。

    1 前言
    1.1 概述
    省略

    從商家角度來看,當打點店鋪的職工想查找哪一類圖書銷量大需要進貨時,要根據每一天的銷量情況來決定。當然用數據說話更準確,例如用庫房的電腦查看銷售圖書數量以及類別,這樣就很繁瑣。從買家為出發點的話,想要購買書籍還要先去圖書館查看是否有心中所想的那本書及價錢,要想比較不同書店同一本書的價格還要跑到另一家去讓工作人員手工查找,很費時間及人力。隨著社會發展,網店的出現,機械以精準、快速而遠超過手工運轉的大優勢替代手工,工作職員再也不用手工查書了,更方便的是其可在電腦上輸入書名就能快速出現結果;消費者也可以通過在同一個平臺的不同頁面查詢自己需要的書籍及單價,還能同時登陸不同的平臺來進行比較不同商家的同一件商品,很大水平上節省了人們的時間,因此網上購書既節約時間又不耗費人力、不必要的費用,讓賣家和買家間的溝通矛盾有效減少了。

    1.2 整體敘述
    本論文所包括的主要內容章節整體信息如下:
    1、可行性分析
    本系統的分析主要從技術方面著手,判斷可完成的功能,再從經濟角度出發,得出系統開發的成本和硬件條件以及最后系統的部署環境、運行成本等,以上都可行后說明該系統的是有必要開發的[6]。

    2、系統分析
    當今社會互聯網的飛快發展,社會主流網絡購物已經深入眾多消費者人心,因此,為了讓消費者的買書需求得到滿足讓人們的生活水平提高,也是為更好的社會發展,讓消費者買書更方便快捷,就此,嘗試開發一個小型網上購書系統來滿足眾多消費者。目前,也有很好的購書網站,比如淘寶網、亞馬遜、當當網等平臺被人們所熟知,本小型平臺在借鑒他人勞動成果的基礎上鍛煉自己的技術水平。每個軟件項目在正式開發前都要研究分析其是否可行,意義在于預防開發中未預料到的問題的出現。

    3、系統總體設計
    (1)瀏覽器/服務端模式是本系統總體開發的模式,該模式有以下好處:
    (a)層次清晰分明的前臺、后臺邏輯處理關系,符合很多已經對于網絡搜索熟悉習慣的消費者;
    (b)使用面向對象理念設計和開發概念、使用模塊化方式設計。模塊化設計就是將所有功能都分解開來,分成若干個子功能模塊,這樣簡化系統設計實現,讓重復的代碼能將其單獨作為一個類或方法,實現代碼重載,不僅讓開發更簡單,而且提高了代碼維護性。系統開發不僅要實現功能,而且要考慮系統可靠性,既滿足設計要求又可以在此基礎上進行改進擴展,更能適應社會發展滿足人們需求。
    (2)數據庫設計:使用MySQL,本系統后臺程序使用Struts+Spring+hibernate即SSH框架,在Spring的配置文件中配置數據庫相關信息。

    4、系統詳細設計與實現
    系統詳細設計要完成的是各模塊代碼的編寫(包括前端網站各頁面和后臺管理系統),用戶交互界面的設計等內容。

    系統前臺模塊包括用戶進入網站首頁、查看圖書和網站虛擬書店的信息,注冊信息、登錄網站、加入購物車和下訂單等內容;系統后臺管理模塊分為管理層用戶登錄后臺、添加圖書類別、更新圖書信息等內容;用戶交互界面的設計包括一般用戶登錄模塊界面的設計和后臺管理界面的設計。

    該網上購書系統的界面簡單大方,方便各年齡階段的消費者使用,有著友好和錯誤的提示操作。系統管理者功能有:更新書籍信息、對書籍分類、對訂單標記已處理、添加用戶、管理系統等。普通用戶可以查看圖書信息,圖書分類查詢,生成購買書籍訂單,修改個人的基本信息等功能。保障性大,避免了人為的破壞性行為。

    5、系統測試
    每個系統開發中都會有或多或少的bug,系統檢測的目的是極大多數的檢查出軟件中出現的問題,增強程序的可靠性。這個過程又分為3個步驟:模塊、接口、驗收測試。

    在系統初步形成時,為了看到自己開發的成果,一開始用于檢測的信息都是隨意輸入,單純地為了測試,用戶信息也不是真的。但是到后來,要檢驗系統的可靠性使用了較真實的測試信息,并清除了假數據。
    在通過不斷的測試消滅各種bug,才能讓系統放心運作起
    來。

    6、系統運行和維護
    系統開發測試完畢后就要投入使用了,確保系統能正常運行非常重要,社會不斷發展人們的需求也在不斷變化,這就要求系統維護人員能及時發現系統問題并向上級反映對系統改進。

    2 系統開發背景
    2.1 課題的背景
    省略

    網上購書是電子商務網站的一種類型。網上購書是近年來隨著網絡技術的發展而產生的一種新型的書店形式。隨著網絡的發展,電子商務的不斷完善,賣書商家越來越強烈地意識到網絡帶來的巨大商機,幾乎都進行圖書的線上銷售經營活動,不管對于商家網上銷售還是對于消費者網上購書都是種新型的銷售和購書模式,并很受歡迎。

    2.2 課題的研究現狀
    省略

    2.3 課題的研究意義
    省略

    3 系統分析
    3.1 系統開發目的與意義
    省略

    3.2 可行性分析
    省略

    3.2.1 技術可行性
    該軟件系統使用我們學過的開發工具Eclipse開發,用具有性能高、跨平臺、代碼可重載的Java編程語言編碼,數據庫使用開源軟件MySQL。而且對于ssh框架這些都有所學習, ssh框架有良好的可擴展性和可維護性,提高了對象管理方法,因此對我而言,在技術上實現該系統是行得通的。

    本軟件體系的協議傳輸和請求返回原理工作圖如下圖1:

    圖3.1 系統工作原理圖

    3.2.2 經濟可行性
    省略

    3.2.3 操作可行性
    省略

    3.2.4 法律可行性
    省略

    3.2.5 管理可行性
    省略

    3.3 需求分析
    3.3.1 功能需求分析
    1、該系統所具有的功能需求有:
    1)前臺網站:
    a、一般游客:瀏覽書店簡介、瀏覽圖書信息、搜索圖書、根據分類 查尋圖書、注冊信息等功能;
    b、在線用戶:包含上邊普通游客所有功能,登陸網站、添加書籍到購物車、管理已購買書籍訂單等功能。

    2)后臺管理:管理員可管理圖書、設置是否是促銷或最新圖書;工作人員可以查看、增添用戶;管理圖書種類,包含查看所有分類、增添書籍類型;管理訂單包括查看所有用戶訂單、標記訂單是否已處理、查看詳情、刪除等功能。

    3.3.2 數據邏輯分析
    在網站系統頁面,若注冊信息,用戶填寫的信息會提交到UserAction類,判斷用戶名和密碼是否正確從而調用service層,service層調用dao層添加用戶信息,以此類推,各種數據只要和數據庫打交道那就需要經過action類,在對應action類中進行邏輯處理,跳轉到相應頁面,需要操作數據庫時action類調用service層類,再調用dao層類來實現數據的保存或更新及刪除。

    3.3.3 性能需求分析
    1、系統的安全性
    在管理限定上嚴格管制,本軟件體系要求如下:
    1)對于后臺管理系統,首先必須是系統的管理員才能對系統各方面進行更新,其次須憑借無誤的昵稱和密碼口令登陸到系統,沒有權限包含不是管理工作人員或者是工作人員時輸入不正確的昵稱或密碼口令登陸系統的人員都不能登陸進后臺,對系統中任何信息都不能查看或更新,這樣來保證系統的安全性和可靠性。

    2)對于前臺網站首頁,對于擁有不同權限的用戶來說,有兩種權限分別是一般游客和在線用戶,這兩種消費者不能跨越本級別操作。具體:一般游客只能在網站首頁瀏覽虛擬書店的介紹信息、書籍的基本信息以及分類查詢書籍和搜索書籍,這類用戶通過在網站注冊信息登錄即可變成在線用戶;在線用戶不但具備一般游客全部能力,而且可以生成訂單、管理訂單、更改個人基本信息。

    2、數據的完整性

  • 系統用到的全部信息的完整性,包含保存用戶個人信息和書籍的信息。
    2) 信息和信息保持一定的互動。
  • 同一種信息在不同表中保存的數據應保持相同。
  • 3.4 數據庫分析
    數據庫是計算機系統的核心,其在數據庫系統的管理下,對信息進行收集、整理、儲存、檢索、數據更新、數據加工以及數據統計和有用消息的傳達等操縱。現在,信息系統等計算機系統的根基和核心部分已經成為了數據庫,因此數據庫的品質好壞直接關系到整個體系的質量和效率。[4]

    MySQL是一種關系型數據庫,其所使用的SQL語言是常用的訪問數據庫的標準化語言,MySQL具有體積小、速度快的優點,更因其是開源軟件,這個大特點就很大程度降低了開發成本,縱使MySQL也有不足之處,但它提供的功能已綽綽有余,因此本系統使用MySQL數據庫。

    3.5 開發環境
    1、硬件環境:
    CPU:Intel(R)Core(TM)i5
    內存:4GB
    磁盤:400G以上

    2、軟件環境:
    系統類型:Win7 64位操作系統
    開發工具:Eclipse j2EE
    后臺服務器:Tomcat 8.0
    主要開發語言:JSP、Java
    瀏覽器:Firefox/IE8.0/Google Chrome

    3.6 開發工具及技術
    3.6.1 開發工具
    1、Eclipse
    Eclipse是基于Java的完全開源的一個可擴展的開發平臺,Eclipse Enterprise Workbench是針對Eclipse IDE的擴展,是Eclipse針對企業開發的平臺(簡稱Eclipse),使得我們在企業級開發應用、部署、封裝,數據庫管理方面方面提升了較高的效率。簡單來說,Eclipse是一個JavaEE開發平臺,它有編寫代碼、Debug模式下用斷點來排錯即調試、測試功能、發布應用功能,并且它完全支持一些流行框架如Hibernate、Struts等,前端編碼語言如HTML、JSP、CSS、JavaScript,還有數據庫SQL語句。

    2、Tomcat
    Tomcat是web應用開發以及調試JSP代碼的首選。Tomcat 是屬于輕量級免費的、開源的應用服務器。[5]選擇tomcat作為服務器,一般是中小型企業還有一些對于同一項目同一時間訪問的人數不是特別高的公司使用的,在開發和調試JSP 程序中,Tomcat占有絕對的優勢,運行時占用的系統資源小。[10]這些暫且不說,而且它的擴展性非常好,因為以上原因Tomcat已經備受關注,但是Tomcat并沒有說因為當前成就而停止前進的步伐。

    3、MySql
    MySQL是一種關系型數據庫,最主要的功能就是將來前臺和后臺對數據進行查詢、保存等操作,其所使用的SQL語言是常用的訪問數據庫的標準化語言。Hibernate它對JDBC做了簡單的封裝,使用Hibernate對數據進行增刪改查的功能,這次用Hibernate是因為他可實現實體類反向生成數據庫,操作簡單。
    MySql支持多種操作系統如常見的Windows、Linux等; 提供了TCP / IP、ODBC和JDBC等數據庫的連接路徑; 作為開源軟件,MySQL是小中型系統開發的不二之選。[4]

    3.6.2 開發技術
    1、JSP
    JSP在服務端器實現給客戶端瀏覽器響應的是html頁面,因此客戶端只要有瀏覽器方可看到響應內容,JSP頁面包括兩部分一個是Java語言寫的腳本代碼,另一個是html代碼。客戶端發出請求之后,頁面上的Java腳本代碼在客戶端請求web頁面之后被解析處理,然后返回給瀏覽器響應的html頁面。[2]
    JSP技術的優勢:
    (1)一次編碼,各個系統平臺都能運轉。
    (2)JSP組件跨平臺。在不同的平臺上都能運行。
    (3)擁護多種網頁格式。JSP支持html、wml等瀏覽器樣式。
    (4)JSP標簽可擴充性。JSP技術準許開發人員擴展JSP標簽,還能自定義標簽,降低了制作網頁的復雜度。
    (5)健壯性與安全性。JSP頁面包含Java代碼,而Java有健壯的存儲管理機制和高安全性,因此JSP也有健壯性和安全性。[8]

    2、JavaScript
    JavaScript腳本語言是動態弱類型的語言,它的解釋器是瀏覽器所包含的,運行在客戶端,通常應用在網頁端的腳本語言中。它一開始用于HTML(超文本標記語言)頁面,以向HTML網頁增添動態功能。

    JavaScript的特點是:
    (1)js是一種執行時再翻譯的動態語言(代碼未預先編譯);
    (2)提高用戶界面交互體驗,為頁面添加動態驗證
    (3)腳本部分的代碼要放在特定的標記中間,或者單獨寫成js文件,并引用進來;(4)js是基于瀏覽器,是運行在瀏覽器中的,就算在不同的平臺上也可運作。[3]

    3、Struts2
    Struts2優勢:
    (1)Struts2Action對象為每一個請求產生一個實例,因此沒有線程安全問題。
    (2)Struts2強大的標簽庫提高開發效率。
    (3)頁面脈絡清晰,通過查看配置文件把握整個系統的關系,方便開發人員崗位流動時的維護。

    4、Spring
    Spring是一個輕量級的控制反轉(IOC)和面向切面(AOP)的容器框架。
    Spring優勢:
    (1)Spring提供了一種管理對象的方法,可以把中間層對象有效地組織起來。一個完美的框架“黏合劑”。
    (2)有利于面向接口編程習慣的養成,使代碼結構清晰。
    (3)采用了分層結構,可以增量引入到項目中。
    (4)目的之一是為了寫出易于測試的代碼。
    (5)非侵入性,應用程序對SpringAPI的依賴可以減至最小限度。
    (6)一致的數據訪問介面。
    (7)一個輕量級的架構解決方案。

    5、Hibernate
    Hibernate是一個開放源代碼的對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數據庫。
    Hibernate優勢:
    (1)Hibernate是JDBC輕量級的封裝,占用內存較少,性能比較高。與JDBC相比,如果開發JDBC的人員技術能力非常強,hibernate執行效率會比JDBC弱一些,但是大部分情況是程序員在使用JDBC時是不可能做到最高效率,hibernate可以幫大部分開發人員提高運行效率。
    (2)可以引入第三方二級緩存,提高系統查詢效率,減少系統里存在大量單例類(singleton),大量的單例類,會降低系統的可測試性和面向對象程度。
    (3)優秀的ORM框架,理論上節省開發人員95%的開發工作量。
    (4)Hibernate兼容JDBC。

    4 系統總體設計
    4.1 設計思想
    設計思想遵循以下幾點:
    1、本系統使用瀏覽器 / 服務器模式開發,因為考慮到許多用戶已經習慣于在頁面上搜索。
    2、Java面向對象的思想應融合在整個系統的開發中,每個模塊都是獨立的,各模塊組成一個整體,零散而聚集;
    3、系統應具有安全性以及可靠性,分配角色權限是解決他們的最好途徑;
    4、操作方便,界面從優;
    5、設計不僅要重點突出,而且要細致周到。為滿足設計要求,在可能的基礎上改進系統的擴展,以適應用戶的需求。

    4.2 功能模塊設計
    該系統使用起來容易,操作簡單,有清晰明了的提示文字,讓用戶的整個購書過程很輕松享受。本體系實現的基本功能如下:
    1、一般游客:瀏覽書店簡介、瀏覽圖書信息、搜索圖書、根據分類查尋圖書、注冊信息等功能;
    2、在線用戶:包括一般游客全部功能,除此之外,還有登錄網站首頁、管理購物車、生成訂單、查看訂單等功能;
    3、管理員具有圖書類型管理、圖書信息管理、訂單查看刪除管理、用戶添加刪除管理、后臺管理功能;
    4、除了以上,該系統的用戶交互界面簡易明了,易于使用,還有友善的不正確的提示信息,有比較好的安全性。
    系統整體的功能模塊圖如圖4.1所示:

    圖4.1 系統總體功能模塊圖

    軟件體系的總體功能模塊圖,分普通用戶模塊,管理員模塊。
    普通用戶的模塊圖說明:普通用戶在網店首頁可以進行了解書店簡介,瀏覽圖書信息;如果要在線操作首先需要備案一個個人賬號,再登錄上網站,可進行在線下訂單,書籍查詢操作,如圖4.2所示:

    圖4.2 普通用戶模塊

    管理員功能結構模塊圖說明:作為一種用戶角色,管理員的權限能力最高。管理員功能結構模塊圖,如圖4.3所示:

    圖4.3 管理者模塊
    (1)用戶管理模塊:該模塊可觀察瀏覽用戶信息、更正、消除用戶信息功能。
    (2)訂單管理模塊:該模塊主要處理買家完成的訂單,查察、刪除等功能。
    (3)圖書管理模塊:該模塊主要管理書籍,包括增添圖書、更新圖書信息、設置最新圖書、推薦圖書、促銷圖書等。
    (4)書籍分類管理模塊:該模塊對圖書類型信息進行打理,包含添加新類型、查詢類別意思、改動、和消除等功能操作。其中圖書類別信息主要是類別稱號、類別含義。
    (5)系統管理模塊:書店簡介信息的更新,系統維護。
    (6)修改密碼模塊:修改管理員密碼功能。

    4.3 界面設計
    省略

    4.4 系統用戶用例圖
    用例圖的主要作用有:
    (1)獲取需求;
    (2)指導測試;
    (3)對整個系統開發過程中其它工作流起到指導作用。

    4.4.1 普通用戶用例圖
    從安全方面的角度思量,為了對買家信息和訂單保密,普通用戶即沒有登錄系統的游客不能生成訂單、更新自己基本信息,只有在網站首頁瀏覽圖書基本信息和對圖書查詢、瀏覽書店簡介等功能,其它功能須登錄實現,普通用戶用例圖如圖4.4所示:

    圖4.4 用例圖-普通用戶

    4.4.2 管理員用例圖
    管理工作人員是該系統的焦點角色,共包含六大功能模塊,管理人員的權利最大,該軟件的全部功能管理人員都能操作,其能夠實時更新系統所包含的書籍、訂單信息,而且是動態的。管理員用戶用例圖如下圖4.5所示:

    圖4.5 用例圖-管理員
    4.5 數據庫的設計
    數據庫是一種對信息的保存的過程,它建立在選定好數據庫的基礎之上。進行數據庫的設計除了分析用戶需求之外,還需要進行概念結構的設計、邏輯結構設計以及物理結構的設計,做到與系統分析與設計的階段相對應。根據系統需要在數據庫中創建訂單、用戶、書籍類別、圖書等表。

    4.5.1 數據庫概念結構設計
    概念結構設計的任務是將它們籠統為不依靠任何必定機械的數據模型,即概念模型,其是建立在需求分析階段生成的需求規范的基礎上。概念模型讓設計者能集中注意力于最重要的新聞的組織結構和處理模式上。

    概念結構設計最直觀的表達方式是E-R圖即是實體-聯系圖,它更加清晰的、方便的、直觀的去看實體屬性之間的聯系,將現實社會物體非常好的展現出來,其能直觀的看出實體具有的屬性,對數據庫設計起到輔助作用。

    綜上,使用E-R圖的設計方法對數據庫設計,以下對數據表進行E-R圖設計,可以直觀地觀察到表中各屬性的結構。
    系統主要的實體及其屬性如下:
    1、 普通用戶實體
    主要說明普通用戶個體的基本信息,如圖4.6所示:

    圖4.6 普通用戶實體圖
    2、 管理員登錄信息實體
    主要說明了管理員要登錄后臺管理系統需要的用戶名和密碼有效信息,如圖4.7所示:

    圖4.7 管理員登錄信息實體圖
    3、 書籍信息實體
    主要說明了每本書的基本信息,如圖4.8所示:

    圖4.8 書籍信息實體圖

    4、 圖書類別實體
    主要說明了書籍的分類的類目,包括類目名稱和介紹,其實體結構如圖4.9所示:

    圖4.9 圖書類別實體圖

    5、 訂單信息實體
    主要說明用戶在線生成的訂單的各種信息,如下圖4.10所示:

    圖4.10 訂單信息實體圖

    4.5.2 數據庫邏輯結構設計
    上邊的數據庫概念設計是在系統需求分析結果中總結實體信息,這個過程很重要,在這個基礎上再對各實體及屬性進行詳細設計在,因此根據在數據庫概念結構設計中的E-R圖來設計出本系統中,涉及到的數據項和表結構,邏輯結構設計首先要把E-R圖轉換為關系模型,轉換時要留意:一是E-R圖中每個實體和關系模型一一對應;二是表中主鍵不能為空;三是實體之間的聯系其中多對多這種情況應該將這種關系獨立為一個關系模型。

    下圖為各實體轉換后的關系模型,如圖4.11所示:

    圖4.11 關系模型圖

    由上邊關系模型圖可知有6個表,以下是詳細的表結構:
    1、 普通用戶表
    描述登錄該系統網站用戶的登錄信息,具體字段類型如表4.1所示:
    表4.1 普通用戶表

    2、 圖書類別信息表
    描述了書籍分類的類目信息,具體字段類型如表4.2所示:
    表4.2 圖書類目信息表

    3、 圖書信息表
    描述每本圖書的基本介紹,具體字段類型如下表4.3所示:
    表4.3 圖書信息表

    4、 管理員信息表
    描述管理工作人員的基本信息,具體字段類型如表4.4所示:
    表4.4 管理員信息表

    5、 訂單項表
    該表主要描述了買家全部訂單的明細信息,具體字段類型如表4.5所示:
    表4.5 訂單項表

    6、 訂單表
    描述了用戶購買圖書產生的訂單條目,包括訂單id、書籍總價、訂單是否被處理、用戶昵稱、訂單產生時間等,具體字段類型如下表4.6所示:
    表4.6 訂單信息表

    5 系統詳細設計與實現
    在經過上邊對這個系統的一連串必要步驟進行完之后,現在正式開始系統的詳細設計階段,也就是程序編碼過程。需求分析確定了系統的所有功能,系統設計階段確定了所用到的技術以及結合自己我會不會該技術,然后數據庫設計階段確定了在該階段我要把數據以怎樣的形式存起來,詳細設計是系統從分析到實現、從邏輯到物理實現的過程,該階段是系統分析系統設計之后一重要環節。
    5.1 管理員登錄頁面
    1、描述:從確保本系統的安全性方面思量,作為管理工作者要想操作該系統后臺管理系統必需先登錄進系統的后臺管理中。下圖是后臺登陸界面,界面簡潔大方。
    2、運行效果如圖5.1所示:

    圖5.1 管理員登錄界面
    3、功能實現:
    管理員在后臺系統登錄界面輸入用戶名和密碼,點登錄請求跳轉到后臺的action類中,在該類中進行邏輯判斷,用戶名和密碼都對的情況下跳轉到管理主界面,其中一項信息錯誤就出現“用戶名或密碼錯誤”提示信息,沒有任何頁面跳轉。

    登錄界面判斷輸入信息準不準確,不準確提示錯誤信息的部分代碼:

    if (adminService.checkUser(admin.getUsername(), admin.getPassword())) {getSession().put("admin", admin.getUsername());return "main"; } addActionError("用戶名或密碼不正確!"); return "login";

    5.2 管理員模塊
    1、描述:管理員對系統管理的主界面:左側頁面顯示管理員可進行操作的四大功能,而且各個模塊都有對應的二級子菜單來選擇具體操作。
    2、運行效果如圖5.2所示:

    圖5.2 管理員主頁面

    5.2.1 圖書類目管理
    5.2.1.1 添加類目
    1、描述:工作人員輸入類目名稱,不用輸入類別id,存入類別后id會自增。
    2、運行效果如圖5.3所示:

    圖5.3 添加圖書類目

    3、功能實現:
    添加類別關鍵代碼:

    Action層:categoryService.add(category);return "recategory"; Service層: public Integer add(Category category) {return categoryDao.save(category);} Dao層:getSession().save(object);

    5.2.1.2 圖書類目列表
    1、描述:管理員點左邊的“類目管理”菜單,下邊出現子菜單,點擊“類目列表”,調用后臺的邏輯處理類從數據庫中查找所有的圖書分類信息,右側出來所有圖書類別名稱和對應操作。該頁面左下角點擊增添類目即可跳到增添類目頁面。每個類目右邊有對應修改和刪除操作。

    2、運行效果如圖5.4所示:

    圖5.4 圖書類目列表
    3:實現代碼:

    categoryService.update(category);return "recategory";

    5.2.1.3 類目信息刪除
    1、描述:點左側“類目管理”菜單,點擊“類目列表”,在類目列表頁面,點擊修改或者刪除來實現對應操作。
    2、運行效果如圖5.5所示:

    圖5.5 類別刪除功能
    3、實現代碼:

    categoryService.delete(category); public boolean delete(Category category) {return categoryDao.delete(category);} try {getSession().delete(object);} catch (HibernateException e)

    5.2.2 圖書信息管理
    5.2.2.1 添加圖書
    1、描述:點左邊“圖書管理”、“添加圖書”,在右側添加圖書信息,填寫下圖中包含的圖書信息,在此也可將圖書直接劃分到所屬的類別中,使用下拉框實現。
    2、運行效果如圖5.6所示:

    圖5.6 圖書信息錄入

    3、代碼實現:
    在該頁面出版日期組件使用datepicker組件完成,初始日期是本天,對應設置語句為$( “#datepicker” ).datepicker(‘setDate’, new Date());
    5.2.2.2 圖書信息列表
    1、描述:在管理主頁面上點擊左邊“圖書管理”菜單,在二級子目錄中點擊“圖書列表”,調用后臺的邏輯處理類查找出全部的書籍信息,將封裝這些信息的collection放入請求對象中,然后帶著這些數據轉跳到響應的jsp頁面,從而書籍信息展現在右側頁面中。
    2、運行效果如圖5.7所示:

    圖5.7 圖書信息列表頁面
    3、代碼實現:
    圖書管理關鍵代碼:

    Action層:bookList = bookService.getList(status, page, rows);return "book"; Service層:return bookDao.getList(status, page, rows); Dao層:public List<Book> getList(int status, int page, int rows){return getSession().createQuery("from Book "+packSql(status)+" order by id desc");}

    5.2.2.3 圖書信息管理
    1、描述:點擊“圖書管理”,出現推薦列表、最新列表、促銷列表,在圖書列表中,每個書后邊的操作一欄中,可將該書設置成為推薦圖書或最新圖書或促銷圖書,然后可在左邊欄中點擊推薦列表、最新列表、促銷列表來查看該書。
    2、運行效果如圖5.8所示:

    圖5.8 圖書管理圖
    3、代碼實現:

    > <s:if test="!special"><img src="images/001.gif"/><span > class="style1">[</span><a > href="admin!bookSet.action?id=<s:propertyvalue="id"/>&flag=11&status=${status}&page=${page}">設為推薦</a><span > class="style1">]</span>

    其他功能“設為最新”、“設為促銷”類似代碼。
    修改和刪除類似。

    5.2.2.4 圖書推薦列表
    1、描述:點擊“圖書管理”,點擊“推薦列表”,右側出現的圖書均為商家對買家推薦的書籍,用戶可根據愛好需求下訂單。
    2、運行效果如圖5.9所示:

    圖5.9 推薦圖書列表圖
    3、代碼實現:

    public String bookSet(){book = bookService.get(id);switch (flag) {case 10:book.setSpecial(false);break;case 11:book.setSpecial(true);break;case 20:book.setNews(false);break;case 21:book.setNews(true);break;case 30:book.setSale(false);break;case 31:book.setSale(true);break;}bookService.update(book);return "rebook";}

    5.2.2.5 圖書最新列表
    1、描述:點擊“圖書管理”,點擊“最新列表”,右側出現的圖書均為商家對買家推薦的最新書籍,用戶可根據愛好需求進行瀏覽下訂單。
    2、運行效果如圖5.10所示:

    圖5.10 最新圖書列表圖

    3、代碼實現:同上邊的推薦列表部分的代碼。
    5.2.2.6 圖書促銷列表
    1、描述:點擊“圖書管理”,點擊“促銷列表”,右側出現的圖書均為商家對買家推薦的最新書籍,用戶可根據愛好需求進行瀏覽下訂單。
    2、運行效果如圖5.11所示:

    圖5.11 促銷圖書列表圖

    3、代碼實現:同上邊的推薦列表部分的代碼。
    5.2.3 用戶信息管理
    5.2.3.1 用戶信息列表
    1、描述:消費者進入該網站首頁就成為了該系統的一位用戶,管理員登錄后臺系統后能對注冊后的用戶信息進行管理,點擊左邊欄目“用戶管理“,頁面鏈接到后臺的邏輯處理類(userAction),在這個類里邊,和數據庫打交道取出信息,把用戶信息查尋出來,進一步輸出到響應的jsp顯示頁面。
    2、運行效果如圖5.12所示:

    圖5.12 用戶信息列表
    3、關鍵代碼實現:
    userList = userService.getList(page, rows);
    5.2.3.2 管理員用戶添加
    1、描述:管理員在后臺能增添管理員用戶,這些用戶都是系統保護用戶,不會被刪除。
    2、運行效果如圖5.13所示:

    圖5.13 添加管理用戶圖
    3、代碼實現:

    if (adminService.isExist(admin.getUsername())) {addActionError("用戶名已存在!");return "adminadd"; } adminService.add(admin); return "readmin";

    5.2.4 訂單信息管理
    5.2.4.1 訂單信息管理
    1、描述:管理人員在后臺管理頁面能看到所有用戶完成的訂單,進而對訂單進行管理。
    2、運行效果如圖5.14所示:

    圖5.14 訂單信息管理
    5.2.5 退出系統

    2、關鍵代碼:

    <a href="../index/index.action" target="_blank">網站首頁</a> <a href="login.jsp" target=_top>注銷</a>

    5.3 普通用戶模塊
    5.3.1 系統主頁面實現
    1、描述:網站首頁界面由四部分組成:上面是關于主題書的照片以及導航條、搜索欄,左邊是各頁面展示的區域,右邊的上方是固定的對于網站書店(該書店是虛擬的)的簡介,右邊的下方是圖書的分類信息以及促銷書籍的展示,下方是固定區域顯示其他信息。
    2、運行效果如圖5.15所示:

    圖5.15 網站主頁面設計
    3、功能實現:頁面由JSP完成,具體代碼不做展示。
    5.3.2 圖書查詢
    1、描述:用戶在搜索框中輸入圖書名稱查尋。調用后臺的java類search.Action查詢圖書,在顯示層jsp展示出來。
    2、運行效果如圖5.16所示:

    圖5.16 類別查詢界面設計
    3、功能實現:
    搜索功能關鍵代碼:

    <form action="search.action" method="post" id="form_search"><input type="text" name="searchName" value="${searchName}" placeholder="輸入圖書名稱" /><a href="javascript:void(0);" onclick="$('#form_search').submit()" style="float: right;margin-left:0">搜索</a> </form>

    5.3.3 用戶登錄注冊
    1、描述:游客能在網站首頁瀏覽圖書信息和書店簡介信息,想成為網站的一名用戶,必須通過注冊登記自己的信息,成為了用戶,在沒有登錄網站時,能做的操作有瀏覽書籍信息,圖書查詢,分類查詢等,能把看好的書加入購物車,然則再提交訂單時必須登錄才能完成訂單的生成。
    2、運行效果如圖5.17所示:

    圖5.17 用戶登錄界面設計
    3、功能實現:
    普通用戶登錄關鍵代碼:

    public boolean checkUser(String username, String password){return userDao.getByUsernameAndPassword(username, password); }

    5.3.4 圖書分類查詢
    1、描述:用戶可根據不同類別的名稱點進去查找心儀圖書,這樣可減小查尋范圍。
    2、運行效果如圖5.18所示:

    圖5.18 圖書分類查詢
    3、功能實現:

    <ul class="list"><s:iterator var="category" value="categoryList"><li><a href="category.action?category=<s:property value="id"/>"><s:property value="name"/></a></li></s:iterator> </ul>

    5.3.5 在線下單
    1、描述:一般游客若沒有登錄系統則不能生成訂單,若登錄系統就可在線買書了。
    2、運行效果如圖5.19、5.20所示:
    用戶沒有登錄系統下訂單失敗如圖5.19所示:

    圖5.19 未登錄下訂單失敗

    用戶登錄后下訂單成功如圖5.20所示:

    圖5.20 登錄后下訂單成功
    3、功能實現:
    判斷用戶是否在線下訂單關鍵代碼:

    if (getSession().get("username")==null || getSession().get("username").toString().isEmpty()) {addActionMessage("請登錄后提交訂單!");return "login";

    }
    要想提交訂單只有登錄的用戶才能成功提交。以此來升高系統的安全性,防止用戶沒通過登錄頁面直接進入子菜單頁面。

    5.3.6 管理訂單功能
    1、描述:用戶在成功登陸網站并完成訂單后,點擊 可查察所有訂單,但不能刪除已下訂單,刪除可與管理員取得聯系,因為若用戶可隨意刪除已下訂單的話,對管理員很不好處理用戶的訂單,所以設計成只能管理員單向刪除訂單。
    2、運行效果如圖5.21所示:

    圖5.21 用戶查看所有訂單圖

    3、功能實現:
    用戶查看所有訂單關鍵代碼:

    <a href="order.action">我的訂單(<s:property value="#session.username"/>)</a>

    6 系統測試
    6.1 系統測試目的與意義
    省略

    6.2 測試過程
    6.2.1 網站首頁用戶登錄測試
    測試步驟:
    1、進入系統主頁面,輸入多次不同類型錯誤的信息
    2、嘗試登錄查看效果
    3、最后輸入對的用戶名和密碼
    4、點擊登錄查看效果
    設計該模塊的測試用例如表6.1所示:
    表6.1 主界面的登錄功能測試表

    6.2.2 管理員刪除圖書信息測試
    測試步驟:
    1、管理員登錄后臺管理,在圖書管理中先刪除一本書籍
    2、在前臺搜索欄中用關鍵字搜索圖書,看能否找到該圖書
    3、查看測試結果
    結論:圖書刪除的功能正常。
    刪除前如圖6.1所示:

    圖6.1 刪除圖書前效果圖

    刪除后再搜索如圖6.2所示:

    圖6.2 刪除圖書后效果圖

    6.2.3 生成訂單測試
    測試步驟:
    1、打開系統網站首頁,不登錄時往購物車添加一本圖書,看能不能成功
    2、登錄后再添加,看能不能添加成功
    3、查看測試結果
    結論:未登錄時用戶只能將商品添加到購物車,不能生成訂單,登錄后才能提交訂單,所以生成訂單功能正常。
    效果圖如圖6.3所示:

    圖6.3 未登錄提交訂單效果圖

    6.2.4 其他錯誤測試
    在執行程序的過程中肯定會產生種種不可預知的錯誤,好比說寫入錯誤,值類型不匹配,參數的傳遞等問題。這些不僅需要仔細的測試,而且需要連續調試去解決掉。例如,當由于粗心錯誤導致的action路徑配置錯誤引起的操作時,如圖6.4所示:

    圖 6.4 action路徑配置錯誤,運行出現的提示

    7 系統的運行和維護
    省略

    結論
    省略

    本系統主要模塊是前臺針對用戶的購書平臺和后臺針對管理員管理系統的平臺。前臺主要實現了圖書信息瀏覽、虛擬書店介紹展示,用戶注冊登錄、增添圖書到購物車、生成訂單等功能;后臺模塊主要實現了管理員管理用戶、管理圖書信息、管理訂單信息、圖書類別管理功能。層次分明、操作簡單,用戶和管理員能方便舒適的使用該系統。

    參考文獻
    [1]鄭阿奇.JSP實用教程.電子工業出版社,2008
    [2] 飛思科技產品研發中心. JSP應用開發詳解(第二版) [M]. 北京:電子工業出版社,2004
    [3] 吳以欣,陳小寧.JavaScript腳本程序設計[M]. 北京:人民郵電出版社,2005
    [4] 薩師煊,王珊.數據庫系統概論(第五版)[M]. 北京:高等教育出版社,2014
    [5]孫衛琴,李洪成.Tomcat與Java Web開發技術詳解[M]. 北京:電子工業出版社,2004
    [6] 劉中兵,李伯華,鄒晨.JSP數據庫項目案例導航.清華大學出版社,2006.
    [7] 劉長生,謝強,丁秋林.Java應用中的漢字亂碼問題分析[J]. 計算機技術與發展,2006,16(1):158-161
    [8] Tsui,Frank F. JSP EM DASH A RESEARCH SIGNAL PROCESSOR IN JOSEPHSON TECHNOLOGY[C]. IBM Journal of Research and Development,Vol24, No2,1980:243-252
    [9] Sanden, Bo. SYSTEMS PROGRAMMING WITH JSP:EXAMPLE - A VDU
    [10] Mark Wutka,Alan Moffet,Kunal Mittal.Sams Teach Yourself JAVAServer Pages 2.0 with Apache Tomcat in 24 Hours[M].Sams Publishing,2003 [14]James Turner,Kevin Bedell. Struts Kick Start[M]. SAMS,2004 [15] Kong Michael. An environment for secure SQL/Server computing [M].Oxford University Press Inc., 1993: 149

    致謝
    省略

    附錄:外文原文
    省略

    中文翻譯
    省略


    5、資源下載

    本項目源碼及完整論文如下,有需要的朋友可以點擊進行下載。如果鏈接失效可點擊下方卡片掃碼自助下載。

    序號畢業設計全套資源(點擊下載)
    本項目源碼基于java+JSP+MySQL的網上購書系統設計與實現(源碼+文檔)_SSH_JSP_BS_網上購書系統.zip

    總結

    以上是生活随笔為你收集整理的java毕业设计——基于java+JSP+MySQL的网上购书系统设计与实现(毕业论文+程序源码)——网上购书系统的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。