版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 本科畢業(yè)論文</b></p><p><b> ?。?0 屆)</b></p><p><b> 在線調查問卷系統(tǒng)</b></p><p> 所在學院 </p><p> 專業(yè)班級 軟
2、件技術(軟件工程師方向)</p><p> 學生姓名 學號 </p><p> 指導教師 職稱 </p><p> 完成日期 年 月 </p><p><b> 摘 要</b>
3、</p><p> 在校園、機關或企業(yè)里,由于各種調查研究的需要,經(jīng)常會有各種各樣的調查問卷,在傳統(tǒng)模式下,人們不但要花費不少的費用印刷問卷,而且還要消耗大量時間和精力發(fā)放問卷,回收問卷,統(tǒng)計問卷,并且問卷可控性差,容易產生漏卷,廢卷等問題。本系統(tǒng)建立在信息技術基礎上,構建一個在線的問卷設計、分發(fā)、調查、回收、統(tǒng)計的系統(tǒng),基本解決傳統(tǒng)問卷的上述問題。本畢業(yè)設計的內容是設計并且實現(xiàn)一個基于web技術的網(wǎng)絡調研問卷
4、網(wǎng)站,故而系統(tǒng)主要以j2EE作為開發(fā)基礎,主要使用了struts2+spring+hibernate等多種框架的結合使用,用myeclipse作為開發(fā)工具,以MYSQL作為數(shù)據(jù)庫,以Macromedia公司的Dreamweaver作為界面美化工具,使用JAVA語言開發(fā),頁面采取JSP動態(tài)頁面開發(fā)技術。該系統(tǒng)界面簡單、操作方便,容易維護。</p><p> 關鍵詞:網(wǎng)絡調研問卷網(wǎng)站,S.S.H(Struts ,H
5、ibernate ,Spring),JAVA , JSP</p><p><b> 目錄</b></p><p><b> 摘 要2</b></p><p><b> 一、緒論5</b></p><p> 1.1 課題研究的背景5</p><
6、p> 1.2 課題研究的意義5</p><p> 二、 系統(tǒng)的開發(fā)環(huán)境及技術簡介6</p><p> 2.1 系統(tǒng)開發(fā)環(huán)境6</p><p> 2.1.1Eclipse6</p><p> 2.1.2 數(shù)據(jù)庫簡介6</p><p> 2.1.3 Tomcat6</p>&l
7、t;p> 2.2系統(tǒng)開發(fā)的思想與技術7</p><p> 2.2.1JSP技術與MVC模式以及系統(tǒng)的基本框架7</p><p> 2.2.2 S.S.H框架的優(yōu)點7</p><p> 三、系統(tǒng)總體設計10</p><p> 3.1 總體功能模塊10</p><p> 3.2系統(tǒng)管理員的功能模
8、塊10</p><p> 3.3發(fā)布問卷用戶功能模塊11</p><p> 3.4調查問卷用戶的功能模塊11</p><p> 3.5 系統(tǒng)業(yè)務描述12</p><p> 3.5 程序流程圖13</p><p> 四、系統(tǒng)詳細設計與實現(xiàn)13</p><p> 4.1系統(tǒng)和
9、數(shù)據(jù)庫的配置14</p><p> 4.2概念模型設計14</p><p> 4.3數(shù)據(jù)庫邏輯模型15</p><p> 4.4數(shù)據(jù)庫表結構19</p><p> 五、系統(tǒng)功能實現(xiàn)22</p><p> 5.1程序的類圖22</p><p> 5.1.1課題Keti類圖
10、22</p><p> 5.1.2題目Timu類圖23</p><p> 5.1.3調查Diaocha類圖23</p><p> 5.1.4調查記錄Diaochajilu類圖24</p><p> 5.1.5統(tǒng)計Tongji類圖24</p><p> 5.1.6信息Xinxi類圖25</p&g
11、t;<p> 5.1.7用戶User類圖25</p><p> 5.2程序的時序圖26</p><p> 5.2.1課題模塊時序圖26</p><p> 5.2.2用戶信息模塊時序圖27</p><p> 5.3系統(tǒng)功能實現(xiàn)的主要框架27</p><p> 5.3.1 SSH框架
12、27</p><p> 5.3.2 hibernate配置文件27</p><p> 5.3.3 struts配置文件29</p><p> 5.3.4 spring配置文件29</p><p> 5.4系統(tǒng)功能實現(xiàn)的主要模塊32</p><p> 5.4.1 登陸頁面32</p>
13、<p> 5.4.2 發(fā)布問卷用戶首頁32</p><p> 5.4.3 調查課題審核主頁面35</p><p> 5.4.4 注冊頁面35</p><p> 5.4.5 調查問卷用戶的操作頁面首頁37</p><p> 5.4.6 關于信息管理與信息查詢38</p><p> 5.4
14、.7 關于管理員的一些特殊權限39</p><p> 5.4.8 關于個人信息管理39</p><p> 5.4.9 關于修改密碼40</p><p><b> 結束語41</b></p><p><b> 參考文獻42</b></p><p><b&
15、gt; 致謝43</b></p><p><b> 一、緒論</b></p><p> 1.1 課題研究的背景</p><p> 在當前的各類企業(yè)網(wǎng)站中,通常都需要提供有相應的網(wǎng)絡調查功能,以便收集廣大客戶的意見或看法。類似的,在企業(yè)對有關問題(如客戶的意見、售后服務的滿意程度、產品改進要求等)進行調查研究時,也可通過網(wǎng)絡
16、調查的方式實時高效地獲取客戶反饋信息,作為決策制定的參考依據(jù)。</p><p> 1.2 課題研究的意義</p><p> 隨著INTERNET的發(fā)展,世界網(wǎng)民的數(shù)量急劇增加,社會的信息化強度增強,企業(yè)競爭越發(fā)激烈,故對市場信息的掌握范圍不僅僅是周邊的一些信息,而應把范圍擴展到全國,甚至全世界,INTERNET恰恰是實現(xiàn)這目標的有利工具。對于新產品,新觀點的調查范圍應該更廣泛,消息應該
17、及時反饋給企業(yè)單位,故一個網(wǎng)上在線調查問卷系統(tǒng)應運而生,它正好充分滿足客戶的需求,信息反饋的范圍擴大,人力資源的節(jié)省,從而使得企業(yè)在競爭激烈的市場中擁有更強大的資本。開發(fā)此調查問卷系統(tǒng)是為了更好的把市場的信息更準確更快速的反饋給客戶,使信息的來源更廣泛,從而提高信息的準確性。運用此系統(tǒng)可以降低企業(yè)為市場調查而消耗的人力和物力,利用節(jié)省的資源提高產品的質量,增強競爭力。 通用網(wǎng)絡調查問卷系統(tǒng)的主要研究內容: 調查問卷主題的管理:調查問卷主
18、題的管理包括對調查主題的查看、添加、刪除和修改功能的實現(xiàn)。 調查問卷回答: 此功能在調查界面中實現(xiàn),受調查者對于其感性趣的主題回答問卷,沒有選擇任何選項時回做出“您沒有選擇選項” 的提示。除了這個功能外還有一個功能就記錄下每個對主題進行投票調查者的IP地址,從而可以使調查的公平性得到保證,不給那</p><p> 二、 系統(tǒng)的開發(fā)環(huán)境及技術簡介</p><p> 2.1 系統(tǒng)開發(fā)環(huán)境
19、</p><p> 2.1.1Eclipse</p><p> 雖然大多數(shù)用戶很樂于將 Eclipse 當作 Java 集成開發(fā)環(huán)境(IDE)來使用,但 Eclipse 的目標卻不僅限于此。Eclipse 還包括插件開發(fā)環(huán)境(Plug-in Development Environment,PDE),這個組件主要針對希望擴展 Eclipse 的軟件開發(fā)人員,因為它允許他們構建與
20、 Eclipse 環(huán)境無縫集成的工具。由于 Eclipse 中的每樣東西都是插件,對于給 Eclipse 提供插件,以及給用戶提供一致和統(tǒng)一的集成開發(fā)環(huán)境而言,所有工具開發(fā)人員都具有同等的發(fā)揮場所。</p><p> 2.1.2 數(shù)據(jù)庫簡介</p><p> 數(shù)據(jù)庫使用的是MySQL開源數(shù)據(jù)庫。</p><p> MySQL的特性:使用C和C++編寫,并使用了
21、多種編譯器進行測試,保證源代碼的可移植性 。支持AIX、FreeBSD、HP-UX、Mac OS、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系統(tǒng) 。為多種編程語言提供API。這些編程語言包括C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。支持多線程充分利用CPU資源。優(yōu)化的SQL查詢算法,有效地提高查詢速度。既能夠作為一個單獨的應用程序應用在客戶端服務器網(wǎng)絡環(huán)境中
22、,也能夠作為一個庫而嵌入到其他的軟件中提供多語言支持,常見的編碼如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名。提供TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫連接途徑。提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫操作的管理工具。可以處理擁有上千萬條記錄的大型數(shù)據(jù)庫。</p><p> 2.1.3 Tomcat</p><p> Tomcat 很受廣大程序員的
23、喜歡,因為它運行時占用的系統(tǒng)資源小,擴展性好,支持負載平衡與郵件服務等開發(fā)應用系統(tǒng)常用的功能;而且它還在不斷的改進和完善中,任何一個感興趣的程序員都可以更改它或在其中加入新的功能。 </p><p> Tomcat 是一個輕量級應用服務器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調試JSP 程序的首選。對于一個初學者來說,可以這樣認為,當在一臺機器上配置好Apache 服務器,可利用它響應
24、對HTML 頁面的訪問請求。實際上Tomcat 部分是Apache 服務器的擴展,但它是獨立運行的,所以當你運行tomcat 時,它實際上作為一個與Apache 獨立的進程單獨運行的。 </p><p> 2.2系統(tǒng)開發(fā)的思想與技術</p><p> 2.2.1JSP技術與MVC模式以及系統(tǒng)的基本框架</p><p> 本系統(tǒng)采用jsp技術,基于MVC模式開發(fā)
25、,使用SSH框架(struts2、spring、hibernate)來增加系統(tǒng)的開發(fā)速度。所謂的MVC模式是"Model-View-Controller"的縮寫,中文翻譯為"模式-視圖-控制器"。程序就是用struts2和hibernate這兩個框架來實現(xiàn)模型層和控制器這兩層,jsp實現(xiàn)視圖這一層。一般來說程序就是在數(shù)據(jù)庫和頁面之間起橋梁作用的,jsp頁面請求先到action,再到dao,再回到a
26、ction,回到jsp頁面,action主要處理來自頁面的請求,dao主要是和數(shù)據(jù)庫的交互,struts2主要用在action,處理來自頁面的請求,處理完請求后跳轉回頁面。Hibernate主要用在dao,包括對數(shù)據(jù)庫的增、刪、改、查的操作,spring控制程序的流程。</p><p> 2.2.2 S.S.H框架的優(yōu)點</p><p> S.S.H框架是J2EE應用中struts2+
27、spring+hibernate三大免費開源框架的結合使用, 它可以看成工具,也是中間件。他是用來提高我們的開發(fā)效率,提高我們軟件產品的可維護性、可擴展性乃至敏捷性的。他們里面有很多優(yōu)秀的設計理念及模式應用。比如,struts屬于MVC框架,關鍵是要了解MVC的概念及大致原理;而hibernate屬于ORM系統(tǒng),屬于持久層的解決方案,同樣需要對ORM的概念及原理有一個總體的了解。而spring屬于應用程序框架,其核心是IOC容器以及AO
28、P,Spring中還集成了很多適用東西,比如對JDBC的封裝、自己的MVC、對動態(tài)語言的簡潔訪問等,</p><p> 它由以下3個框架構成:</p><p> 1.Struts2框架</p><p> Struts2是Apache組織的一個開放源碼項目。Struts2是一個比較好的MVC框架,提供了對開發(fā)MVC系統(tǒng)的底層支持,它采用的主要技術是Servlet
29、,JSP和Custom tag library。其基本構成如圖2.1所示。</p><p> 圖2-1 Struts框架工作流程</p><p> 2.Spring框架</p><p> Spring 的核心是個輕量級(Lightweight)的容器(Container),它是實現(xiàn)IoC(Inversion of Control)容器、非侵入性(No int
30、rusive)的框架,并提供AOP(Aspect-oriented programming)概念的實現(xiàn)方式,提供對持久層(Persistence)、事務(Transaction)的支持,提供MVC Web 框架的實現(xiàn),并對一些常用的企業(yè)服務API(Application Interface)提供一致的模型封裝,是一個全方位的應用程序框架(Application framework),除此之外,對于現(xiàn)存的各種框架(Struts、JSF、H
31、ibernate 等),Spring 也提供了與它們相整合的方案。</p><p> Spring框架由以下7個部分組成</p><p> 2.2 Spring框架構成</p><p> 3.Hibernate框架</p><p> Hibernate 是一個開放源碼的 ORM 持久層框架。作為優(yōu)秀的持久層框架實現(xiàn),Hibernate
32、 框架提供了強大、高性能的對象到關系型數(shù)據(jù)庫的持久化服務,開發(fā)人員可以使用面向對象的設計進行持久層開發(fā)。簡單的說,Hibernate 只是一個將持久化類與數(shù)據(jù)庫表相映射的工具,每個持久化類實例均對應于數(shù)據(jù)庫表中的一個數(shù)據(jù)行而已。用戶只需直接使用面向對象的方法操作此持久化類實例,即可完成對數(shù)據(jù)庫表數(shù)據(jù)的插入、刪除、修改、讀取等操作。</p><p> 圖2.3 Hibernate框架</p><
33、;p><b> 三、系統(tǒng)總體設計</b></p><p> 3.1 總體功能模塊</p><p> 本系統(tǒng)分管理員, 發(fā)布問卷用戶, 調查問卷用戶3個用戶角色??偣δ軋D如圖3-1所示 </p><p> 圖3-1.系統(tǒng)功能需求分析</p><p>
34、3.2系統(tǒng)管理員的功能模塊</p><p> 系統(tǒng)管理員的主要功能有用戶管理(調查問卷用戶管理和發(fā)布問卷用戶管理)、調查課題管理(調查課題審核和調查數(shù)據(jù)查詢)、調查記錄查詢、信息管理。</p><p> 系統(tǒng)管理員的功能圖如圖2所示</p><p> 圖3-2.系統(tǒng)管理員的功能圖</p><p> 3.3發(fā)布問卷用戶功能模塊</
35、p><p> 發(fā)布問卷用戶的主要功能有、調查課題管理、調查題目管理、調查數(shù)據(jù)查詢、調查記錄查詢、個人信息管理、信息管理。</p><p> 發(fā)布問卷用戶的功能圖如圖3-3所示</p><p> 圖3-3. 發(fā)布問卷用戶的功能圖</p><p> 3.4調查問卷用戶的功能模塊</p><p> 調查問卷用戶的主要功
36、能有調查課題查詢、調查操作、個人信息查詢、信息查詢、調查記錄查詢。調查問卷用戶的功能圖如圖3-4所示</p><p> 圖3-4 調查問卷用戶的功能圖</p><p> 3.5 系統(tǒng)業(yè)務描述</p><p> 本系統(tǒng)分管理員, 發(fā)布問卷用戶, 調查問卷用戶3個用戶角色。系統(tǒng)管理員的主要功能有用戶管理(調查問卷用戶管理和發(fā)布問卷用戶管理)、調查課題管理(調查課
37、題審核和調查數(shù)據(jù)查詢)、調查記錄查詢、信息管理;發(fā)布問卷用戶的主要功能有、調查課題管理、調查題目管理、調查數(shù)據(jù)查詢、調查記錄查詢、個人信息管理、信息管理;調查問卷用戶的主要功能有調查課題查詢、調查操作、個人信息查詢、信息查詢、調查記錄查詢。</p><p><b> 用例圖如下:</b></p><p> 圖3-5 系統(tǒng)業(yè)務描述</p><p&
38、gt;<b> 3.5 程序流程圖</b></p><p><b> 用戶登錄流程圖</b></p><p> 圖3-5 程序流程圖</p><p> 四、系統(tǒng)詳細設計與實現(xiàn)</p><p> 4.1系統(tǒng)和數(shù)據(jù)庫的配置</p><p> 系統(tǒng)按通用的B/S(瀏覽
39、器、服務器)模式進行設計(如圖4-1)</p><p> 圖4-1 B/S結構</p><p> 數(shù)據(jù)庫在一個信息管理系統(tǒng)中占有非常重要的地位,數(shù)據(jù)庫結構設計的好壞將直接對應用系統(tǒng)的效率,以及實現(xiàn)的效果產生影響。合理的數(shù)據(jù)庫結構設計可以提高數(shù)據(jù)存儲的效率,保證數(shù)據(jù)的完整和一致。</p><p><b> 4.2概念模型設計</b><
40、/p><p> 概念模型設計的典型方法是用E-R圖方法,即用實體-聯(lián)系模型表示。E-R方法是用E-R圖來描述顯示世界,E-R圖包含三個基本成分:實體、聯(lián)系、屬性。它直觀易懂,能夠比較準確地反映現(xiàn)實世界的信息聯(lián)系,從概念上表示一個數(shù)據(jù)庫的信息組織情況。</p><p><b> 本系統(tǒng)E-R圖如下</b></p><p> 圖4-2概念模型設計
41、</p><p> 4.3數(shù)據(jù)庫邏輯模型</p><p> 調查表(主鍵、添加時間、調查編號、關聯(lián)的課題ID、關聯(lián)的用戶ID)</p><p> 圖4-3 數(shù)據(jù)庫調查邏輯模型</p><p> 調查記錄表(主鍵、添加時間、我的答案、關聯(lián)的調查ID、關聯(lián)的題目、關聯(lián)的用戶ID)</p><p> 圖4-4 數(shù)據(jù)
42、庫調查記錄邏輯模型</p><p> 調查題(主鍵、A選項、B選項、C選項、添加時間、D選項、調查題類型、是否刪除標志、問題、關聯(lián)的課題ID)</p><p> 圖4-5 數(shù)據(jù)庫調查題邏輯模型</p><p> 課題表(主鍵、添加時間、調查狀態(tài)、介紹、是否刪除標志、審核狀態(tài)、已使用、調查時間、標題、關聯(lián)的發(fā)布問卷用戶)</p><p>
43、 圖4-6 數(shù)據(jù)庫課題邏輯模型</p><p> 統(tǒng)計表(主鍵、A選項數(shù)量、B選項數(shù)量、C選項數(shù)量、D選項數(shù)量、關聯(lián)的調查題ID)</p><p> 圖4-7 數(shù)據(jù)庫統(tǒng)計邏輯模型</p><p> 信息表(主鍵、信息內容、添加時間、信息標題、添加時間、信息標題、發(fā)布的用戶ID)</p><p> 圖4-8 數(shù)據(jù)庫信息邏輯模型<
44、/p><p> 用戶表(主鍵、地址、參考調查次數(shù)、添加時間、密碼、聯(lián)系方式、狀態(tài)、用戶名、是否刪除標志、用戶名)</p><p> 圖4-9 數(shù)據(jù)庫用戶邏輯模型</p><p><b> 4.4數(shù)據(jù)庫表結構</b></p><p><b> 表4-1 調查表</b></p><
45、;p><b> 表4-2調查記錄表</b></p><p><b> 表4-3 調查題表</b></p><p><b> 表4-4課題表</b></p><p><b> 表4-5統(tǒng)計表</b></p><p><b> 表4-
46、6信息表</b></p><p><b> 表4-7用戶表</b></p><p><b> 五、系統(tǒng)功能實現(xiàn) </b></p><p><b> 5.1程序的類圖</b></p><p> 5.1.1課題Keti類圖</p><p>
47、; 程序類圖5- 1課題類圖</p><p> 5.1.2題目Timu類圖</p><p> 程序類圖5- 2題目類圖</p><p> 5.1.3調查Diaocha類圖</p><p> 程序類圖5- 3調查類圖</p><p> 5.1.4調查記錄Diaochajilu類圖</p><
48、;p> 程序類圖5- 4調查數(shù)據(jù)類圖</p><p> 5.1.5統(tǒng)計Tongji類圖</p><p> 程序類圖5-5統(tǒng)計類圖</p><p> 5.1.6信息Xinxi類圖</p><p><b> 圖5-6 信息類圖</b></p><p> 5.1.7用戶User類圖&l
49、t;/p><p><b> 圖5-7 用戶類圖</b></p><p><b> 5.2程序的時序圖</b></p><p> 5.2.1課題模塊時序圖</p><p> 圖5-8課題模塊時序圖</p><p> 5.2.2用戶信息模塊時序圖</p>&l
50、t;p> 圖5-9用戶信息模塊時序圖</p><p> 5.3系統(tǒng)功能實現(xiàn)的主要框架</p><p> 5.3.1 SSH框架</p><p> SSH框架就是struts2,spring,hibernate的簡稱,運用3個框架的集成協(xié)作使用,可以有效的提高代碼編寫的效率,從而有效的降低程序開發(fā)的周期。</p><p> 5
51、.3.2 hibernate配置文件</p><p> <hibernate-configuration></p><p> <session-factory></p><p> <!-- Database connection settings --></p><p> <property
52、 name="proxool.pool_alias">DBPool</property></p><p> <property name="proxool.xml">proxool.xml</property></p><p> <property name="connection.pro
53、vider_class"></p><p> org.hibernate.connection.ProxoolConnectionProvider</p><p> </property></p><p> <!-- Echo all executed SQL to stdout --></p><p
54、> <property name="show_sql">true</property></p><p> <property name="format_sql">true</property></p><p> <property name="dialect">
55、;org.hibernate.dialect.MySQLDialect</property></p><p> <!-- Enable Hibernate's automatic session context management --></p><p> <property name="current_session_context_
56、class">thread</property></p><p> <property name="hibernate.hbm2ddl.auto">update</property></p><p> <mapping class="model.User"/></p>
57、<p> <mapping class="model.Keti"/></p><p> <mapping class="model.Timu"/></p><p> <mapping class="model.Diaocha"/></p><p> &l
58、t;mapping class="model.Diaochajilu"/></p><p> <mapping class="model.Tongji"/></p><p> <mapping class="model.Xinxi"/></p><p> </ses
59、sion-factory></p><p> </hibernate-configuration>這是Hibernate的配置文件,在該文件中<property name="proxool.xml">proxool.xml</property></p><p> 首先加載了連接池的一個配置,就是加載了數(shù)據(jù)庫的連接信息,<
60、;/p><p> <property name="show_sql">true</property></p><p> <property name="format_sql">true</property></p><p> 表示控制臺打印SQL語句,并格式化SQL語句<
61、/p><p> <property name="dialect">org.hibernate.dialect.MySQLDialect</property></p><p> 表示當前數(shù)據(jù)庫的語言是MYSQL</p><p> <mapping class="model.User"/>&l
62、t;/p><p> <mapping class="model.Keti"/></p><p> <mapping class="model.Timu"/></p><p> <mapping class="model.Diaocha"/></p><
63、;p> <mapping class="model.Diaochajilu"/></p><p> <mapping class="model.Tongji"/></p><p> <mapping class="model.Xinxi"/></p><p>
64、 都表示當前數(shù)據(jù)庫建立起來的表和類之間的映射關系,比如<mapping class="model.User"/>表示User類和t_user表之間的建立起來的對應關系,其他也都類似</p><p> 5.3.3 struts配置文件</p><p><b> <struts></b></p><p&
65、gt; <constant name="struts.objectFactory" value="spring" /></p><p> <constant name="struts.i18n.encoding" value="UTF-8" /></p><p> <pack
66、age name="index" namespace="/" extends="struts-default"></p><p> <action name="index" method="index" class="manageAction" ></p>&l
67、t;p> <result name="success1">index.jsp</result></p><p> <result name="success2">login.jsp</result></p><p><b> </action></b>&
68、lt;/p><p> <action name="method" class="manageAction"></p><p> <result type="dispatcher">${url}</result></p><p> <result name=&quo
69、t;redirect" type="redirect">${url}</result></p><p><b> </action></b></p><p> </package></p><p> </struts>這是struts的配置文件,該文件的作
70、用主要起到來自JSP的請求的跳轉分配的作用.</p><p> 該struts配置文件是個總的配置文件。 </p><p> 5.3.4 spring配置文件</p><p> Spring 在本項目中主要用到了IOC的功能,就是把對象實例化</p><p> <!-- daos --&g
71、t;</p><p> <bean id="userDao" class="dao.impl.UserDaoImpl" ></p><p> <property name="sessionFactory"><ref bean="sessionFactory" /><
72、/property></p><p><b> </bean></b></p><p> <bean id="ketiDao" class="dao.impl.KetiDaoImpl" ></p><p> <property name="session
73、Factory"><ref bean="sessionFactory" /></property></p><p><b> </bean></b></p><p> <bean id="timuDao" class="dao.impl.TimuDaoImp
74、l" ></p><p> <property name="sessionFactory"><ref bean="sessionFactory" /></property></p><p><b> </bean></b></p><p>
75、; <bean id="diaochaDao" class="dao.impl.DiaochaDaoImpl" ></p><p> <property name="sessionFactory"><ref bean="sessionFactory" /></property><
76、;/p><p><b> </bean></b></p><p> <bean id="diaochajiluDao" class="dao.impl.DiaochajiluDaoImpl" ></p><p> <property name="sessionFa
77、ctory"><ref bean="sessionFactory" /></property></p><p><b> </bean></b></p><p> <bean id="tongjiDao" class="dao.impl.TongjiDaoI
78、mpl" ></p><p> <property name="sessionFactory"><ref bean="sessionFactory" /></property></p><p><b> </bean></b></p><p&
79、gt; <bean id="xinxiDao" class="dao.impl.XinxiDaoImpl" ></p><p> <property name="sessionFactory"><ref bean="sessionFactory" /></property></
80、p><p> </bean>本段代碼是把DAO實例化的代碼,通過spring的IOC模式</p><p> <bean id="userDao" class="dao.impl.UserDaoImpl" ></p><p> <property name="sessionFactor
81、y"><ref bean="sessionFactory" /></property></p><p><b> </bean></b></p><p> <bean id="ketiDao" class="dao.impl.KetiDaoImpl"
82、; ></p><p> <property name="sessionFactory"><ref bean="sessionFactory" /></property></p><p><b> </bean></b></p><p> <
83、;bean id="timuDao" class="dao.impl.TimuDaoImpl" ></p><p> <property name="sessionFactory"><ref bean="sessionFactory" /></property></p><
84、;p><b> </bean></b></p><p> <bean id="diaochaDao" class="dao.impl.DiaochaDaoImpl" ></p><p> <property name="sessionFactory"><r
85、ef bean="sessionFactory" /></property></p><p><b> </bean></b></p><p> <bean id="diaochajiluDao" class="dao.impl.DiaochajiluDaoImpl"
86、></p><p> <property name="sessionFactory"><ref bean="sessionFactory" /></property></p><p><b> </bean></b></p><p> <b
87、ean id="tongjiDao" class="dao.impl.TongjiDaoImpl" ></p><p> <property name="sessionFactory"><ref bean="sessionFactory" /></property></p>&
88、lt;p><b> </bean></b></p><p> <bean id="xinxiDao" class="dao.impl.XinxiDaoImpl" ></p><p> <property name="sessionFactory"><ref
89、 bean="sessionFactory" /></property></p><p><b> </bean></b></p><p> 本段代碼是把ManageAction實例化的代碼,原理也是spring的IOC模式。</p><p> 5.4系統(tǒng)功能實現(xiàn)的主要模塊</p&g
90、t;<p> 5.4.1 登陸頁面</p><p> 圖5-10 登陸頁面</p><p> 在登陸頁面中我會根據(jù)用戶表信息中的狀態(tài)來判斷客戶輸入的信息是否屬于他所在的用戶類型,比如說 客戶選擇的類型是管理員 那么Action會根據(jù)他所在表中的role信息來判斷他是否是管理員權限 (管理員權限是:“0”,調查問卷用戶的權限是:“1” 發(fā)布問卷用戶的權限是:“2”) 如
91、果不匹配 則登陸失敗。</p><p> 5.4.2 發(fā)布問卷用戶首頁</p><p> .圖5-11 發(fā)布問卷用戶首頁</p><p> 在發(fā)布問卷用戶首頁中,我們可以再調查管理中 可以添加新的調查課題,操作圖如下</p><p> 圖5-12發(fā)布問卷用戶添加調查的課題</p><p> 添加好課題之后我們
92、合一在調查課題管理下來查看我們添加的課題</p><p> 圖5-13發(fā)布問卷用戶調查課題管理</p><p> 在點擊調查題目管理中 我們可以對調查題進行增刪改查,</p><p> 圖5-14發(fā)布問卷用戶調查題管理</p><p> 在添加調查題的頁面我們可以寫我們要調查的信息,并且可以上傳圖片(注意:該插件可以在IE瀏覽器上顯示
93、出來的)</p><p> 圖5-15發(fā)布問卷用戶調查題添加</p><p> 在課題調查管理中 我們進入調查數(shù)據(jù)查詢 頁面來查看各個問題的 統(tǒng)計數(shù)據(jù), 點擊查看柱狀統(tǒng)計圖 例如:</p><p> 圖5-16 發(fā)布問卷用戶調查數(shù)據(jù)查詢 查看柱狀他統(tǒng)計圖</p><p> 5.4.3 調查課題審核主頁面</p><
94、p> 圖5-17調查題審核主頁面</p><p> 發(fā)布問卷用戶發(fā)布的信息不會直接就可以讓調查問卷用戶查看,在發(fā)布完信息后,我們要通過管路員登陸的頁面來管理發(fā)布者的信息權限,也就是說來update更新發(fā)布的調查權限,決定是否審核通過 </p><p> 5.4.4 注冊頁面</p><p> 注冊頁面在Actioan中 加上了相應正則表達式的判斷,來判
95、斷用戶名是否合法,不合法的字段也會彈出對應的信息,操作如下:</p><p> 圖5-18 注冊頁面的判斷</p><p> 圖5-19 注冊頁面的判斷</p><p> 在注冊頁面下還有手機格式的判斷和密碼的長度判斷我就不一一展示了,基本都是利用了正則表達式來判斷的。</p><p> 5.4.5 調查問卷用戶的操作頁面首頁<
96、;/p><p> 登陸到首頁我們可以查看消息并且可以查看和修改我們的個人信息,或者參與調查投票</p><p> 圖5-20 注冊頁面的判斷</p><p> 在調查課題查詢頁面我們可以看到 審核通過的調查題,并且進行投票,注意已經(jīng)投過票的 調查題我們就不能再次參加投票了,也就是我要調查的這個選項會根據(jù)jstl中的c:if 判斷你的投票次數(shù)大于是否1如果大于1將不
97、給予顯示。,如果不大于1那么你就可以投票了!</p><p> 點擊我要調查頁面,我們就可以對審核通過的調查題來進行投票啦,選好我們投票的選項點擊提交即可,記住我們調查完畢之后,就不能再次參加嘍!</p><p> 圖5-21 投票頁面</p><p> 5.4.6 關于信息管理與信息查詢</p><p> 在各個用戶的首頁都會有個信
98、息管理頁面與信息查詢頁面,其實這個頁面就是我們大家可以在這個公共的信息平臺上,發(fā)送自己想要說的話,比如調查問題的一些建議,都可以發(fā)布</p><p> 這是查看信息頁面:↓</p><p> 圖5-22 信息查看頁面</p><p> 在消息管理中我們可以對自己發(fā)布的消息進行增刪改查</p><p> 圖5-23 信息管理頁面<
99、/p><p> 在添加消息頁面中我們可以寫上自己說的話,或者上傳自己喜歡的照片</p><p> 圖5-24 信息添加頁面</p><p> 5.4.7 關于管理員的一些特殊權限</p><p> 在管理員頁面 我們不但可以對調查題審核,也可以刪除調查用戶和發(fā)布問卷用戶(注意:刪除不是正在的刪除,這句話是帶我的斌哥教我的 嘿嘿 只是修改了
100、一下他的刪除狀態(tài) 也就是鎖 如果被鎖狀態(tài)為1,那么登陸界面的Action就會判斷到他已經(jīng)被鎖了,就會登陸不上系統(tǒng))</p><p> 圖5-25 管理員操作用戶管理頁面列表</p><p> 5.4.8 關于個人信息管理</p><p> 個人信息管理頁面只會在調查問卷用戶與問卷調查用戶中顯示,我們點擊首頁的個人信息信息管理中可以編輯我們的昵稱與聯(lián)系地址等,
101、</p><p> 圖5-26 個人信息頁面</p><p> 5.4.9 關于修改密碼</p><p> 在首頁的左上角都會有修改密碼與用戶退出,(退出就不用解釋了,返回到首頁,并且把Session 銷毀。) 以下是修改密碼頁面,與傳統(tǒng)的修噶密碼一樣,我們要查詢客戶的舊密碼,并且與新密碼進行比較</p><p> 圖5-27 修改
102、密碼頁面</p><p><b> 結束語</b></p><p> 忙忙碌碌的北漂生活,作為一名初來乍到的程序員實習生,慢慢熟悉公司的項目業(yè)務,到上手敲代碼,避免不了長時間的加班,這個畢業(yè)設計 是我在百忙之中抽出時間 一點一點的去優(yōu)化設計,就像春蠶吐絲一般, 熟話說開山的鎬----兩頭忙 經(jīng)過反復的調BUG,熬夜的修復異常排錯,也基本達到預期的效果,但是還是會有
103、些瑕疵,外觀粗糙。功能不算嚴謹,可是,我又會有點自戀式地安慰自己:做一件事情,不必過于在乎最終的結果,可貴的是過程中的收獲。以此語言來安撫我尚沒平復的心。 </p><p><b> 參考文獻</b></p><p> [1] 馮燕奎, 趙德奎. JSP實用案例教程[M] 清華大學出版社, 2004, 5: 70-100</p><p>
104、 [2] 王家華 軟件工程[M] 東北大學出版社2001年3月303頁</p><p> [3] 王宜貴 軟件工程[M] 北京:機械工業(yè)出版社,2002:20-79</p><p> [4] 孫衛(wèi)琴 精通struts[M]電子工業(yè)出版社 2004年8月 50-70</p><p> [5] 孫衛(wèi)琴 精通hibernate[M]電子工業(yè)出版社 2005
105、年4月 100-120</p><p> [6] 張洪斌 java2高級程序設計[M]中科多媒體出版社 2001年11月 85-90</p><p> [7] Jim Arlow UML2.0 and the Unified Process[M]機械工業(yè)出版社 2006年6月 30-40</p><p> [8] 林信良 spring2.0技術手冊[M]
106、電子工業(yè)出版社 2006年6月 50-100</p><p> [9] 熊節(jié)、林儀明、張凱峰、陳玉泉等主編[《CSDN社區(qū)電子雜志——Java雜志》創(chuàng)刊號] </p><p> [10]《程序員》雜志 2007 年第4期</p><p> [11] 耿祥義編著.JSP基礎編程[M].清華大學出版社,2004.55-162</p><p>
107、; [12]徐建波,周新蓮.Web設計原理于編程技術[M].中南大學出版社,2005.185-193</p><p> [13] 孫鑫編著.Java Web開發(fā)詳解[M].電子工業(yè)出版社,2006.189-274</p><p> [14] 林上杰,林康司編著.JSP2.0技術手冊[M].電子工業(yè)出版社,2004.3-6</p><p> [15] 薩師煊,
108、王珊.數(shù)據(jù)庫系統(tǒng)概論(第三版)[M].北京:高等教育出版社,1998.</p><p> [16] 蔡劍,景楠.Java Web應用開發(fā):J2EE和Tomcat[M].北京:清華大學出版社,2004.</p><p><b> 致謝</b></p><p> 畢業(yè)設計,也許是我大學生涯交上的最后一個作業(yè)了,感謝這幾年來給予我?guī)徒M的所有老師
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論