

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 本科畢業(yè)論文</b></p><p><b> (20 屆)</b></p><p> 汽車銷售管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)--客戶管理模塊</p><p><b> 摘要</b></p><p> 隨著互連網(wǎng)技術(shù)的發(fā)展,汽車銷售系統(tǒng)通過計(jì)算機(jī)網(wǎng)
2、絡(luò)對(duì)客戶進(jìn)行管理已成為主要形式。本文在分析客戶管理的發(fā)展及現(xiàn)有模式的基礎(chǔ)上,結(jié)合計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展和企業(yè)銷售的要求,提出了客戶管理的有效模式,并在技術(shù)實(shí)現(xiàn)上進(jìn)行了詳細(xì)的分析。</p><p> 本課題使用JAVA作為開發(fā)語言,應(yīng)用框架是Spring MVC+MyBatis+freemaker,TOMCAT作為Web服務(wù)器,并使用了MYSQL作為后臺(tái)數(shù)據(jù)庫。Ajax實(shí)現(xiàn)了從基于Web的應(yīng)用到基于數(shù)據(jù)的應(yīng)用的轉(zhuǎn)換
3、。通過Ajax異步請(qǐng)求,可以使系統(tǒng)功能更加完善,更加友好。同時(shí),EasyUI界面框架的使用也加強(qiáng)了頁面友好度。</p><p> 此次完成的客戶管理系統(tǒng),成功的實(shí)現(xiàn)了分頁顯示客戶信息、添加客戶信息及其增刪改等功能,此外,根據(jù)用戶的購買信息,實(shí)現(xiàn)了銷售統(tǒng)計(jì)和客戶消費(fèi)的統(tǒng)計(jì)。并且注冊(cè)頁面采用了Ajax異步請(qǐng)求進(jìn)行了對(duì)注冊(cè)用戶名的驗(yàn)證,同時(shí),本軟件的風(fēng)格主要是采用了Easyui界面進(jìn)行展示,其中,頁面布局使用其lay
4、out模塊,加載數(shù)據(jù)使用其datagrid模塊,頁面提示信息亦是采用了其Message功能模塊。</p><p> 關(guān)鍵詞: Spring MVC, MYSQL,Ajax,Easyui,MyBatis</p><p><b> Abstract</b></p><p> With the development of Internet t
5、echnology, car sales system through computer network to manage the customer has become the main form. Based on the analysis of the development of customer management and the existing model, combined with the development
6、of computer network technology and the requirement of quality education, puts forward the customer management mode, and makes detailed analysis on technology implementation.</p><p> This paper uses JAVA as
7、the development language, SpringMVC+MyBatis+freemaker application framework, TOMCAT as the Web server,and uses MYSQL as the back-end database. Ajax from the implementation of the Web based applications to applications ba
8、sed on data conversion.Through the Ajax asynchronous request, can make the system function more perfect, more friendly. At the same time, the use of EasyUI interface frameworkand strengthen friendly page. </p><
9、;p> The complete customer management system, to achieve the success ofpaging display customer information, add customer information and crud functions, in addition, according to the user's information, the statis
10、tics, sales statistics and customer consumption. And the registration page using the Ajaxasynchronous request is verified, the registered user name at the same time,the software style is mainly used Easyui interface to d
11、isplay, wherein, the layout of the page using the layout module, loading</p><p> Key words:Spring MVC, MYSQL,Ajax,Easyui,Mybatis</p><p><b> 目錄</b></p><p><b> 引言
12、1</b></p><p> 1.1模塊開發(fā)的意義1</p><p> 1.2開發(fā)環(huán)境1</p><p><b> 技術(shù)概述2</b></p><p> 2.1數(shù)據(jù)庫介紹2</p><p> 2.2設(shè)計(jì)中JavaScript和Ajax技術(shù)2</p>
13、<p> 2.3 Spring MVC 介紹2</p><p><b> 需求分析3</b></p><p><b> 3.1項(xiàng)目概述3</b></p><p> 3.1.1 應(yīng)用目標(biāo)3</p><p> 3.1.2 作用及范圍3</p><p&
14、gt;<b> 3.2模塊功能3</b></p><p> 3.3設(shè)計(jì)模式選定3</p><p><b> 設(shè)計(jì)與實(shí)現(xiàn)4</b></p><p> 4.1數(shù)據(jù)庫設(shè)計(jì)4</p><p> 4.1.1 E/R圖4</p><p> 如下圖4-1所示:4&l
15、t;/p><p> 4.1.2 詳細(xì)的表結(jié)構(gòu)5</p><p><b> 4.2流程圖5</b></p><p> 4.3模塊功能界面6</p><p> 4.3.1 登錄界面6</p><p> 4.3.2 管理員注冊(cè)界面7</p><p> 4.3.3
16、 管理員修改密碼界面7</p><p> 4.3.4 用戶列表界面8</p><p> 4.3.5 消費(fèi)列表界面8</p><p> 4.3.6 銷售列表界面9</p><p> 4.4 部分功能界面代碼9</p><p> 4.4.1 管理員注冊(cè)界面代碼9</p><p>
17、; 4.4.2 頁面加載數(shù)據(jù)代碼10</p><p> 4.4.3 SpringMVC配置代碼12</p><p><b> 總結(jié)17</b></p><p><b> 參考文獻(xiàn)18</b></p><p><b> 致謝19</b></p>
18、<p><b> 引言</b></p><p><b> 模塊開發(fā)的意義</b></p><p> IT技術(shù)的發(fā)展使信息的管理也進(jìn)入了一個(gè)嶄新的階段,人類進(jìn)入了信息高速發(fā)展的時(shí)代,信息技術(shù)成為一門新的產(chǎn)業(yè)[1]。汽車銷售理念的出臺(tái),使銷售信息管理系統(tǒng)已開始設(shè)計(jì)并應(yīng)用于現(xiàn)實(shí)管理中。汽車銷售數(shù)量急劇增加,有關(guān)購車客戶的各種信息量也成倍
19、增長(zhǎng),客戶信息的統(tǒng)計(jì)跟蹤工作量與工作難度亦在增長(zhǎng)。</p><p> 使用計(jì)算機(jī)對(duì)客戶信息進(jìn)行統(tǒng)計(jì)跟蹤,具有手工管理無法比擬的優(yōu)點(diǎn)。使用計(jì)算機(jī)進(jìn)行管理具有查找方便、數(shù)據(jù)處理快捷、成本低等優(yōu)點(diǎn)。這些優(yōu)點(diǎn)能夠極大地提高汽車銷售客戶信息管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理的重要條件。</p><p> 在傳統(tǒng)模式下簡(jiǎn)單利用計(jì)算機(jī)對(duì)客戶信息進(jìn)行統(tǒng)計(jì)跟蹤,存在著較多的缺點(diǎn),這給汽車銷售管理者
20、對(duì)客戶的信息管理帶來了很大困難,嚴(yán)重影響了工作者的工作效率。隨著科學(xué)技術(shù)的不斷發(fā)展,計(jì)算機(jī)科學(xué)日漸成熟,使用日趨成熟的計(jì)算機(jī)技術(shù)代替?zhèn)鹘y(tǒng)的人工模式,來實(shí)現(xiàn)銷售客戶的現(xiàn)代化管理,其強(qiáng)大的功能已經(jīng)為人們所深刻認(rèn)知,計(jì)算機(jī)技術(shù)已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來越重要的作用。</p><p><b> 開發(fā)環(huán)境</b></p><p> 運(yùn)行環(huán)境硬件:P4以上計(jì)算機(jī),2
21、56M內(nèi)存以上。</p><p> 軟件要求:Windows98以上,Mysql5.5以上,JDK1.6以上,Tomcat7.0。</p><p> 開發(fā)環(huán)境硬件:P4以上計(jì)算機(jī),256M內(nèi)存以上。</p><p> 軟件:MySQL5.5,JDK1.7以上,Tomcat7.0,Eclipse 3.6。</p><p><b>
22、; 技術(shù)概述</b></p><p><b> 2.1數(shù)據(jù)庫介紹</b></p><p> MySQL[2]是一個(gè)小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。由于它的強(qiáng)大功能、靈活性、豐富的應(yīng)用編程接口(API)以及精巧的系統(tǒng)結(jié)構(gòu),體積小、速度快、總體擁有成本低 ,尤其是開放源碼 ,受到了廣大自由軟件愛好者甚至是商業(yè)軟件用戶的青睞,特別是與Apache和PHP/PER
23、L結(jié)合,為建立基于數(shù)據(jù)庫的動(dòng)態(tài)網(wǎng)站提供了強(qiáng)大動(dòng)力。MySQL是一個(gè)真正的多用戶、多線程SQL數(shù)據(jù)庫服務(wù)器。SQL(結(jié)構(gòu)化查詢語言)是世界上最流行的和標(biāo)準(zhǔn)化的數(shù)據(jù)庫語言。MySQL是以一個(gè)客戶機(jī)/服務(wù)器結(jié)構(gòu)的實(shí)現(xiàn),它由一個(gè)服務(wù)器守護(hù)程序MySQL和很多不同的客戶程序和庫組成。</p><p> 2.2設(shè)計(jì)中JavaScript和Ajax技術(shù)</p><p> 本模塊前臺(tái)的大部分功能采用A
24、jax來實(shí)現(xiàn)。這使系統(tǒng)大大提升了性能。Ajax技術(shù)以JavaScript[3]為依托,而JavaScript是一種解釋性的,基于對(duì)象的腳本語言(an interpreted,object-based scripting language)。</p><p> HTML網(wǎng)頁在互動(dòng)性方面能力較弱,例如表單局部刷新,就是用戶點(diǎn)擊某一按鈕時(shí),可實(shí)現(xiàn)網(wǎng)頁的無跳轉(zhuǎn)的頁面局部刷新,用純HTML網(wǎng)頁無法實(shí)現(xiàn);又如驗(yàn)證HTML表
25、單(Form)提交信息的有效性,用戶名不能為空,密碼不能少于6位,郵政編碼只能是數(shù)字之類,用純HTML網(wǎng)頁也無法實(shí)現(xiàn)。要實(shí)現(xiàn)這些功能,就需要用到JavaScript。</p><p> JavaScript作為一種腳本語言,比HTML要復(fù)雜,但是因?yàn)镴avaScript寫的程序都是以源代碼的形式出現(xiàn)的,正因?yàn)榭梢越梃b、參考優(yōu)秀網(wǎng)頁的代碼,所以讓JavaScript本身也變得非常受歡迎,從而被廣泛應(yīng)用。原來不懂編
26、程的人,多參考JavaScript示例代碼,也能很快上手。</p><p> JavaScript主要是基于客戶端運(yùn)行的,用戶點(diǎn)擊帶有JavaScript的網(wǎng)頁,網(wǎng)頁里的JavaScript就傳到瀏覽器,由瀏覽器對(duì)此作處理。前面提到的局部刷新、驗(yàn)證表單有效性等大量互動(dòng)性功能,都是在客戶端完成的。</p><p> 2.3 Spring MVC 介紹</p><p&g
27、t; Spring[4]框架提供了構(gòu)建 Web 應(yīng)用程序的全功能 MVC 模塊。使用 Spring 可插入的 MVC 架構(gòu),可以選擇是使用內(nèi)置的 Spring Web[5]框架還是 Struts 這樣的 Web 框架。通過策略接口,Spring 框架是高度可配置的,而且包含多種視圖技術(shù),例如 JavaServer Pages(JSP)技術(shù)、Velocity、Tiles、iText 和 POI。Spring MVC 框架并不知道使用的視
28、圖,所以不會(huì)強(qiáng)迫您只使用 JSP 技術(shù)。Spring MVC 分離了控制器、模型對(duì)象、分派器以及處理程序?qū)ο蟮慕巧@種分離讓它們更容易進(jìn)行定制。 </p><p> Spring用到的技術(shù)主要是IOC和AOP[6],并且善用注解和單元測(cè)試。</p><p><b> 需求分析</b></p><p><b> 3.1項(xiàng)目概述&
29、lt;/b></p><p> 該模塊是為節(jié)省了客戶管理花費(fèi)的人力和物力,解決手工操作帶來的諸多不便,提高信息查詢管理的工作效率而設(shè)計(jì)的。</p><p> 3.1.1 應(yīng)用目標(biāo)</p><p> 系統(tǒng)界面簡(jiǎn)潔,操作方便、容易,最大限度的滿足汽車銷售管理人員的需求,使管理人員通過使用本模塊可以進(jìn)行快速的客戶信息檢索,以節(jié)省大量的工作時(shí)間和工作量,提高客戶
30、信息管理的效率。</p><p> 3.1.2 作用及范圍</p><p> 本系統(tǒng)適用于汽車銷售系統(tǒng)中客戶信息查詢管理,使查詢更加方便、高效率,以協(xié)助企業(yè)建立完備的客戶信息的管理。</p><p><b> 3.2模塊功能</b></p><p> 汽車銷售管理平臺(tái)分為用戶管理,客戶基本信息的管理,管理員管理等
31、幾大部分。其中客戶基本信息的管理模塊是核心模塊,客戶添加有單個(gè)添加,客戶信息查詢可以提供根據(jù)客戶姓名和購車名稱的精確查詢和根據(jù)購車價(jià)格,購車日期,有無等條件模糊查詢。其中,根據(jù)客戶的消費(fèi)記錄,實(shí)現(xiàn)了汽車的銷量統(tǒng)計(jì)和客戶的消費(fèi)統(tǒng)計(jì)。</p><p><b> 3.3設(shè)計(jì)模式選定</b></p><p> 目前,網(wǎng)絡(luò)應(yīng)用軟件運(yùn)行的模式主要有兩類:Client/Serv
32、er模式和Browser/Web模式[7]。前者主要的缺點(diǎn)是維護(hù)、升級(jí)較麻煩,后者是近幾年伴隨Internet迅速發(fā)展起來的一種技術(shù),它與客戶/服務(wù)器方式類似,客戶端是一個(gè)標(biāo)準(zhǔn)的瀏覽器,服務(wù)器端是Web Server,而Web Server與數(shù)據(jù)庫和應(yīng)用服務(wù)器的緊密結(jié)合,使得這種模式的應(yīng)用范圍不斷擴(kuò)大,它已不僅僅用于網(wǎng)上查詢,有很多部門的業(yè)務(wù)系統(tǒng)、企業(yè)的MIS系統(tǒng)紛紛采用這種模式,它的主要優(yōu)點(diǎn)是便于擴(kuò)充應(yīng)用、升級(jí)維護(hù)簡(jiǎn)便。</p&
33、gt;<p> 另外,客戶統(tǒng)計(jì)跟蹤模塊也將不斷的更新,同時(shí)軟件產(chǎn)品本身就要經(jīng)過一個(gè)不斷自我完善的過程。</p><p> 基于上述考慮,用Browser/Web模式來設(shè)計(jì)管理系統(tǒng)比較合適,服務(wù)器端本模塊采用MySQL數(shù)據(jù)庫系統(tǒng)和J2EE框架來構(gòu)成畢業(yè)統(tǒng)計(jì)跟蹤模塊;客戶端采用瀏覽起來完成。</p><p><b> 設(shè)計(jì)與實(shí)現(xiàn)</b></p&g
34、t;<p><b> 4.1數(shù)據(jù)庫設(shè)計(jì)</b></p><p> 4.1.1 E/R圖</p><p><b> 如下圖4-1所示:</b></p><p> 圖4-1數(shù)據(jù)庫E/R圖</p><p> 4.1.2 詳細(xì)的表結(jié)構(gòu)</p><p> 系統(tǒng)
35、數(shù)據(jù)庫名稱:car_sale_db。數(shù)據(jù)庫的表:car_admin,car_user。當(dāng)添加刪除、選擇、更新、添加操作更新客戶表時(shí)對(duì)應(yīng)的客戶人數(shù)發(fā)生變化對(duì)應(yīng)的表car_user更新數(shù)據(jù)。</p><p> 系統(tǒng)管理員表結(jié)構(gòu)如下表4-2所示:</p><p><b> 表4-2 管理員表</b></p><p> 客戶表結(jié)構(gòu)如下表4-3所示
36、:</p><p><b> 表4-3 用戶表</b></p><p><b> 4.2流程圖</b></p><p> 系統(tǒng)主要分為兩大模塊:管理員登錄模塊和客戶信息管理模塊。下面分別介紹管理員登錄模塊和客戶管理模塊的建立。如下圖4-4所示: </p><p> 圖4-4 客戶管理
37、系統(tǒng)組成結(jié)構(gòu)</p><p><b> 4.3模塊功能界面</b></p><p> 4.3.1 登錄界面</p><p> 登錄界面,系統(tǒng)管理員的登錄界面。如果賬號(hào)或密碼錯(cuò)誤則提示紅色錯(cuò)誤信息。如下圖4-5所示:</p><p><b> 圖4-5登陸界面</b></p>&
38、lt;p> 4.3.2 管理員注冊(cè)界面</p><p> 管理員注冊(cè)界面。如下圖4-6所示:</p><p><b> 圖4-6 注冊(cè)界面</b></p><p> 4.3.3 管理員修改密碼界面</p><p> 管理員修改密碼界面。如下圖4-7所示:</p><p> 圖4-
39、7管理員修改密碼界面</p><p> 4.3.4 用戶列表界面</p><p> 客戶信息的展示,客戶的增刪改操作,其中可進(jìn)行模糊查找,也可以進(jìn)行精確查找。如下圖4-8所示:</p><p> 圖4-8 客戶信息列表界面</p><p> 4.3.5 消費(fèi)列表界面</p><p> 客戶的消費(fèi)信息列表界面,
40、可通過客戶名對(duì)客戶進(jìn)行精確查找,如下圖4-9所示:</p><p> 圖4-9 消費(fèi)列表界面</p><p> 4.3.6 銷售列表界面</p><p> 汽車的銷售信息列表界面,可通過車名對(duì)銷售信息進(jìn)行精確查找,如下圖4-10所示。</p><p> 圖4-10銷售列表的顯示界面</p><p> 4.4
41、部分功能界面代碼</p><p> 4.4.1 管理員注冊(cè)界面代碼</p><p> 管理員注冊(cè)信息界面主要實(shí)現(xiàn)的是通過Ajax實(shí)現(xiàn)異步驗(yàn)證要注冊(cè)的用戶名是否存在。通過jquery[8]來驗(yàn)證密碼和確認(rèn)密碼是否相等。該界面的具體代碼如下:</p><p><b> <script></b></p><p&g
42、t; //驗(yàn)證用戶名是否已經(jīng)注冊(cè),用到了Ajax異步調(diào)用</p><p> function isUserExist(){</p><p> var user = $("#user").val();</p><p> if($.trim(user) != ""){</p><p> $.pos
43、t("/admin/isUserExist",{user:user},function(data){</p><p> if(data == 0){</p><p> $("#user").val("");</p><p> $("#errorMsg").empty();</
44、p><p> $("#errorMsg").append("用戶名已注冊(cè)");</p><p> }else if(data == 1){</p><p> $("#errorMsg").empty();</p><p><b> }</b></p&g
45、t;<p><b> });</b></p><p><b> }else{</b></p><p> $("#errorMsg").empty();</p><p> $("#errorMsg").append("用戶名不能為空");&l
46、t;/p><p><b> }</b></p><p><b> }</b></p><p> //通過Ajax來提交表單數(shù)據(jù)并進(jìn)行注冊(cè),實(shí)現(xiàn)與服務(wù)器端的交互</p><p> $(":button").click(function () {</p><p
47、> var user = $("#user").val();</p><p> var pwd = $("#pwd").val();</p><p> var conpwd = $("#conpwd").val();</p><p> if($.trim(pwd) == ""
48、;){</p><p> $("#pwd").val("");</p><p> $("#conpwd").val("");</p><p> $("#errorMsg").empty();</p><p> $("#erro
49、rMsg").append("密碼不能為空");</p><p><b> return ;</b></p><p><b> }</b></p><p> if($.trim(pwd) == $.trim(conpwd)){</p><p> $.post(&
50、quot;/admin/regist", {user: user, pwd: pwd}, function (data) </p><p><b> {</b></p><p> if (data == 1) {</p><p> window.location.href = "/admin/toLogin"
51、;</p><p> } else if(data == 0){</p><p> $("#user").val("");</p><p> $("#pwd").val("");</p><p> $("#conpwd").val(&q
52、uot;");</p><p> $("#errorMsg").empty();</p><p> $("#errorMsg").append("用戶名已注冊(cè)");</p><p><b> } </b></p><p><b> }
53、);</b></p><p><b> }else{</b></p><p> $("#pwd").val("");</p><p> $("#conpwd").val("");</p><p> $("#err
54、orMsg").empty();</p><p> $("#errorMsg").append("密碼不一致");</p><p><b> }</b></p><p><b> })</b></p><p><b> </s
55、cript></b></p><p> 4.4.2 頁面加載數(shù)據(jù)代碼</p><p> 頁面中加載數(shù)據(jù)的方式是通過EasyUI[9]中datagrid加載的,其可實(shí)現(xiàn)分頁P(yáng)agination的效果。</p><p> $(function () {</p><p> user.init();</p>&
56、lt;p><b> });</b></p><p> var user={</p><p> init:function(){</p><p> user.loaddata();</p><p><b> },</b></p><p> loaddata:f
57、unction(){</p><p> //jquery獲取頁面中對(duì)應(yīng)的參數(shù)值</p><p> var queryName = $("#queryName").val();</p><p> var queryCarName = $("#queryCarName").val();</p><p>
58、; var queryCarPriceMin = $("#queryCarPriceMin").val();</p><p> var queryCarPriceMax = $("#queryCarPriceMax").val();</p><p> var queryDateMin = $('#queryDateMin').d
59、atebox('getValue');</p><p> var queryDateMax = $('#queryDateMax').datebox('getValue');</p><p> //easyui框架中對(duì)應(yīng)的datagrid數(shù)據(jù)加載</p><p> $("#table-user"
60、;).datagrid({</p><p> url: '/user/queryAllUser',</p><p> toolbar:'#toolbar',</p><p> pagination:true,</p><p> rownumbers: true,</p><p>
61、 fitColumns:true,</p><p> singleSelect:true,</p><p> fit: true,</p><p> // toolbar:'toolbar',</p><p> queryParams:{</p><p> quer
62、yName:queryName,</p><p> queryCarName:queryCarName,</p><p> queryCarPriceMin:queryCarPriceMin,</p><p> queryCarPriceMax:queryCarPriceMax,</p><p> queryDateMin:query
63、DateMin,</p><p> queryDateMax:queryDateMax</p><p><b> },</b></p><p> columns: [</p><p><b> [</b></p><p> {filed: 'id',
64、 hidden: true},</p><p> {field: 'userName', title: '用戶名',width:100},</p><p> {field: 'carName', title: '車名', align: 'left',width:100},</p><p&
65、gt; {field: 'carPrice', title: '車價(jià)',width:100},</p><p> {field: 'userCell', title: '用戶電話',width:100},</p><p> {field: 'userAddress', title: '用戶地址
66、39;,width:100},</p><p> {field: 'carDate', title: '購車日期',width:100},</p><p> {field: 'op',title:'操作',width:100,formatter: function (value, rec) {</p><
67、;p> return'<a title="刪除" href="javascript:user.del(' + rec.id + ')" class="easyui-linkbutton l-btn l-btn-plain" iconcls="icon-remove" plain="true">&
68、lt;span class="l-btn-left"><span class="l-btn-text icon-remove l-btn-icon-left"></span></span></a>' +</p><p> '<a title="編輯" href="ja
69、vascript:user.updateDialog(' + rec.id + ')" class="easyui-linkbutton l-btn l-btn-plain" iconcls="icon-edit" plain="true"><span class="l-btn-left"><span cla
70、ss="l-btn-text icon-edit l-btn-icon-left"></span></span></a>';</p><p><b> }</b></p><p><b> }</b></p><p><b> ]<
71、/b></p><p><b> ]</b></p><p><b> });</b></p><p><b> }</b></p><p> 4.4.3 SpringMVC配置代碼</p><p> 配置中,涉及到了注解的配置,前臺(tái)展
72、示使用freemarker[10]渲染也需要在這里進(jìn)行配置,數(shù)據(jù)源的配置,連接數(shù)據(jù)庫使用的Mybatis也在這里進(jìn)行相應(yīng)的配置。</p><p> <beans xmlns="http://www.springframework.org/schema/beans"</p><p> xmlns:context="http://www.springfr
73、amework.org/schema/context"</p><p> xmlns:mvc="http://www.springframework.org/schema/mvc"</p><p> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"</p><
74、p> xmlns:aop="http://www.springframework.org/schema/aop"</p><p> xmlns:tx="http://www.springframework.org/schema/tx"</p><p> xsi:schemaLocation="http://www.springf
75、ramework.org/schema/beans</p><p> http://www.springframework.org/schema/beans/spring-beans-3.0.xsd</p><p> http://www.springframework.org/schema/context</p><p> http://www.spring
76、framework.org/schema/context/spring-context.xsd</p><p> http://www.springframework.org/schema/tx </p><p> http://www.springframework.org/schema/tx/spring-tx-3.0.xsd</p><p> http:
77、//www.springframework.org/schema/aop</p><p> http://www.springframework.org/schema/aop/spring-aop-3.0.xsd</p><p> http://www.springframework.org/schema/mvc</p><p> http://www.spr
78、ingframework.org/schema/mvc/spring-mvc-3.0.xsd"></p><p> <!-- aop support --></p><p> <mvc:annotation-driven/></p><p> <aop:aspectj-autoproxy/></p>
79、;<p> <!-- scan annotation beans : Controller, Service, Component, Repository...--></p><p> <context:component-scan base-package="com.stu.car.dao.**,com.stu.car.service.**,c
80、om.stu.car.controller.**"/></p><p> <!--靜態(tài)資源文件</p><p> <context:property-placeholder location="classpath:constant.properties"></context:property-placeholder>&l
81、t;/p><p><b> --></b></p><p> <!-- freemarker的配置 --></p><p> <bean id="freemarkerConfigurer" class="org.springframework.web.servlet.view.f
82、reemarker.FreeMarkerConfigurer"></p><p> <property name="templateLoaderPath" value=""/></p><p> <property name="defaultEncoding" value="UTF-
83、8"/></p><p> <property name="freemarkerSettings"></p><p><b> <props></b></p><p> <prop key="classic_compatible">true<
84、/prop></p><p> <prop key="template_update_delay">10</prop></p><p> <prop key="locale">zh_CN</prop></p><p> <prop key="datet
85、ime_format">yyyy-MM-dd HH:mm:ss</prop></p><p> <prop key="date_format">yyyy-MM-dd</prop></p><p> <prop key="number_format">#.##</prop>
86、</p><p><b> </props></b></p><p> </property></p><p><b> </bean></b></p><p> <!-- FreeMarker視圖解析 如返回userinfo。。在這里配置后綴名ft
87、l和視圖解析器。。 --></p><p> <bean id="viewResolver"</p><p> class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver"></p><p> <pro
88、perty name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"/></p><p> <property name="prefix" value="/WEB-INF/temp
89、late/"/></p><p> <property name="suffix" value=".ftl"/></p><p> <property name="contentType" value="text/html;charset=UTF-8"/></p
90、><p> <property name="exposeRequestAttributes" value="true"/></p><p> <property name="exposeSessionAttributes" value="true"/></p><p&
91、gt; <property name="exposeSpringMacroHelpers" value="true"/></p><p><b> </bean></b></p><p> <!-- database configuration --></p><p&
92、gt; <tx:annotation-driven transaction-manager="txManager"/></p><p> <bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">&
93、lt;/p><p> <property name="dataSource" ref="dataSource"/></p><p><b> </bean></b></p><p> <bean id="dataSource" class="o
94、rg.apache.commons.dbcp.BasicDataSource"></p><p> <property name="driverClassName" value="${jdbc.driver}"></property></p><p> <property name="url
95、" value="${jdbc.url}"></property></p><p> <property name="username" value="${jdbc.username}"></property></p><p> <property name="
96、;password" value="${jdbc.password}"></property></p><p> <property name="maxActive" value="100"></property></p><p> <property name=&qu
97、ot;maxIdle" value="30"></property></p><p> <property name="maxWait" value="500"></property></p><p> <property name="defaultAutoC
98、ommit" value="true"></property></p><p><b> </bean></b></p><p> <!--Configure SqlSessionFactoryBean.--></p><p> <bean id="s
99、qlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"></p><p> <property name="dataSource" ref="dataSource"/></p><p> <property name
100、="configLocation" value="classpath:mybatis.xml"/></p><p> <property name="mapperLocations" value="classpath*:com/stu/car/dao/**/*.xml"/></p><p>
101、<b> </bean></b></p><p> <bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate"></p><p> <constructor-arg index="0" ref=&q
102、uot;sqlSessionFactory"/></p><p><b> </bean></b></p><p> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"></p><p> <pro
103、perty name="basePackage" value="com.stu.car.dao.**"/></p><p> <property name="sqlSessionTemplateBeanName" value="sqlSession"/></p><p><b>
104、 </bean></b></p><p><b> </beans></b></p><p> 4.4.2 后臺(tái)數(shù)據(jù)庫部分代碼</p><p> 用戶表增刪改查的簡(jiǎn)單sql操作。</p><p> <?xml version="1.0" encodin
105、g="UTF-8"?></p><p> <!DOCTYPE mapper</p><p> PUBLIC "-//ibatis.apache.org//DTD Config 3.1//EN"</p><p> "http://mybatis.org/dtd/mybatis-3-mapper.dtd
106、"></p><p> <mapper namespace="com.stu.car.dao.user.UserMapper"></p><p> <insert id="addUser" parameterType="com.stu.car.domain.user.User"</p&g
107、t;<p> useGeneratedKeys="true" keyProperty="id"></p><p> <!--添加用戶代碼--></p><p> insert into car_user</p><p><b> (</b></p>&
108、lt;p> user_name,</p><p><b> user_sex,</b></p><p><b> user_age,</b></p><p><b> car_date,</b></p><p><b> car_name,</b
109、></p><p> car_price,</p><p> user_cell,</p><p><b> user_ID,</b></p><p> user_address,</p><p><b> comment</b></p><
110、;p><b> )</b></p><p><b> values</b></p><p><b> (</b></p><p> #{userName},</p><p> #{userSex},</p><p> #{userAge
111、},</p><p> #{carDate},</p><p> #{carName},</p><p> #{carPrice},</p><p> #{userCell},</p><p> #{userID},</p><p> #{userAddress},</p>
112、;<p> #{comment}</p><p><b> )</b></p><p><b> </insert></b></p><p> <!--選擇所有用戶代碼--></p><p> <select id="findAllUs
113、er" resultType="com.stu.car.domain.user.User" parameterType="com.stu.car.domain.user.UserQueryVO"></p><p><b> select </b></p><p><b> id AS id,<
114、/b></p><p> user_name AS userName,</p><p> user_sex AS userSex,</p><p> user_age AS userAge,</p><p> car_date AS carDate,</p><p> car_name AS carNa
115、me,</p><p> car_price AS carPrice,</p><p> user_cell AS userCell,</p><p> user_ID AS userID,</p><p> user_address AS userAddress,</p><p> comment AS c
116、omment</p><p><b> from </b></p><p><b> car_user</b></p><p><b> where 1=1</b></p><p> <if test="queryName != null and que
117、ryName != '' "></p><p> AND user_name = #{queryName} </p><p><b> </if></b></p><p> <if test="queryCarName != null and queryCarName !=
118、39;' "></p><p> AND car_name = #{queryCarName} </p><p><b> </if></b></p><p> <if test="queryCarPriceMin != null and queryCarPriceMax != 0&qu
119、ot;></p><p> AND car_price>=#{queryCarPriceMin} AND #{queryCarPriceMax} >= car_price</p><p><b> </if></b></p><p> <if test="queryDateMin != nu
120、ll and queryDateMin != '' "></p><p> AND car_date >= #{queryDateMin} AND #{queryDateMax} >= car_date</p><p><b> </if></b></p><p> limit #{
121、offset},#{rows}</p><p><b> </select></b></p><p> <!-- 根據(jù)id刪除用戶--></p><p> <delete id="deleteUserById" parameterType="int"></p
122、><p> delete from car_user</p><p> where id = #{id}</p><p><b> </delete></b></p><p> <!--更新用戶操作--></p><p> <update id="up
123、dateUserById" parameterType="com.stu.car.domain.user.User"></p><p> update car_user</p><p><b> set</b></p><p> user_name = #{userName},</p>&
124、lt;p> user_sex = #{userSex},</p><p> user_age = #{userAge},</p><p> car_date = #{carDate},</p><p> car_name = #{carName},</p><p> car_price = #{carPrice},</p
125、><p> user_cell = #{userCell},</p><p> user_ID = #{userID},</p><p> user_address = #{userAddress},</p><p> comment = #{comment}</p><p><b> where &l
126、t;/b></p><p> id = #{id}</p><p><b> </update></b></p><p><b> </mapper></b></p><p><b> 總結(jié)</b></p><p>
127、 通過這次設(shè)計(jì),使我重新的審視了這一學(xué)科的全部?jī)?nèi)容,并且得到了很好的利用。在此過程中也鍛煉了我的意志,讓我在以后的學(xué)習(xí)、生活中更有堅(jiān)持不懈的精神去面對(duì)各種困難與挑戰(zhàn)。同時(shí),也使自己在軟件應(yīng)用方面有了很大的提高,爭(zhēng)取在以后的學(xué)習(xí)工作中,能在各方面都有更大的進(jìn)步。通過這次的畢業(yè)設(shè)計(jì)過程,我有幾點(diǎn)體會(huì),陳述如下:</p><p><b> 1.注意經(jīng)??偨Y(jié)</b></p><
128、;p> 模塊的開發(fā)過程中,經(jīng)常會(huì)碰到一些小問題或一些書本上涉及不到的思想,這些東西要注意經(jīng)??偨Y(jié)下來,作為自己編程過程中的經(jīng)驗(yàn),量變會(huì)導(dǎo)致質(zhì)變,經(jīng)??偨Y(jié),大量經(jīng)驗(yàn)的堆積、吸收都將會(huì)對(duì)自己編程水平的提高有極大的好處。</p><p> 2.編碼的規(guī)范性非常重要</p><p> 無論多么小的程序,都一定要注意格式規(guī)范,這是成為一個(gè)好的程序員所必需養(yǎng)成的習(xí)慣。只有這樣,程序的查錯(cuò)工
129、作才更簡(jiǎn)單更有效,代碼的可讀性才更大。最初的幾個(gè)頁面我沒有注意這樣的問題,有的地方不很規(guī)范,當(dāng)出現(xiàn)問題的時(shí)候,查起來非常繁瑣,后來我將這幾個(gè)頁面重寫,并在以后的編碼中充分注意了規(guī)范的問題,大大減少了用于檢查錯(cuò)誤的不必要時(shí)間。</p><p> 我希望,通過這次畢業(yè)設(shè)計(jì)的體會(huì),能夠使我在開發(fā)汽車銷售管理系統(tǒng)水平上更進(jìn)一步,在思維上更富有邏輯性,在處事上更嚴(yán)謹(jǐn),在面對(duì)錯(cuò)誤或失誤時(shí)更冷靜,將自己的人生看作是一次教學(xué)系
130、統(tǒng)的開發(fā)過程,不斷的對(duì)自己進(jìn)行需求分析和設(shè)計(jì),編寫自己以后的生活,由于知識(shí)水平有限,所以該系統(tǒng)還有許多不盡如人意的地方,望提出寶貴意見!</p><p><b> 參考文獻(xiàn)</b></p><p> 1. 李剛,《瘋狂Java講義》.北京:電子工業(yè)出版社,2012</p><p> 2. http://baike.so.com/doc/2
131、303745.html</p><p> 3.http://www.javascriptsource.com/</p><p> 4. http://spring.io/threading problems,2008</p><p> 5. 張孝祥.深入Java Web 開發(fā)內(nèi)幕--核心基礎(chǔ)[M].北京:電子工業(yè)出版社</p><p>
132、 6. Bruce Eckel. Thinking in Java[M]. Upper Saddle River, New Jersey, USA:Prentice Hall,2006</p><p> 7. Joshua Bloch. Effective Java[M]. Piscataway,N.J:IEEE Press,2009</p><p> 8. http://api.j
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 軟件工程畢業(yè)論文-汽車銷售與管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)—客戶管理模塊
- 軟件工程畢業(yè)論文-汽車銷售管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-銷售管理模塊
- 軟件工程畢業(yè)論文-汽車銷售與管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)—銷售管理模塊
- 軟件工程畢業(yè)論文-汽車銷售管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)——車輛管理模塊
- 軟件工程畢業(yè)論文-汽車銷售系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-庫存管理模塊
- 軟件工程畢業(yè)論文-汽車銷售系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-車輛管理模塊
- 軟件工程畢業(yè)論文-小型糧店管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)---銷售管理
- 軟件工程畢業(yè)論文-植物信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)——管理模塊
- 軟件工程畢業(yè)論文-植物管理信息系統(tǒng)-管理模塊的設(shè)計(jì)與實(shí)現(xiàn)
- 汽車銷售管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)--客戶管理模塊
- 軟件工程畢業(yè)論文-蛋雞養(yǎng)殖管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-疾病診治模塊
- 軟件工程畢業(yè)論文服裝銷售系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 軟件工程畢業(yè)論文-庫存管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 軟件工程畢業(yè)論文-小區(qū)物業(yè)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)----治安模塊
- 軟件工程畢業(yè)論文-學(xué)生管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 軟件工程畢業(yè)論文-駕校管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 軟件工程畢業(yè)論文-中小企業(yè)客戶管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 軟件工程畢業(yè)論文-高校教學(xué)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-網(wǎng)上答疑管理模塊
- 軟件工程畢業(yè)論文-人事工資管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)—人事模塊
- 軟件工程畢業(yè)論文-人事工資管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)—工資模塊
評(píng)論
0/150
提交評(píng)論