我是如何用JSP在网络上架构一个网上招标系统,以推进网站无纸化,过程电子化,管理智能化的发展
聲明:部分代碼參考與網絡,如有侵權請聯系博主刪除,博主本著學習的態度和大家一起成長。
項目github地址:https://github.com/sunmenglei/sunmengleiwangshangzhaobiao/
背景:從本世紀初,互聯網開始加速發展,各種創新型應用和互聯網新概念不斷出現,例如搜索引擎、電子商務、博客、維基百科、RSS、3G、web2.0、長尾理論等。這些應用和概念與知識管理都有著或多或少的關系。如何利用互聯網進行知識管理已引起互聯網界和知識管理學界諸多學者的高度關注。威客模式就是在這個大的背景下產生的,它是利用互聯網進行知識管理的網絡創新模式。
?? 本設計嘗試用JSP在網絡上架構一個下沙派威客網,以推進網站無紙化,過程電子化,管理智能化的發展。本文從理論和實踐兩個角度出發,對一個具有數據分析功能的下沙派威客網進行設計與實現分析。論文首先較為詳盡地介紹了面向對象分析與設計的有關概念與技術,特別深入介紹了在本系統中運用到的知識,如:面向對象的分析設計流程;系統中所用到的開發技術JSP以及java的特點、結構框架以及使用方法。接著對下沙派威客網的可行性進行了分析,然后對系統的設計思想、設計目標與系統的整體結構進行了明確的規劃。最后對系統的主要頁面、數據庫、應用程序的設計與實現作了較為詳細的講解。
? 在myeclipse,jdk 平臺上運用JSP技術來實現的。其主要功能有:用戶管理,站內新聞,留言板,威客在線,成交記錄,后臺管理等。論文在撰寫過程中,力求將理論與實踐應用相結合,對各種理論進行闡述的同時配合系統從實際應用和操作技巧上加以說明,希望能夠更充分地體現到這些知識與技術在本系統中的應用與實現。
?
目錄
1 緒論
1.1威客理論的起源
1.2威客網提出的意義
?1.3威客網站在中國的發展和影響
1.4 任務概述
1.4.1目標:建立完善的下沙派威客網系統
1.4.2下沙派威客網特點
2 解決方案的選擇
2.1 系統說明
2.1.1.硬.軟件環境
2.2開發計劃
2.3可行性分析
2.3.1 風險分析
2.3.2 技術可行性
2.3.3 操作可行性
2.4 設計方案:對涉及工具和技術的相關說明
2.4.1 B/S體系結構
2.4.3 SQL Server
2.4.4 HTML(Hyper Text Markup Language)
2.4.5 JSP及JavaBean介紹
2.4 .6 tomcat配置
3 需求分析
3.1系統分析的任務與步驟
3.1.1 系統分析的任務
3.1.2 系統分析的步驟
3.2網站項目范圍
3.3 功能需求
3.3.1 注冊用戶部分
3.3.3 管理員部分
3.4網站實體分析
3.5網站的數據庫設計
3.5.1 概念設計?? ?
4.1 網站系統功能說明
4.1.1總體功能
4.1.2非功能性需求
4.1.2.1用戶界面需求
4.2 建立數據庫模型
5 詳細設計
5.1 系統首頁
5.2 站內新聞信息
5.3威客在線操作界面
5.4系統后臺登錄界面
5.5系統后臺操作界面
6 系統測試
6.1系統測試的目的
6.2面向對象系統測試方案
7 軟件布署
7.1安裝環境要求
7.2系統詳細配置方法
總結
1 緒論
1.1威客理論的起源
威客理論的提出基于其創始人劉鋒發現的三個基石:發現電子公告牌功能分離現象;確認互聯網知識價值化時代的到來、互聯網是人類大腦的聯網而不是僅僅為機器的聯網。
1、電子公告牌功能分離現象的發現
2005年6月威客(witkey)理論第一次被劉鋒提出時,一個重要的理論基礎就是發現了互聯網發展歷史上電子公告牌(BBS)功能分離的現象:從20世紀80年代初互聯網電子公告牌出現以來,其功能不斷分離出去,形成了獨立的互聯網應用,他們分別是:
1)新聞類網站,起源于在電子公告牌發布新聞地功能。
2)電子商務類網站,起源于在電子公告牌發布商品買賣信息地功能,它后來與互聯網在線支付系統,物流系統進行了結合,
3)博客類網站,起源于在電子公告牌中發布個人感想和可共享專業知識的功能。電子公告牌以時間為順序聚合這些信息,博客以用戶為單位聚合這些信息。
4)智力互動問答類網站(威客),起源于在電子公告牌中發布科學,技術,工作,生活,學習中問題的功能,人們通過互聯網尋求問題的解決方案或能夠解決問題的人。
5)熱點點評類網站(DIGG),起源于在電子公告牌中對熱點現象進行點評和討論的功能。。
6)維基類網站,起源于電子公告牌的信息內容修改功能,通常電子公告牌的信息只有其發布者和網站管理員有修改權,維基類網站放開信息內容的修改權,讓每個訪問者都可以進行修改。
7)SNS類網站,起源于電子公告牌用戶的注冊信息匯聚功能,通過聚合注冊用戶的的個人資料如聯系方式,工作性質,工作地點,興趣愛好等。讓有相同愛好者能夠通過互聯網找到對方。
8)換客類網站,起源于在電子公告牌中用戶相互交換物品和服務的功能,換客類網站的運營不需要第三方支付手段的介入,
9) 搜索引擎,起源于電子公告牌的數據和信息索引功能,20世紀80年代WEB技術地發明,使能夠聚合眾多電子公告牌數據和信息的索引技術最終發展為搜索引擎。
2. 互聯網知識價值化時代的到來
信息免費共享是促使互聯網蓬勃發展的重要因素,例如,維客wiki以人的自我價值體現為動力,把人類已有的雜亂信息結構化形成可免費共享的知識,搜索引擎對互聯網中的信息和數據進行索引,人們可以免費使用其搜索功能,新聞類,電子商務,博客類網站為互聯網源源不斷的提供免費信息。是從知識管理的角度看,知識的產生本身是要花費大量的時間和經濟成本的,完全免費的知識共享不符合經濟學的規律和理性人的假設。這種情況最終會阻礙互聯網的發展,導致共享知識的質量由于個人保護自己核心能力的原因到了某個高點就很難再提升。
威客理論認為互聯網上的知識(各種文章,資料,回答問題的答案等)都具有或多或少的經濟價值,應該可以作為商品出售。它符合經濟學的價值規律并是互聯網走出困境的一種途徑。另外,隨著互聯網支付手段的逐步完善,通過互聯網為知識,智慧,能力,經驗進行定價就成為可能。因此本文作者認為互聯網已經度過了完全免費共享的時代,開始進入互聯網的知識價值化時代、知識、智慧、能力、經驗通過互聯網也具備商業價值的理念將逐步被人接受。在互聯網的知識價值化時代、知識、智慧、經驗、技能都可以成為商品通過互聯網進行交易。這是威客模式理論提出的重要前提和基礎。知識的價值化一方面使人們參與到智力互動問答中去,并提供高質量的知識產品,另一方面通過問題的提出和解答,知識,智慧,能力,經驗也真正成為商品被交易。從知識管理的角度看,智力問答的知識價值化過程也就是人的隱性知識顯性化過程。
3.互聯網是人大腦的聯網,不僅僅是機器的聯網
馬克思明確指出工具與人相互結合所構成的工藝結構是人類特有的本質結構,是人類其它結構產生和發展的物質基礎和推動力。沒有連接在互聯網末端的人類大腦,互聯網將成為無根之木,無源之水。忽略每一個連接在互聯網上人類大腦的參與。正是當前互聯網面臨的一些困境的原因。
?? 威客理論第一次在世界上提出互聯網是人大腦的聯網,不僅僅是機器的聯網。互聯網不但連接了世界各地的機器,它也把地球上各個角落的人聯結在一起。機器在某些方面的確超越了人類。但更大范圍內人的知識,智慧,能力,經驗卻是機器無法望其項背的。利用互聯網充分調動人的積極性解決各個領域的問題是互聯網發展被忽略的另一個方向。
1.2威客網提出的意義
? 威客網指為維克提過交易平臺的網站,著名的威客網有豬八戒網等。威客的英文Witkey是有wit智慧、key鑰匙兩個單詞組成,也是The key of wisdom 的縮寫,是指那些通過互聯網把自己的智慧、知識、能力、經驗轉換成實際收益的人,他們在互聯網上通過解決科學,技術,工作,生活,學習中的問題從而讓知識、智慧、經驗、技能體現經濟價值。
1、可以解決搜索引擎無法創造性的給出答案的問題。
人的大腦為一部比目前任何一臺超級計算機都強大幾千倍以上的設備,互聯網的出現從本質上講是實現人類大腦的聯網,創造性的解決問題時人類大腦的優勢,互聯網的出現又把這種優勢成指數倍的擴大。
2、宣告互聯網知識價值化時代的到來
威客模式產生之前的互聯網只是單純的讓用戶共享知識和信息,無論是博客還是wiki(維客)等模式的設計還是讓互聯網用戶無償的提供智力成果,而運行這些模式的網站獲得了沉淀下來的知識價值。威客模式提出了知識必須體現價值的觀點并不只是指貨幣價值,也包括自豪感,成就感,但最重要的激勵機制還是貨幣價值,只有通過貨幣才能讓人類有價值的隱性知識表現出來,才能讓互聯網中無意義的信息大幅度減少。
3、威客模式體現了一種靈活的工作方式。
威客模式打破了地域、時間、工作方式的限制,通過互聯網把世界各地的工作者放在同一個工作平臺中。給勞動者提供公平競爭的互聯網環境,為他們帶來更多自由工作時間、創意和想法。利用威客模式平臺,來自全世界威客可以為企業和個人提供低成本高質量的問題解決方案。
4、 提高用戶使用互聯網的積極性。
? 威客模式激勵用戶提供更有價值的作品。由于互聯網用戶可以通過威客模式網站利用自己的知識,技能,經驗,智慧獲取相對應的經濟利益。于是他們就會有更高的熱情參與到問題的解答中去。同時由于經濟利益的驅動,互聯網用戶也會主動將個人的知識和經驗形成文章發布到互聯網中供其他人付費查閱。
?1.3威客網站在中國的發展和影響
?? 從2005年威客第一次在中國科學院研究生院提出以來,目前在中國有超過200家網站認同威客提出的理念,涵蓋的范圍包括法律,管理咨詢,農業,教育,程序和圖形設計,科研,體育,醫療,招聘等多個領域。總注冊用戶超過500萬人(對注冊用戶量前十名進行統計),付費解決問題超過20萬條(對認同威客模式的100家網站進行統計)。交易金額超過1000萬元人民幣(對交易金額最大的五家網站統計)。目前在中國認同威客且具有影響力的網站
威客的出現也引起了媒體廣泛的關注。包括中國中央電視臺,中國日報,人民日報,國際文傳電訊,德國明星周刊等數百家國內外媒體對威客進行了報道。2007年, witkey的概念進入中國高考試題,數百萬考生因此了解威客。2007年8月,中國教育部將威客列入中國2007年171個新出現的漢語詞匯。
2007年11月18日,首屆威客大會在中國北京召開,這次會議由中國科學院虛擬經濟與數據科學研究中心主辦。有來自互聯網,威客網站,新聞媒體等領域的專業人士300多人參加了此次會議,多名互聯網專家和威客網站負責人從理論和實踐的不同角度對威客進行了探討。此外在2006到2007年間,賽迪顧問有限責任公司,中國電信研究院等單位也舉辦了多場會議和沙龍對威客模式進行探討和研究。
2010年11月18日,由國家工信部指導、重慶市政府主辦的首屆全球威客大會暨威客網站CEO高峰網站在重慶召開。來自全球排名前100名的威客(外包)網站的CEO及國內優秀威客代表出席會議。會上發布的《2010年中國威客行業白皮書》報告:中國現有超過100家威客網站,注冊會員超過2000萬,整體累積交易金額超過三億元。最具代表性的為:k68創意產品交易平臺、豬八戒威客網、一品威客網。
其中,以k68創意產品交易平臺的第一代威客網,探索和實踐了懸賞任務模式;以豬八戒威客網為代表的第二代威客網,借助整合營銷,拓展了威客市場份額,提升了行業的影響力;第三代威客網站則以新生代威客網站一品威客網為代表,其推出全免費威客模式、賞金100%支付中標威客;零首付懸賞、定金懸賞、全額懸賞等多結構類型的懸賞任務模式,對威客平臺盈利模式和產品形式進行大膽的探索。
1.4 任務概述
1.4.1目標:建立完善的下沙派威客網系統
1.4.2下沙派威客網特點
1、簡約的系統操作界面
??? 整個網站的操作界面,界限明晰,人機界面美觀,操作極具人性化。
2、完備的系統操作功能
網站開發的宗旨是最簡約的操作步驟最完備的操作功能。初一看,這好像很矛盾,但是經過完整的策劃編排,系統完全做到了功能無冗余無遺漏,這點也更好的體現了系統的人性化設計。
3、人性化的操作界面
一個網站,能否吸引顧客的經常光顧,界面的美觀也顯得非常重要。下沙派威客網通過專業美工的精心打造,讓網站的設計充分體現軟件的時尚、大眾化。
4、完善的安全機制:獨立的密碼校驗功能,確保用戶和管理員的數據有較好的安全性。
2 解決方案的選擇
2.1 系統說明
本系統主要是在現有網站程序的基礎上,把大量的人工管理信息轉變為計算機管理,簡化了管理員的工作,提高了管理的效率,同時方便下沙派威客網過程展開和交易。
本系統對數字化信息資源的組織采用數據庫。系統的數據庫結構是關系數據庫SQL Server 2000,前臺使用JSP平臺開發。信息平臺的后臺操作采用B/S操作結構以增強系統的安全保密性、系統穩定性和易操作性。JSP是目前最完備的面向對象語言,在未來仍然很有發展前途。SQL Server 2000采用了關系型數據庫結構,是一套精簡、快速的數據庫管理系統,它提供了多人使用的管理模式,并支持標準的SQL語法。同時,.Net平臺和SQL Server 2000作為微軟公司的產品,具有良好的整和性。系統采用高度集成的模塊結構,將所有的模塊整合到一個通用的中央數據庫中。
2.1.1.硬.軟件環境
2.1.1.1.硬件環境
?2.1.1.2.軟件環境
操作系統:Windows 2003 Server;
正版軟件:Microsoft Office 2003;
Microsoft SQL Server 2000;
Myeclipse,tomcat,jdk;
由于Windows操作系統在國際市場的占有率為95%,在國內市場的占有率為100%,所以我選用的操作系統為安全可靠的Windows 2003 Server;采用的開發工具為Microsoft公司開發的最完備的可視化工具myeclipse ;目前最流行的數據庫管理工具是Microsoft? SQL Server 2000,而Microsoft? SQL? Server 2000與Windows操作系統的整合性較好,所以采用SQL Server 2000為本項目的數據庫管理工具。
2.2開發計劃
| 起止日期 | 內容 |
| 2020年3月20日~2020年4月1日 | 需求分析,熟悉開發環境 |
| 2020年4月2日~2020年4月15日 | 概要設計 |
| 2020年4月16日~2020年5月20日 | 詳細設計與調試 |
| 2020年5月21日~2020年6月1日 | 系統測試 |
2.3可行性分析
2.3.1 風險分析
2.3.1.1.系統軟件硬件的風險
采用了性能較高的硬件設備,和較穩定的系統軟件,網站仍存在一定的因軟硬件崩潰而帶來的風險。解決辦法之一是定期備份數據以降低風險。
2.3.1.2.計劃的拖延
網站的開發存在因計劃拖延帶來的風險。
2.3.2 技術可行性
大學課程中的《數據庫原理》,《操作系統知識》,《網絡基礎》等多門課程為整個課題開發提供了堅實的基礎。JSP是一種相對簡單的語言,SQL Server也是一種簡單的數據庫,所以技術難度并不高。
2.3.3 操作可行性
該網站如投入使用,預期作到界面友好,管理方便,使用簡單,管理人員經過培訓,也是完全能夠使用本網站管理網站系統的相關信息的。
2.4 設計方案:對涉及工具和技術的相關說明
2.4.1 B/S體系結構
本網站所面向的對象是廣大的互連網用戶。因此,將要采用比較流行的B/S三層結構。
?
B/S體系結構與C/S體系結構相比不僅具有其全部的優點,而且又有C/S體系結構所不具備的獨特優勢:
(1)開放的標準:B/S所采用的標準都是開放的、非專用的,是經過標準化組織所確定而非單一廠商所制定,保證了其應用的通用性和跨平臺性。
(2)較低的開發和維護成本:B/S的應用只需在客戶端安裝通用的瀏覽器即可,維護和升級工作都在服務器端進行,不需對客戶端進行任何改變,故而大大降低了開發和維護的成本。
(3)用戶使用簡單,界面友好:B/S用戶的界面都在統一的瀏覽器上,瀏覽器易于使用、界面友好,又因為它不再負責數據的存取和復雜數據計算等任務,只需要進行顯示,因而大大降低了對客戶端的要求。
從以上的分析與比較可以看出,B/S模式具有C/S模式無法替代的優越性:它簡化了系統的開發和維護,并且特別適用于網上信息發布。因此,我開發的圖書在線瀏覽系統采用了基于B/S模式的體系結構。
2.4.3 SQL Server
SQL Server 是一個具備完全 Web 支持的數據庫產品,提供了對可擴展標記語言 (XML) 的核心支持以及在 Internet 上和防火墻外進行查詢的能力,提供了以 Web 標準為基礎的擴展數據庫編程功能。豐富的 XML 和 Internet 標準支持允許使用內置的存儲過程以 XML 格式輕松存儲和檢索數據。
SQL Server 提供強大的開發工具和各類開發特性,在大大提高開發效率的同時,進一步拓展應用空間,帶來新的商業應用機遇。例如,XML數據庫與Web Service的支持將使您的應用實現Internet數據互聯,.Net集成極大的擴展了開發空間,異構數據集成、Service Broker使您的數據和其它應用無縫集成,各種新數據類型和T-SQL擴展帶來了諸多靈活性。C#、VB.Net、XQuery、XMLA、ADO.Net 2.0、SMO、AMO等都將成為SQL Server數據平臺上開發數據相關應用的有力工具。
2.4.4 HTML(Hyper Text Markup Language)
HTML的英文全稱是"Hypertext Markup Language",中文譯為“超文本標記語言”。“超文本”就是指頁面內可以包含圖片,聯接,甚至音樂,程序等非文字的元素。在幾年前作為SGML的一個子集開發的。
一個HTML文件中包含了所有將顯示在網頁上的文字信息,其中也包括對瀏覽器的一些指示,如哪些文字應放置在何處,顯示模式是什么樣的等。如果你還有一些圖片、動畫、聲音或是任何其它形式的資源,HTML文件也會告訴瀏覽器到哪里去查找這些資源,以及這些資源將放置在網頁的什么位置。瀏覽的網頁就是由HTML語言編寫出來的。雖然HTML是一種語言,但HTML不是程序語言,如 C++ 和 Java 之類,它只是標示語言,你只要明白了各種標記的用法便算學會了HTML.HTML 的格式非常簡單,只是由文字及標記組合而成,因此任何文本編輯器都可以制作HTML頁面。
在編輯器中輸入html代碼即可完成對網頁的設計,如果在其中加入VB,JAVA等腳本文件以及數據庫連接有關的語句指令,便可對已知數據進行查詢,從而生成動態網頁的一部分。
2.4.5 JSP及JavaBean介紹
JavaBean是描述Java的軟件組件模型,有點類似于Microsoft的COM組件概念。在Java模型中,通過JavaBean可以無限擴充Java程序的功能,通過JavaBean的組合可以快速的生成新的應用程序。對于程序員來說,最好的一點就是JavaBean可以實現代碼的重復利用,另外對于程序的易維護性等等也有很重大的意義。
JavaBean通過Java虛擬機(Java?Virtual?Machine)可以得到正確的執行,運行JavaBean最小的需求是JDK1.1或者以上的版本。
JavaBean傳統的應用在于可視化的領域,如AWT下的應用。自從Jsp誕生后,JavaBean更多的應用在了非可視化領域,在服務器端應用方面表現出來了越來越強的生命力。在這里我們主要討論的是非可視化的JavaBean,可視化的JavaBean在市面上有很多Java書籍都有詳細的闡述,在這里就不作為重點了。
比如說一個購物車程序,要實現購物車中添加一件汽車這樣的功能,就可以寫一個購物車操作的JavaBean,建立一個public的AddItem成員方法,前臺Jsp文件里面直接調用這個方法來實現。如果后來又考慮添加汽車的時候需要判斷庫存是否有貨物,沒有貨物不得購買,在這個時候我們就可以直接修改JavaBean的AddItem方法,加入處理語句來實現,這樣就完全不用修改前臺jsp程序了。
當然,也可以把這些處理操作完全寫在jsp程序中,不過這樣的jsp頁面可能就有成百上千行,光看代碼就是一個頭疼的事情,更不用說修改了。如果您使用過asp開發過程序的話,相信對這就深有體會??涫凳褂肁SP+COM組件完全可以實現同jsp+javabean同樣的架構,但不知道某種原因網上常見的都是全部寫在asp頁面中,所以使得維護修改等極為不方便,當然這是題外話了)。由此可見,通過JavaBean可以很好地實現邏輯的封裝、程序的易于維護等等。
復雜的應用涉及大量的代碼,因而把業務邏輯和前端的表示相分離就顯得格外重要,這種分離可以讓任何一方的變化不會影響到另外一方。所以,所有的JSP代碼都應該限制在表示層,可是如果這樣的話,你如何實現你的業務邏輯呢?這就是JavaBean所做的事情。JavaBean技術是一個獨立于平臺的組件模型,它讓開發者編寫、測試通過一個組件后,可以隨處使用,提高了復用性。在JSP技術中,JavaBean實現了業務邏輯部分,它把數據返回給JSP頁面,由JSP頁面負責格式化數據并輸出到客戶端的瀏覽器。
?
2.4 .6 tomcat配置
配置tomcat之前需要預先下載幾個軟件:
1.微軟win2000的服務包(可以沒有)。
2.java的sdk也叫jdk(java的開發環境)(必須的,前面已經介紹)。
3.tomcat(用做web的服器(必須的)。
然后就要配置java的jdk和tomcat的服務器具體步驟如下:
1. 我的電腦的屬性-->高級-->變量環境-->我們需要新建系統變量(一共四個):
(1) 變量名稱添入:path??? 變量值添入:您的jdk的安裝目錄\bin。
???? 例如:我的安裝目錄是c:\sun\j2eesdk1.4_beta2\jdk\bin。
(2) 變量名稱添入:classpath??? 變量值添入(注意引號不填,前面有一個小圓點也必須添,把下面的這些都添到變量植的一行中,并且用分號擱開,見下面,為了方便看我分了很多行寫):
您的安裝目錄\lib\tools.jar;
您的安裝目錄\dt.jar;
您的安裝目錄\bin;
您tomcat的安裝目錄\common\classes;
您tomcat的安裝目錄\common\lib;
您tomcat的安裝目錄\common\lib\servlet-api.jar;
(3)變量名添入java_home,值添如您的安裝目錄例如我的安裝目錄是:c:\sun\j2eesdk1.4_beta2\jdk。
(4) 變量名添入TOMCAT_HOME(注意,大小寫都可以的),值添入您tomcat的安裝目錄 例如我的安裝目錄是c:\tomcat\jakarta-tomcat-5.0.14。
2. 配置tomcat的執行文件(.bat): 先進入tomcat的安裝目錄,找bin文件夾,進入bin 然后在找startup.bat文件,注意,有些版本可能名字不一樣,但是名字前總是startup, 單擊右鍵-->編輯.打開了這個文本,然后尋找start字母,一般在最后,我們只需在start字母后面添加:
???????? SET TOMCAT_HOME=您tomcat的安裝目錄;
? SET JAVA_HOME=您的jdk安裝(例如我的是:c:\sun\j2eesdk1.4_beta2\jdk);
? SET CLASSPATH=您jdk的安裝目錄\dt.jar;
? SET CLASSPATH=您的tomcat的安裝目錄\common\lib\servlet-api.jar;
這一步的主要目的是為了,在執行.jsp文件是,tomcat 服務器能夠自動找到一些java的環境以及類環境等等...好了,第一步和第二步我們完成了,對系統環境變量的配置,和對tomcat的配置,接下來還有一個問題,那就是設置虛擬目錄的問題,為什么要設置虛擬目錄?因為當在瀏覽器上打入一個地址的時候,和文件的實際所在的目錄是不一樣的.所以必須進行設置,虛擬目錄才會按照我們的設置去自動尋找實際的目錄。
配置虛擬目錄主要就是對tomcat跟目錄下的conf文件夾中的server.xml文件進行配置,進入后,以文本方式打開這個.xml文件,(方法是:選中該文件,然后按住shift再點右鍵,尋找打開方式,我們以文本方式打開.就可以了,您可以使用記事本的查找功能,(在編輯菜單下)查找</host> 在這個</host>前添加這樣的代碼(path就是虛擬目錄,而docbase就是實際的物理目錄了):
<Context path=/yuan docBase=D:\yuan debug=0 reloadable=true crossContext=true></Context>
?
3 需求分析
3.1系統分析的任務與步驟
3.1.1 系統分析的任務
了解用戶要求。此用戶即為網站的使用人員(管理員,注冊用戶)。了解他們在網站功能、性能等方面的要求及用戶在硬件配置、開發周期處理方式等方面的意向與打算。把用戶要求成文,完成網站分析報告。網站的邏輯模型由一系列的圖表和文字組成。在邏輯上描述了系統的目標和所具備的功能于性能。
3.1.2 系統分析的步驟
3.2網站項目范圍
下沙派威客網從二種用戶角度進行功能劃分。
1、注冊用戶部分:1.1:查看威客在線,及新聞公告;
???????????????????? 1.2:發布留言信息;
???????????????????? 1.3:查看成交記錄信息;
???????????????????? 1.4填寫用戶注冊
3、管理員部分:3.1:編輯系統用戶信息;
3.2:編輯所有任務管理,成交記錄管理等;
3.3: 管理留言信息
3.4:數據備份。
3.3 功能需求
3.3.1 注冊用戶部分
1:查看網站流程:查看與網站有關的流程信息,及相關的新聞公告。
2:發布網站留言信息:根據系統提示,發布網站的留言信息。
? 3:查看已發布的信息:以列表的形式查看已發布信息。
4:發布威客在線信息:根據系統提示,發布網站的留言信息。
5:查看網站成交記錄:根據系統提示,查看成交記錄信息。
?
3.3.3 管理員部分
1:編輯系統用戶信息:添加、編輯用戶信息,包括發布者和管理員,以列表的形式顯示;
2:編輯網站留言信息:以列表的形式顯示網站留言信息,并可對其進行刪除等編輯操作;
3:數據備份:不定期進行系統數據備份,以防萬一。
??
3.4網站實體分析
?
3.5網站的數據庫設計
3.5.1 概念設計?? ?
在概念設計階段中,從用戶的角度看待數據及處理要求和約束,產生一個反映用戶觀點的概念模式。然后再把概念模式轉換成邏輯模式。將概念設計從設計過程中獨立開來,使各階段的任務相對單一化,設計復雜程度大大降低,不受特定DBMS的限制。利用ER方法進行數據庫的概念設計,可分成三步進行:首先設計局部ER模式,然后把各局部ER模式綜合成一個全局模式,最后對全局ER模式進行優化,得到最終的模式,即概念模式。
3.5.1.1 設計局部ER模式
?1實體和屬性的定義:
1)管理員用戶類別(用戶名,密碼,權限,注冊時間等)
?
??
2)注冊用戶類別(用戶名,密碼,電話,身份證,注冊時間等)
?
?
3)網站留言(名稱,類別,添加時間,發布人,發布人姓名,是否主帖)????
?
4)威客在線(名稱,編號,簡介,添加時間)?
?
5)站內新聞(標題,內容,添加時間,類別等)?
?
2 實體關系定義:
ER模型的“聯系”用于刻畫實體之間的關聯。一種完整的方式是對局部結構中任意兩個實體類型,依據需求分析的結果,考察局部結構中任意兩個實體類型之間是否存在聯系。若有聯系,進一步確定是1:1、1:N、M:N的關系。還要考察一個實體類型內部是否存在聯系,兩個實體類型之間是否存在聯系,多個實體類型之間是否存在聯系,等等針對本網站分析如下:
實體間的關系:
① 一個注冊可以參與多個網站,而一網站可以接受多個注冊。
?
② 一個網站過程一次只能產生一個網站記錄,而一個網站記錄只屬于一個網站過程
3.5.1.2設計全局ER模式
?? 所有局部ER模式都設計好了后,接下來就是把它們綜合成單一的全局概念結構。全局概念結構不僅要支持所有局部ER模式,而且必須合理地表示一個完整、一致的數據庫概念結構。
1) 確定公共實體類型
?? 為了給多個局部ER模式的合并提供開始合并的基礎,首先要確定各局部結構中的公共實體類型。在這一步中我們僅根據實體類型名和鍵來認定公共實體類型。一般把同名實體類型作為公共實體類型的一類候選,把具有相同鍵的實體類型作為公共實體類型的另一類候選。
2) 局部ER模式的合并
?? 合并的原則是:首先進行兩兩合并;先合并那些現實世界中有聯系的局部結構;合并從公共實體類型開始,最后再加入獨立的局部結構。
3) 消除沖突
?? 沖突分為三類:屬性沖突、結構沖突、命名沖突。
?? 設計全局ER模式的目的不在于把若干局部ER模式形式上合并為一個ER模式,而在于消除沖突,使之成為能夠被所有用戶共同理解和接受的同一的概念模型。
4) 全局ER模式的優化
?? 在得到全局ER模式后,為了提高數據庫系統的效率,還應進一步依據處理需求對ER模式進行優化。一個好的全局ER模式,除能準確、全面地反映用戶功能需求外,還應滿足下列條件:實體類型的個數要盡可能的少;實體類型所含屬性個數盡可能少;實體類型間聯系無冗余
下沙派威客網的全局ER模式如圖所示:
?
?
4 總體設計
4.1 網站系統功能說明
4.1.1總體功能
網站總體功能表
| 功能類別 | 子功能 |
| 用戶登錄 | 用戶輸入正確的用戶名和密碼及正確的權限后,就登錄系統。 |
| 如果輸入有誤,系統報錯。 | |
| 用戶發布威客在線 | 查看相關網站流程 |
| 添加威客在線 | |
| 查看成交記錄 | |
| 參與網站 | 查看網站流程 |
| 參與威客在線 | |
| 查看成交記錄 | |
| 管理員對基本信息進行管理 | 對系統用戶基本信息進行管理 |
| 對網站品進行管理 | |
| 對網站記錄進行管理 | |
| 數據備份 |
4.1.2非功能性需求
??? 非功能性需求針對整個系統進行。
4.1.2.1用戶界面需求
用戶界面需求表
| 需求名稱 | 詳細要求 |
| 風格 | 界面友好,布局合理,美觀大方,實用性強,操作簡單 |
| 顏色 | 淡紅色系為主 |
| 分辨率 | 1024*768 |
4.1.2.2軟硬件環境需求
表4-1-8 軟硬件環境需求表
| 需求名稱 | 詳細要求 |
| 運行速度 | 系統啟動運行時間不超過5min,人機界面交互時間不超過5s |
| 容量 | 占用內存大于15MB |
| 操作系統性能 | 10/100M bit/s |
| 網絡傳輸率 | 10/100M bit/s |
4.1.2.3產品質量需求
表4-1-9 產品質量需求表
| 主要質量屬性 | 詳細要求 |
| 正確性 | 經過測試達到了預期的效果 |
| 健壯性 | 具有一定的健壯性 |
| 可靠性 | 容錯能力強,測試質量合格 |
| 性能,效率 | 性能優,效率高 |
| 易用性 | 跨平臺操作 |
| 清晰性 | 優 |
| 安全性 | 安全可靠性極佳 |
| 可擴展性 | 優良的可靠的接口 |
| 兼容性 | 可作用于任何平臺 |
| 可移植性 | 正確的進行軟件配置后,就可以正常運行程序 |
4.2 建立數據庫模型
下沙派威客網數據庫
說明:1:!表示主鍵,$表示索引,N表示非空值
????? 2:以下只是網站的重要數據表,次要重略。
| allusers表:
faburenwu表:
gwc表:
liuyanban表:
pinglun表:
xinwentongzhi表:
yonghuzhuce表:
youqinglianjie表:
? |
?
5 詳細設計
5.1 系統首頁
5.1.1系統首頁(網站首頁index.jsp)
?
5.1.2 下沙派威客網首頁界面說明
此頁面為網站首頁,上面的導航欄有用戶管理,站內新聞,留言板,威客在線,成交記錄,后臺管理等功能。下面還有系統公告,友情鏈接等。
首頁中擁有一個用戶登錄窗口,在其相應輸入框中填定正確內容并選擇正確的身份后,方可登錄系統。其他區塊與一般網站無異,只是較簡潔,操作方面也是力求簡約,故不一一說明
實現本模塊的主要代碼如下所示:??
</tr><tr><td height="145"><table id="__01" width="684" height="145" border="0" cellpadding="0" cellspacing="0"><tr><td width="684" height="39" background="qtimages/index_04_02_03_01.gif"><table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td width="22%" height="20" align="center" valign="bottom" class="STYLE1">最新任務</td><td width="78%"> </td></tr></table></td></tr><tr><td width="684" height="106"><table width="100%" border="1" align="center" cellpadding="3" cellspacing="1" bordercolor="#F8C878" style="border-collapse:collapse"><tr><td width="45" align="center" bgcolor="#F8F8C8">序號</td><td width="86" bgcolor='#F8F8C8'>任務名稱</td><td width="50" bgcolor='#F8F8C8'>類別</td><td width="105" bgcolor='#F8F8C8'>完成時限</td><td width="86" bgcolor='#F8F8C8'>支付報酬</td><td width="100" align="center" bgcolor="#F8F8C8">發布人</td><td width="146" align="center" bgcolor="#F8F8C8">發布時間</td></tr><%sql="";sql="select * from faburenwu where 1=1";if(request.getParameter("bianhao")=="" ||request.getParameter("bianhao")==null ){}else{sql=sql+" and bianhao like '%"+new String(request.getParameter("bianhao").getBytes("8859_1"))+"%'";}if(request.getParameter("mingcheng")=="" ||request.getParameter("mingcheng")==null ){}else{sql=sql+" and mingcheng like '%"+new String(request.getParameter("mingcheng").getBytes("8859_1"))+"%'";}sql=sql+" order by id desc";RS_result=connDbBean.executeQuery(sql);String renwumingcheng="";String leibie="";String renwujianjie="";String fujian="";String wanchengshixian="";String zhifubaochou="";String faburen="";i=0;while(RS_result.next()){i=i+1;id=RS_result.getString("id");renwumingcheng=RS_result.getString("renwumingcheng");leibie=RS_result.getString("leibie");renwujianjie=RS_result.getString("renwujianjie");fujian=RS_result.getString("fujian");wanchengshixian=RS_result.getString("wanchengshixian");zhifubaochou=RS_result.getString("zhifubaochou");addtime=RS_result.getString("addtime"); faburen=RS_result.getString("faburen");%><tr><td width="45" align="center"><%=i %></td><td><%=renwumingcheng %></td><td><%=leibie %></td><td><%=wanchengshixian %></td><td><%=zhifubaochou %></td><td width="100" align="center"><%=faburen %></td><td width="146" align="center"><%=addtime %></td></tr><%}%></table></td></tr></table></td></tr><tr><td height="185"><table id="__01" width="684" height="145" border="0" cellpadding="0" cellspacing="0"><tr><td width="684" height="39" background="qtimages/index_04_02_03_01.gif"><table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td width="22%" height="20" align="center" valign="bottom" class="STYLE1">系統簡介</td><td width="78%"> </td></tr></table></td></tr><tr><td width="684" height="106"><p> </p></td></tr>5.2 站內新聞信息
5.2.1站內新聞操作界面
此頁面為站內新聞,可隨時了解最新的新聞,雙擊可查看詳細內容,實現本模塊的主要代碼如下所示:
??????
5.2.2系統主操作界面說明
下沙派威客網的發布操作界面,注冊用戶需要注冊才能進入此頁面。界面右邊是呈信息列表的形式讓用戶輸入正確的網站品信息,以讀入系統數據庫。
5.3威客在線操作界面
在本網站系統,注冊用戶。用戶既可以在系統中發布威客在線,也可以參與他人的留言活動。
5.3.1 威客在線操作界面
?
5.3.2威客在線說明
??? 該界面的功能是讓注冊用戶進行發布威客的相關操作,并形成成交記錄載入數據庫相應的表。注冊用戶點詳細看到圖5-3-2威客在線界面,還可下載文件,如圖5-3-3威客在線界面.
實現本模塊的主要代碼如下所示:
?????
<title>發布任務</title><LINK href="CSS.css" type=text/css rel=stylesheet><script language="javascript" src="js/Calendar.js"></script><script type="text/javascript" src="js/popup.js"></script><script type="text/javascript">function up(tt){var pop=new Popup({ contentType:1,isReloadOnClose:false,width:300,height:50});pop.setContent("contentUrl","upload.jsp?Result="+tt);pop.setContent("title","文件上傳");pop.build();pop.show();}</script></head><script language="javascript">function check(){if(document.form1.renwumingcheng.value==""){alert("請輸入任務名稱");document.form1.renwumingcheng.focus();return false;}if(document.form1.wanchengshixian.value==""){alert("請輸入完成時限");document.form1.wanchengshixian.focus();return false;}if(document.form1.zhifubaochou.value==""){alert("請輸入支付報酬");document.form1.zhifubaochou.focus();return false;}}function gow(){document.location.href="faburenwu_add.jsp?jihuabifffanhao="+document.form1.jihuabifffanhao.value;}</script><body ><form name="form1" id="form1" method="post" action="faburenwu_add_post.jsp">添加發布任務:<br><br><table width="100%" border="1" align="center" cellpadding="3" cellspacing="1" bordercolor="#00FFFF" style="border-collapse:collapse"> <tr><td>任務名稱:</td><td><input name='renwumingcheng' type='text' id='renwumingcheng' value='' size='50' /> *</td></tr><tr><td>類別:</td><td><select name='leibie' id='leibie'><option value="網站類">網站類</option><option value="軟件類">軟件類</option><option value="圖文類">圖文類</option><option value="其他類">其他類</option></select></td></tr><tr><td>任務簡介:</td><td><textarea name='renwujianjie' cols='50' rows='5' id='renwujianjie'></textarea></td></tr><tr><td>附件:</td><td><input name='fujian' type='text' id='fujian' size='50' value='' /> <input type='button' value='上傳' onClick="up('fujian')"/></td></tr><tr><td>完成時限:</td><td><input name='wanchengshixian' type='text' id='wanchengshixian' value='' readonly='readonly' onClick="getDate(document.form1.wanchengshixian,'2')" need='1' /> *</td></tr><tr><td>支付報酬:</td><td><input name='zhifubaochou' type='text' id='zhifubaochou' value='' /> *</td></tr><tr><td>發布人:</td><td><input name="faburen" type="text" id="faburen" value="<%=request.getSession().getAttribute("username")%>"></td></tr><tr><td> </td><td><input type="submit" name="Submit" value="提交" onClick="return check();" /><input type="reset" name="Submit2" value="重置" /></td></tr>?
5.4系統后臺登錄界面
5.4.1系統后臺登錄界面
?
5.4.2系統后臺登錄界面說明
?此頁面要求系統管理員輸入正確的用戶名和密碼,在核對無誤后放行,若其中有數據不符則認為是非法用戶而拒之于門外。實現本模塊的主要代碼如下所示:
title>用戶登錄</title><style type="text/css"><!--body {margin-left: 0px;margin-top: 0px;margin-right: 0px;margin-bottom: 0px;overflow:hidden;}.STYLE1 {font-size: 12px;color: #a1c8c6;}.STYLE4 {color: #FFFFFF; font-size: 12px; }.STYLE5 { color: #72AC27;font-size: 26pt;}--></style><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><body><table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0"><tr><td bgcolor="035551"> </td></tr><tr><td height="311" background="images/login_03.gif"><table width="758" border="0" align="center" cellpadding="0" cellspacing="0"><tr><td height="210" background="images/login1.jpg"><table width="100%" height="190" border="0" cellpadding="0" cellspacing="0"><tr><td width="38%" height="98"> </td><td width="62%"> </td></tr><tr><td> </td><td><table width="93%" height="51" border="0" align="left"><tr><td><div style="font-family:宋體; color:#FFFFFF; filter:Glow(Color=#000000,Strength=2); WIDTH: 100%; FONT-WEIGHT: bold; FONT-SIZE: 19pt; margin-top:5pt"><div align="center" class="STYLE5">下沙派威客網</div></div></td></tr></table></td></tr></table></td></tr><tr><td height="101"><table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td width="446" height="101" background="img/login_06.gif"> </td><td width="156"><table width="100%" border="0" cellspacing="0" cellpadding="0"><form name="form1" method="post" action="adminyanzheng.jsp"><tr><td width="29%" height="22"><span class="STYLE4">用戶名</span></td><td width="71" height="22"><input name="username" type="text" id="username" style="width:100px; height:16px; border:solid 1px #000000; color:#666666"></td></tr><tr><td height="22"><span class="STYLE4">密 碼</span></td><td height="22"><input name="pwd" type="password" id="pwd" style="width:100px; height:16px; border:solid 1px #000000; color:#666666"></td></tr><tr style="display:none"><td height="22"><span class="STYLE4">權 限</span></td><td height="22"><select name="cx" id="cx"><option value="管理員">管理員</option><option value="評審專家">評審專家</option><option value="教師">教師</option></select><input name="login" type="hidden" id="login" value="1"></td></tr><tr><td height="25"> </td><td height="25"><input type="submit" name="Submit" value="登陸"><input type="reset" name="Submit2" value="重置"></td></tr></form></table></td><td width="156" background="images/login_09.gif"> </td></tr></table></td></tr></table></td></tr><tr><td bgcolor="1f7d78"> </td></tr><tr><td bgcolor="1f7d78"><div align="center"><span class="STYLE1">-- 下沙派威客網 CopyRight 2020 --</span></div></td></tr></table>5.5系統后臺操作界面
5.5.1人機界面
1)后臺首頁:
實現本模塊的主要代碼如下所示:
<%@ page language="java" pageEncoding="gb2312"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><base href="<%=basePath%>"><title>下沙派威客網</title></head><frameset rows="90,*,30" cols="*" framespacing="0" frameborder="no" border="0"><frame src="top.jsp" name="topFrame" scrolling="No" noresize="noresize" id="topFrame" /><frame src="center.jsp" name="mainFrame" id="mainFrame" /><frame src="down.jsp" name="bottomFrame" scrolling="No" noresize="noresize" id="bottomFrame" /></frameset><noframes><body></body></noframes></html>2)站內新聞
實現本模塊的主要代碼如下所示:
lb="站內新聞";}%><script language="javascript">function check(){if(document.form1.yonghuming.value==""){alert("請輸入用戶名");document.form1.yonghuming.focus();return false;}if(document.form1.mima.value==""){alert("請輸入密碼");document.form1.mima.focus();return false;}if(document.form1.gongsimingcheng.value==""){alert("請輸入公司名稱");document.form1.gongsimingcheng.focus();return false;}if(document.form1.dianhua.value==""){alert("請輸入電話");document.form1.dianhua.focus();return false;}if(document.form1.xingye.value==""){alert("請輸入行業");document.form1.xingye.focus();return false;}}function gow(){document.location.href="gongsi_add.jsp?jihuabifffanhao="+document.form1.jihuabifffanhao.value;}</script><body ><table width="942" height="1023" border="0" align="center" cellpadding="0" cellspacing="0" id="__01"><tr><td width="942" height="32" background="qtimages/index_01.gif"><%@ include file="qttop.jsp"%></td></tr><tr>3)注冊管理
實現本模塊的主要代碼如下所示:
?
4)成交記錄管理
實現本模塊的主要代碼如下所示:
<title>發布任務</title><LINK href="CSS.css" type=text/cssrel=stylesheet></head><body ><p>所有交易記錄:</p><form name="form1" id="form1" method="post" action="">搜索:任務名稱:<input name="bianhao" type="text" id="bianhao" />類別<input name="mingcheng" type="text" id="mingcheng" /><input type="submit" name="Submit" value="查找" /></form><table width="100%" border="1" align="center" cellpadding="3" cellspacing="1" bordercolor="00FFFF" style="border-collapse:collapse"> <tr><td width="30" align="center" bgcolor="CCFFFF">序號</td><td bgcolor='#CCFFFF'>任務名稱</td><td bgcolor='#CCFFFF'>類別</td><td bgcolor='#CCFFFF'>完成時限</td><td bgcolor='#CCFFFF'>支付報酬</td><td width="138" align="center" bgcolor="CCFFFF">發布人</td><td width="138" align="center" bgcolor="CCFFFF">接受時間</td><td width="60" align="center" bgcolor="CCFFFF">接受人</td><td width="60" align="center" bgcolor="CCFFFF">對方同意</td><td width="60" align="center" bgcolor="CCFFFF">操作</td></tr>? ???
5.5.2系統后臺界面說明
在此系列頁面中,管理員可對所有用戶的信息進行增加、編輯、刪除等操作,添加用戶時需要填寫的資料不太多,而編輯頁面則是以詳細列表的形式展開,一目了然。
6 系統測試
6.1系統測試的目的
系統測試不是為了表明程序是正確的,因為如果是這樣,就會設計一些不易暴露錯誤的測試方案,也不會主動去檢測、排除程序中可能存在的一些隱患。對于測試目的,G.J.Myers給除了以下的觀點:
(1)測試是為了發現程序中的錯誤而執行程序的過程。
(2)好的測試方案是極可能發現迄今為止尚未發現的錯誤的測試方案。
(3)成功的測試是發現了至今為止尚未發現的錯誤的測試。
6.2面向對象系統測試方案
根據系統測試目的并結合面向對象方法,我們給出了如下系統測試方案:
(1)盡早的、不斷的進行系統測試。我們知道,錯誤發現的越早,改正它所付出的代價也就越小。由于錯誤的發生往往是不可避免的,因此我們的系統測試貫穿于整個開發過程中,而不是把系統測試僅僅看作是軟件開發的一個獨立階段。
(2)設計測試用例時,給出測試的預期結果。一個測試用例由兩部分組成:測試用的輸入數據和該輸入數據所期望的程序運行結果。這樣測試時才能有一個判斷標準,利用輸入數據得出測試數據并和預測數據進行比較,看它們是否一致。
(3)我們在設計測試用例時,不僅有合法的輸入測試用例,還有非法的輸入測試用例。因為,在系統的實際使用過程中,由于各種原因,用戶往往會使用一些非法的輸入,比如按錯了鍵或者使用了非法的命令等,所以,我們特別注意設計非法的輸入測試用例來進行測試。
(4)在對系統修改完之后進行回溯測試。我們在修改系統的同時往往又會引入新的錯誤,所以在對程序修改完之后,用以前的用例進行回歸測試。
?
7 軟件布署
7.1安裝環境要求
1.使用Windows 2000/XP 操作系統的用戶安裝個人網絡服務器
2.網頁制作軟件,如JSP。JDK,
3.數據庫管理軟件,如SQL Server。
4.數據庫管理軟件,如SQL Server。
7.2系統詳細配置方法
?
總結
經過一個多月進行的設計,終于完成了下沙派威客網的設計。此設計已經達到了最初期望的設計要求,完成了需求。網站作為多欄目、多版面的有機結合整體,不僅僅要考慮到網站功能及其效果的實現,更應該注重網站與用戶的有機結合。網站設計與實現的成功只是網站成功的一步,網站的明確定位顯得更加重要,網站應該隨時根據實施環境,實施困難進行必要的定位調整。
由于時間倉促以及本人水平有限,本系統還有很多不完善之處,也難免存在錯漏,懇請各位斧正。
總結
以上是生活随笔為你收集整理的我是如何用JSP在网络上架构一个网上招标系统,以推进网站无纸化,过程电子化,管理智能化的发展的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 孙叫兽进阶之路之敏捷开发
- 下一篇: 我是如何使用git把本地代码上传到git