畢業(yè)論文-自行車出租售賣管理系統(tǒng)的設(shè)計與實現(xiàn)_第1頁
畢業(yè)論文-自行車出租售賣管理系統(tǒng)的設(shè)計與實現(xiàn)_第2頁
畢業(yè)論文-自行車出租售賣管理系統(tǒng)的設(shè)計與實現(xiàn)_第3頁
畢業(yè)論文-自行車出租售賣管理系統(tǒng)的設(shè)計與實現(xiàn)_第4頁
畢業(yè)論文-自行車出租售賣管理系統(tǒng)的設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、鹽城師范學(xué)院畢業(yè)設(shè)計畢業(yè)設(shè)計 自行車出租售賣管理系統(tǒng)的設(shè)計與實現(xiàn)學(xué)生姓名 學(xué) 院 專 業(yè) 班 級 學(xué) 號 指導(dǎo)教師 2016年5月27日自行車出租售賣管理系統(tǒng)的設(shè)計與實現(xiàn)摘 要工業(yè)化帶來嚴重的環(huán)境污染問題,讓人們最終認識到必須在發(fā)展的同時保護好環(huán)境。所以環(huán)保、低碳的風(fēng)尚逐漸興起,加上國外的騎行文化進入國內(nèi),越來越多的人騎自行車通勤、游玩,自行車出租產(chǎn)業(yè)也隨之發(fā)展。我們也需要使用便攜高效的信息化手段來完成對自行車的管理,跟上產(chǎn)業(yè)發(fā)展的步伐。 本設(shè)計的內(nèi)容正是使用web技術(shù)設(shè)計開發(fā)了一個自行車出租的信息化管理系統(tǒng),能夠有效地實現(xiàn)對自行車出租情況的管理。整體界面清新簡單,便于上手,使用本系統(tǒng)能方便地

2、在網(wǎng)上預(yù)訂車輛,享受騎行的樂趣?!娟P(guān)鍵詞】 自行車租借;MySQL;J2EEBicycle rental sale management system Design and ImplementationAbstractThe environment is seriously polluted because of the industrialization development,so people finally realized that it is necessary to protect the environment at the same time.So environmental

3、 protection, low carbon fashion gradually rise.Coupled with the culture of riding abroad to enter the country, more and more people ride bicycles to commute, play,The Bicycle rental industry is also developing. To keep up with the pace of the development of the industry, we need to try some efficien

4、t and convenient ways to manager bicycles which are rent or sold.The contents of this design has developed a bicycle rental and sale system that can help us know the status of the bicycles when they are rent or sold. The whole page is elegant, convenient for people to use, when you use this system y

5、ou can book bicycle, enjoy your cycling time.Key words BicycleRental; MySQL;J2EE目 錄TOC o 1-3 h u HYPERLINK l _Toc387 1 課題概述 圖4-1系統(tǒng)流程圖4.1.3系統(tǒng)總體結(jié)構(gòu)圖本系統(tǒng)包括五種基本角色:經(jīng)理、客戶、游客、工作人員、技術(shù)人員,系統(tǒng)的總體結(jié)構(gòu)如圖4-2所示。自行車租借管理系統(tǒng)自行車租借管理系統(tǒng)游客客戶經(jīng)理工作人員技術(shù)人員查詢確認列表確認車輛完好人員管理車輛管理財務(wù)分析車輛租借管理客戶信息查詢留言管理留言處理預(yù)定信息注冊登錄瀏覽車輛預(yù)定車輛查看記錄圖4-2自行車租借管理系統(tǒng)

6、結(jié)構(gòu)圖4.2數(shù)據(jù)庫設(shè)計優(yōu)異的數(shù)據(jù)庫可為指定的應(yīng)用環(huán)境搭建最優(yōu)的模式,使其能有效存儲數(shù)據(jù),滿足應(yīng)用要求。我們需要仔細分析數(shù)據(jù)表,對數(shù)據(jù)庫結(jié)構(gòu)進行優(yōu)化設(shè)計。4.2.1數(shù)據(jù)庫需求分析通過對系統(tǒng)的需求分析,本系統(tǒng)共需設(shè)計7張表,分別為:車輛信息表、用戶信息表、預(yù)訂信息表、租車記錄表、留言表、日統(tǒng)計表、月統(tǒng)計表。4.2.2數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計依照需求分析,對數(shù)據(jù)庫進行邏輯設(shè)計,各表詳情如下:(1)車輛信息表,表中存放:車輛的信息,具體見下表4-1:表4-1 車輛信息記錄表字段名類型字段備注表主鍵可以為空IDint主鍵IDTFBEIZHUtext備注FTCHEJIAvarchar車價FTCHEJIAHAOv

7、archar車身編號FTCHEPAIvarchar車牌號FTDELETESTATUSint(11)刪除狀態(tài)記錄FFPINPAIvarchar品牌FTSHIJIANvarchar添加時間FTTOTALZdouble車輛租金總計FTTUPIANvarchar車輛圖片F(xiàn)TWEIHUdouble總維護費FTXINGHAOvarchar型號FTXSZvarchar實際圖片F(xiàn)TYANSEvarchar顏色FTZHUANGTAIvarchar狀態(tài)FTZUJINvarchar租金FT(2)用戶表,表中存放:用戶的數(shù)據(jù),具體見下表4-2:表4-2 用戶記錄表字段名類型字段備注表主鍵可以為空IDint主鍵TFCR

8、EATETIMEDate添加時間FF續(xù)表4-2DELETESTATUSint刪除狀態(tài)記錄FFDIANHUAvarchar電話FTPASSWORDvarchar密碼FTROLEint類型FFUSERNAMEvarchar用戶名FTXINGMINGvarchar姓名FT(3)預(yù)定表,表中存放:預(yù)定信息,具體見下表4-3:表4-3 預(yù)定記錄表字段名類型字段備注表主鍵可以為空IDint主鍵TFBEIZHUtext備注FTDELETESTATUSint刪除狀態(tài)記錄FFDIANHUAvarchar聯(lián)系電話FTJSZvarchar個人信息表FTSFZvarchar身份證號碼FTSFZ2varchar身份證復(fù)

9、印件FTSHIJIAN1varchar預(yù)定時間FTSHIJIAN2varchar處理時間FTXINGMINGvarchar客戶姓名FTZHUANGTAIvarchar狀態(tài)FTCARIDint車輛信息FTKEHUIDint預(yù)訂客戶FTWORKIDint經(jīng)辦工作人員FT(4)租車記錄表,表中存放:租借信息,具體見下表4-4:表4-4 租車記錄表字段名類型字段備注表主鍵可以為空IDint主鍵TFBEIZHUtext備注FTDELETESTATUSint刪除狀態(tài)記錄FFDIANHUAvarchar聯(lián)系電話FTJSZvarchar駕駛證復(fù)印件FTSFZvarchar身份證號碼FTSFZ2varchar身

10、份證復(fù)印件FTSHIJIAN1varchar已租時間FT續(xù)表4-4SHIJIAN2varchar還車時間FTTIANSHUvarchar已租天數(shù)FT(5)留言表,表中存放:留言內(nèi)容,留言用戶等信息,具體見下表4-5:表4-5 留言記錄表字段名類型字段備注表主鍵可以為空IDint主鍵TFDELETESTATUSint刪除狀態(tài)記錄FFHUIFUtext回復(fù)內(nèi)容FTNEIRONGtext留言內(nèi)容FTSHIJIAN1varchar留言時間FTSHIJIAN2varchar回復(fù)時間FTTITLEvarchar留言標(biāo)題FTZHUANGTAIvarchar回復(fù)狀態(tài)FTKEHUIDint留言客戶FTWORKI

11、Dint回答的工作人員FT(6)日統(tǒng)計表 ,表中存放:每日收入,具體見下表4-6:表4-6 日統(tǒng)計記錄表字段名類型字段備注表主鍵可以為空IDint主鍵TFDELETESTATUSint刪除狀態(tài)記錄FFJINEdouble金額FTRIQIvarchar日期FTWEIHUdouble維護費FT(7)月統(tǒng)計表,表中存放:每個月的收入記錄,具體見下表4-7:表4-7 月統(tǒng)計記錄表字段名類型字段備注表主鍵可以為空IDint(11)主鍵TFDELETESTATUSint(11)刪除狀態(tài)記錄FFJINEdouble金額FTMONTHvarchar日期FTWEIHUdouble維護費FT5 系統(tǒng)具體實現(xiàn)5.1

12、系統(tǒng)概要設(shè)計整個系統(tǒng)共分兩大模塊:網(wǎng)站界面、后臺管理。租借網(wǎng)站用于給游客瀏覽內(nèi)容,查看系統(tǒng)提供的服務(wù)。如有需求需要租車,則需要注冊后成為會員,然后會有租借車輛、發(fā)表留言的權(quán)限。管理系統(tǒng)是三種角色(經(jīng)理,工作人員,技術(shù)人員)共同使用,不同的角色顯示的內(nèi)容不一樣,功能也不同。登錄時判斷身份進入不同的界面,執(zhí)行不同的操作。5.2系統(tǒng)結(jié)構(gòu)整體結(jié)構(gòu)如圖5-1所示,其中zulin是項目名稱。在src包下有業(yè)務(wù)邏輯類,數(shù)據(jù)訪問映射文件,控制器和實體類等,其中的action包里是控制器,用來處理請求,dao包是業(yè)務(wù)處理操作,具體實現(xiàn)是調(diào)用存放在impl包下的方法,model包存放的是實體類,util包下存放的

13、是有標(biāo)準(zhǔn)列表分頁類等。WebRoot下有JSP、JS、CSS、圖片等文件和目錄, web.xml為配置文件。圖5-1 系統(tǒng)包圖5.3系統(tǒng)的實現(xiàn)5.3.1網(wǎng)站首頁實現(xiàn)(1)地址欄輸入網(wǎng)址后,顯示主頁面,主頁面的數(shù)據(jù)需要從數(shù)據(jù)庫中獲取,實現(xiàn)的方式有多種:(a)先配置訪問一個臨時空白頁面,空白頁面發(fā)送請求,請求里查詢數(shù)據(jù)跳轉(zhuǎn)到主頁顯示。(b)直接配置xml文件直接通過請求獲取數(shù)據(jù)跳轉(zhuǎn)首頁。(c)頁面執(zhí)行onload方法,發(fā)送請求,處理后跳轉(zhuǎn)到頁面本身。本系統(tǒng)利用Ajax方法獲取數(shù)據(jù),頁面效果如圖5-2所示:圖5-2 網(wǎng)站首頁圖(2)配置文件web.xml中配置,默認地址欄輸入localhost/zu

14、lin就訪問到protal.jsp頁面。protal.jsp(3)請求跳轉(zhuǎn)的實現(xiàn)方法Protal.jsp中頁面一加載就執(zhí)行ajax方法發(fā)送一個action請求至后臺,用于查詢出主頁所需要顯示的信息:$.ajax(type:get,url:method!index,dataType:html,data:,Controller層中相對應(yīng)的請求中,具體的處理是調(diào)用carDao的selectBeanList方法進行數(shù)據(jù)的查詢操作,查詢出首頁展示的數(shù)據(jù):public String index() throws IOException, ServletExceptionHttpServletRequest

15、 request = ServletActionContext.getRequest();HttpServletResponse response = ServletActionContext.getResponse();response.setCharacterEncoding(UTF-8);response.setContentType(text/html;charset=utf-8);Util.init(request);List carlist = carDao.selectBeanList(0, 4, where zhuangtai = 正常 and deletestatus=0 o

16、rder by shijian desc);carDao中使用的方法是由spring所配置的hibernate的操作對象實現(xiàn)的對數(shù)據(jù)的查詢操作,有了hibernate可以很快速地實現(xiàn)具體的操作。public List selectBeanList(final int start,final int limit,final String where) return (List)this.getHibernateTemplate().executeFind(new HibernateCallback() public Object doInHibernate(final Session sessi

17、on)throws HibernateException, SQLException List list = session.createQuery(from Car +where).setFirstResult(start).setMaxResults(limit).list();return list;);返回的數(shù)據(jù)在protal頁面,再利用Ajax方法來動態(tài)改變頁面上的內(nèi)容顯示數(shù)據(jù):success: function(date) var pinpai = date.split(+)0;/獲取車輛品牌var tupian = date.split(+)1;/獲取車輛圖片var xingha

18、o = date.split(+)2;/獲取車輛型號var yanse = date.split(+)3;/獲取車輛顏色var id = date.split(+)4;/獲取車輛id var car_tupian_html =img src=uploadfile/+tupian+ alt=;var car_html=品牌:+pinpai+型號:+xinghao+顏色:+yanse+了解更多;5.3.2網(wǎng)站車輛詳情頁實現(xiàn)(1)頁面效果圖用戶可以查看車輛詳情,選擇預(yù)定車輛。頁面效果如圖5-3所示:圖5-3 車輛詳情圖(2)信息查詢實現(xiàn)過程首頁車輛點擊圖片,就會發(fā)送一個action請求并將參數(shù)id帶

19、入到controller層進行處理: img src=uploadfile/+tupian+ alt=Controller層接收傳遞的id參數(shù),調(diào)用carDao的selectBeanList方法查詢出該條記錄的所有信息,放入request中,并跳轉(zhuǎn)至車輛詳情頁面:/進入車輛詳細選擇頁面public String showCarList()HttpServletRequest request = ServletActionContext.getRequest();String chepai = request.getParameter(chepai);StringBuffer sb = new

20、StringBuffer();sb.append( where );if (chepai != null & !.equals(chepai) sb.append(chepai like % + chepai + %);sb.append( and );request.setAttribute(chepai, chepai);Jsp頁面用el表達式接受request中的數(shù)據(jù),顯示在頁面上:車牌號:$bean.chepai 車身編號:$bean.chejiahao 品牌:$bean.pinpai 型號:$bean.xinghao 車價:¥$bean.chejia 租金(按天計算):¥$bean.

21、zujin 顏色:$bean.yanse 5.3.3管理員登錄的實現(xiàn)(1)頁面效果圖登錄界面,會根據(jù)輸入的用戶名來識別用戶身份,進入不同的頁面,頁面效果如圖5-4所示:圖5-4 系統(tǒng)登錄圖(2)身份的識別和驗證的實現(xiàn)方法登錄界面用戶名輸入框綁定js的blur事件,當(dāng)用戶名輸入完成,光標(biāo)離開后調(diào)用ajax方法,發(fā)送請求至后臺,同時傳入?yún)?shù)(輸入的用戶名的值)。$(#name).blur( function()$.ajax(type:post,url:method!checktologin,dataType:html,data:userName=+$(#name).val(), success:

22、function(date) $(select optionvalue=+date+).attr(selected, true);,Action請求中接收前臺傳來的參數(shù)(用戶名)并調(diào)用Dao的查詢方法,如果查詢結(jié)果不為0,就將用戶的角色返回至jsp頁面。/檢查用戶是否存在public void checktologin() throws IOExceptionHttpServletRequest request = ServletActionContext.getRequest();HttpServletResponse response = ServletActionContext.getR

23、esponse();String username = request.getParameter(userName);User user = userDao.selectBean(where username = +username+ and deletestatus=0 );PrintWriter out;out = response.getWriter();if(user.getRole()!=0)out.print(user.getRole();out.flush();out.close();return;返回成功:ajax接收返回的date值,然后動態(tài)改變角色下拉框的值。如果返回失?。?/p>

24、彈出提示賬戶不存在,同時清空用戶名,將光標(biāo)重新定位到輸入框上。success: function(date) $(select optionvalue=+date+).attr(selected, true); , error:function() alert(該用戶不存在,請注冊); $(#name).val(); $(#name).focus(); 5.3.4車輛信息列表的實現(xiàn)(1)頁面效果圖顯示所有車輛的信息,在這個界面可以清晰地顯示車的狀態(tài),讓管理的人看到所有車的狀態(tài),頁面效果如圖5-5所示:圖5-5 車輛管理圖(2)車輛列表的實現(xiàn)方法頁面上的輸入框里,按照輸入框里的提示,輸入對應(yīng)的內(nèi)

25、容,點擊查詢。 查詢后臺接收從頁面輸入的數(shù)據(jù),作為條件參加查詢。String chepai = request.getParameter(chepai);String chejiahao = request.getParameter(chejiahao);具體的查詢操作,是在Controller對應(yīng)的請求方法里調(diào)用Dao的方法查到對應(yīng)的記錄。最后將數(shù)據(jù)放到頁面上顯示。/車輛信息列表public String carlist() HttpServletRequest request = ServletActionContext.getRequest();String chepai = reque

26、st.getParameter(chepai);String chejiahao = request.getParameter(chejiahao);StringBuffer sb = new StringBuffer(); request.setAttribute(url, method!carlist);request.setAttribute(url2, method!car);request.setAttribute(biaoti, 車輛信息管理);this.setUrl(Mybike/car/carlist.jsp);return SUCCESS;5.3.5車輛信息修改的實現(xiàn)(1)頁

27、面效果圖修改車輛的信息,修改的頁面能看到修改之前的各項信息,頁面效果如圖5-6所示:圖5-6 車輛修改圖(2)車輛修改的實現(xiàn)方法列表頁點擊對應(yīng)記錄后面的修改按鈕,會發(fā)送請求到后臺。 修改對請求進行操作,將對應(yīng)記錄查到放到頁面上顯示。/跳轉(zhuǎn)到更新車輛信息頁面public String carupdate() HttpServletRequest request = ServletActionContext.getRequest();Car bean = carDao.selectBean( where id= + request.getParameter(id);request.setAttri

28、bute(bean, bean);request.setAttribute(url, method!carupdate2?id=+bean.getId();request.setAttribute(biaoti, 車輛信息更新);this.setUrl(Mybike/car/carupdate.jsp);return SUCCESS;在頁面修改內(nèi)容后,同樣有請求到后臺,將新數(shù)據(jù)更新到數(shù)據(jù)庫中。6系統(tǒng)功能測試6.1系統(tǒng)測試簡述測試主要目的是驗證和確認已完成系統(tǒng)的各項功能。本節(jié)選取有代表性的幾個模塊測試。6.2測試用例與結(jié)果表6-1 用戶登錄測試項登錄測試模塊登錄模塊操作過程打開系統(tǒng)主頁,選擇登錄

29、;按照顯示項依次輸入123456選擇登錄;預(yù)期結(jié)果用錄成功實際結(jié)果用錄成功表6-2 注冊測試測試項注冊測試模塊注冊模塊操作過程1.打開系統(tǒng)主頁,選擇注冊;2.按照提示依次輸入用戶名密碼:123456、真實姓名:sa、電話號碼:134190234563.選擇確認;4.返回主頁,使用剛注冊時填寫的信息,重新登錄;預(yù)期結(jié)果用冊成功實際結(jié)果用冊成功表6-3 添加車輛

30、測試測試項添加車輛測試模塊車輛管理模塊操作過程打開系統(tǒng)主頁,登錄為管理員;進入車輛管理頁面;選擇添加按鈕,添加新的車輛信息;預(yù)期結(jié)果該車輛添加成功實際結(jié)果該車輛添加成功7開發(fā)總結(jié)基于SSH框架完成了小型的自行車租借系統(tǒng)的設(shè)計與實現(xiàn)。在代碼編寫過程中也遇到過很多問題,在同學(xué)和老師的幫助下得到了解決。經(jīng)理的首頁會有幾個模塊分別展示庫存數(shù)量,注冊數(shù)量,還有昨日收入。在寫controller層查詢昨日收入時,創(chuàng)建了日期對象,從中獲取了當(dāng)前的年、月、日。因為開發(fā)時的月份是單數(shù),所以測試數(shù)據(jù)的時候并沒發(fā)現(xiàn)什么問題。后來在首頁做好顯示后統(tǒng)計數(shù)據(jù)庫里數(shù)據(jù)時,突然發(fā)現(xiàn)和做的假數(shù)據(jù)對不上,在后臺打印出來發(fā)現(xiàn),從日

31、期對象中取得的月需要加1才是當(dāng)前月份。網(wǎng)站首頁獲取數(shù)據(jù)的實現(xiàn),開始是采用空白頁發(fā)送請求到后臺處理查詢返回首頁的方式,但是一直不能正常跳轉(zhuǎn)。最后在同學(xué)的建議下改用Ajax方式,頁面初始化發(fā)送請求查詢出值得同時再跳回頁面本身,再動態(tài)改寫頁面上的內(nèi)容。寫的過程中發(fā)現(xiàn)Ajax方法接收后臺傳來的值怎么判斷其長度都是不對,通過后臺打印顯示是查到了數(shù)據(jù)的,為了解決,就先直接頁面彈出結(jié)果集,才發(fā)現(xiàn)是后臺輸出亂碼,沒有指定結(jié)果集。其他的Java代碼編寫過程中常犯的錯誤也遇到過,空指針,下標(biāo)越界等等,都在慢慢排查中得到解決。通過這次設(shè)計也復(fù)習(xí)了很多關(guān)于基礎(chǔ)的知識。整個系統(tǒng)的頁面是采用了Bootstrap3靜態(tài)框架

32、,因為是國外的框架,全英文的內(nèi)容,花了半天翻譯了一下才對整體的遷移方式有所了解,將自己的項目展示頁面換成符合框架規(guī)范的樣式。這對我學(xué)習(xí)整體項目的開發(fā)方式有了深入了解。通過對畢業(yè)設(shè)計的開發(fā)工作,綜合運用了所學(xué)知識,對整個軟件系統(tǒng)的架構(gòu)有了自己的理解,公司實習(xí)的時候,公司也是做大型管理軟件的,但它的框架是自己封裝的,由于是負責(zé)模塊的開發(fā),一直沒能理解整體的架構(gòu)。但有了自己完成整個小型系統(tǒng)的過程。頓時發(fā)現(xiàn)無論是開源的框架還是內(nèi)部封裝的都是經(jīng)典的MVC設(shè)計模式,有了這個框架,我們所做的事不過是編寫業(yè)務(wù)邏輯代碼,傳值到頁面,這極大地提升了開發(fā)效率。參考文獻1 JavaScript 從入門到精通M. 清華大學(xué)出版社, 2012.2 孫佳帝, 孫凌玲, 劉洋. We

溫馨提示

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

評論

0/150

提交評論