版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 軟件工程課程設(shè)計(jì)報(bào)告</p><p> 班級(jí):軟件xxx </p><p> 姓名:xxx </p><p> 學(xué)號(hào):xx4 </p><p> 指導(dǎo)教師:</p><p><b> 目 錄&
2、lt;/b></p><p><b> 1設(shè)計(jì)內(nèi)容1</b></p><p><b> 2概要設(shè)計(jì)1</b></p><p> 2.1數(shù)據(jù)庫(kù)設(shè)計(jì)1</p><p> 2.1.1數(shù)據(jù)庫(kù)E-R圖1</p><p><b> 2.1.21<
3、/b></p><p> 2.1.3數(shù)據(jù)庫(kù)表設(shè)計(jì)2</p><p> 2.2邏輯結(jié)構(gòu)設(shè)計(jì)2</p><p> 2.2.1酒店管理系統(tǒng)數(shù)據(jù)流圖2</p><p> 2.2.2數(shù)據(jù)字典3</p><p><b> 3詳細(xì)設(shè)計(jì)4</b></p><p>
4、<b> 4程序源碼5</b></p><p><b> 4.1客房申請(qǐng)5</b></p><p><b> 4.2退房申請(qǐng)6</b></p><p><b> 4.3查看9</b></p><p> 5程序運(yùn)行與調(diào)試9</p&g
5、t;<p> 5.1酒店入住頁(yè)面9</p><p><b> 5.2退房10</b></p><p><b> 5.3查詢10</b></p><p><b> 6總結(jié)11</b></p><p><b> 參考文獻(xiàn)12</b&
6、gt;</p><p><b> 成績(jī)?cè)u(píng)定12</b></p><p><b> 1設(shè)計(jì)內(nèi)容</b></p><p> 酒店管理系統(tǒng):實(shí)現(xiàn)住房,退房,住房人數(shù)統(tǒng)計(jì)等功能</p><p><b> 2概要設(shè)計(jì)</b></p><p><b&
7、gt; 2.1數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p> 2.1.1數(shù)據(jù)庫(kù)E-R圖</p><p><b> 圖2-1 E-R</b></p><p><b> 2.1.2</b></p><p> 住戶(序號(hào),姓名,性別,身份證號(hào))</p><p> 房間
8、(房號(hào),類型,人數(shù))</p><p><b> 所?。ㄐ蛱?hào),房號(hào))</b></p><p> 2.1.3數(shù)據(jù)庫(kù)表設(shè)計(jì)</p><p> 表2-1 住戶-person</p><p> 表2-2 房間-room</p><p> 表2-3 所住-relax</p><p
9、><b> 2.2邏輯結(jié)構(gòu)設(shè)計(jì)</b></p><p> 2.2.1酒店管理系統(tǒng)數(shù)據(jù)流圖</p><p><b> 圖2-2 數(shù)據(jù)流圖</b></p><p><b> 2.2.2數(shù)據(jù)字典</b></p><p><b> 圖2-3</b>
10、</p><p><b> 圖2-4</b></p><p><b> 圖2-5</b></p><p><b> 圖2-6</b></p><p><b> 3詳細(xì)設(shè)計(jì)</b></p><p> 3.1酒店管理系統(tǒng)程序流
11、程圖</p><p> 圖3-1 酒店管理系統(tǒng)程序流程圖</p><p><b> 4程序源碼</b></p><p><b> 4.1客房申請(qǐng)</b></p><p> 主要思想:輸入身份證號(hào),查看房間的剩余,進(jìn)行入住</p><p> request.setCh
12、aracterEncoding("utf-8");</p><p> ServletContext application = getServletContext();</p><p> String leixing= (String) application.getAttribute("leixing");</p><p&g
13、t; String roomno = (String) application.getAttribute("roomno");</p><p> DataSource ds = null;</p><p> Context context;</p><p> try {context = new InitialContext();<
14、/p><p> ds = (DataSource) context.lookup("java:/comp/env/jdbc/mysqlds");</p><p> } catch (NamingException e) {</p><p> e.printStackTrace();</p><p> System.ou
15、t.println("獲取數(shù)據(jù)源錯(cuò)誤!");</p><p><b> }</b></p><p> try {String sql = "select * from room where statue=? and roomno=?";</p><p> QueryRunner run = new
16、 QueryRunner(ds);</p><p> String str[]={leixing,roomno};</p><p> List list=(List) run.query(sql,str,new BeanListHandler(room.class));</p><p> if(list.isEmpty()){</p><p
17、> request.getRequestDispatcher("/servlet/insertroom").forward(request,response);}</p><p> else{ServletContext application1= getServletContext(); </p><p> application1.setAttribu
18、te("roomno",roomno);</p><p> application1.setAttribute("leixing",leixing);</p><p> RequestDispatcher rs=request.getRequestDispatcher("/servlet/insertroom");</p
19、><p> try{rs.forward(request,response);</p><p><b> return;</b></p><p> }catch (Exception e){}}</p><p> } catch (SQLException e) {e.printStackTrace();}</
20、p><p> try {String sql="select clientname,sex,shenfenzheng,roomnumber from client where yuding='1'";QueryRunner run = new QueryRunner(ds);</p><p> List list = (List) run.query(s
21、ql, new BeanListHandler(dbcommen.class));</p><p> request.setAttribute("list",list);request.getRequestDispatcher("/main/yudingruzhu.jsp").forward(request,response);}catch(SQLException e)
22、 {e.printStackTrace();}</p><p><b> 4.2退房申請(qǐng)</b></p><p> 客戶退房模塊設(shè)計(jì)是:輸入房間號(hào)后查詢客戶信息及消費(fèi)情況;在輸出之前首先要預(yù)先查詢房間號(hào)是否有人入住,再修改數(shù)據(jù)庫(kù)信息,最后顯示客戶的信息及消費(fèi)情況。</p><p> 退房設(shè)計(jì)思想為:當(dāng)輸入房間號(hào)后到trueroom2控制塊
23、中查詢?cè)摲块g是否已經(jīng)入住,到滿足條件時(shí),到insertroom對(duì)數(shù)據(jù)庫(kù)插入退房時(shí)間,然后再到getall控制塊查詢:客戶信息,房間入住,退房時(shí)間以及客戶消費(fèi)信息。最后到all.Jsp頁(yè)面顯示所有信息。然后結(jié)賬,退房。</p><p> request.setCharacterEncoding("utf-8");</p><p> String roomno = re
24、quest.getParameter("roomno");</p><p> String leixing= request.getParameter("leixing");</p><p> try {String sql = "select * from room where statue=? and roomno=?"
25、;;</p><p> QueryRunner run = new QueryRunner(ds);</p><p> String str[] = { leixing, roomno };</p><p> List list = (List)run.query(sql, str, new BeanListHandler(</p><p&
26、gt; room.class));</p><p> ServletContext application1 = getServletContext();</p><p> application1.setAttribute("roomno", roomno);</p><p> application1.setAttribute(&qu
27、ot;leixing", leixing);</p><p> RequestDispatcher rs = request.getRequestDispatcher("/servlet/insertroom");</p><p> try {rs.forward(request, response);return;</p><p>
28、; } catch (Exception e) {}}</p><p> } catch (SQLException e) {e.printStackTrace();}</p><p> Insertroom的實(shí)現(xiàn)如下:</p><p> request.setCharacterEncoding("utf-8");</p>
29、<p> ServletContext application = getServletContext();</p><p> String leixing = (String) application.getAttribute("leixing");</p><p> String roomno= (String) application.getAtt
30、ribute("roomno");</p><p> System.out.println(roomno);</p><p> System.out.println(leixing);</p><p> int i=Integer.parseInt(leixing);</p><p> int result = 0
31、;</p><p> String message = null;</p><p> String sql=null;</p><p><b> try {</b></p><p> switch(i){</p><p> case 0:sql="update room set
32、 statue=1 where roomno=?";break;</p><p> case 1:sql="update room set statue=2,startdate=now() where roomno=?";break;</p><p> case 2:sql="update room set enddate=now() where
33、 roomno=?";break;</p><p><b> }</b></p><p> String sr[] = {roomno};</p><p> QueryRunner run = new QueryRunner(ds);</p><p> result = run.update(sql,
34、sr);</p><p><b> if(i==1){</b></p><p> sql="update client set yuding=2 where roomnumber=?";</p><p> QueryRunner run1 = new QueryRunner(ds);</p><p&
35、gt; run1.update(sql, sr);</p><p><b> }</b></p><p> if(i==2){ServletContext application1 = getServletContext();</p><p> application1.setAttribute("roomno",
36、roomno);</p><p> RequestDispatcher rs = request.getRequestDispatcher("/servlet/seachall");</p><p><b> try {</b></p><p> rs.forward(request, response);</p
37、><p><b> return;</b></p><p> } catch (Exception e) {</p><p><b> }}</b></p><p> else{if (result == 1) {</p><p> message = "操作
38、成功!";</p><p><b> } else {</b></p><p> message = "操作失敗!";</p><p><b> }</b></p><p> request.setAttribute("message", m
39、essage);</p><p> request.getRequestDispatcher("/addResult.jsp").forward(request,</p><p> response);}</p><p> } catch (SQLException e) {</p><p> e.printSta
40、ckTrace();</p><p><b> }</b></p><p><b> }</b></p><p> Seachall的實(shí)現(xiàn)如下:</p><p> request.setCharacterEncoding("utf-8");</p><
41、p> ServletContext application = getServletContext();</p><p> String roomno = (String) application.getAttribute("roomno");</p><p> String consumerno = "123456";</p>
42、;<p> DataSource ds = null;</p><p> String sql = null;</p><p> try {sql = "select clientname,sex,shenfenzheng from client where yuding=2 and roomnumber=?";</p><p&g
43、t; QueryRunner run = new QueryRunner(ds);</p><p> String str[] = { roomno };</p><p> List list = (List) run.query(sql, str, new BeanListHandler(</p><p> dbcommen.class));</p&
44、gt;<p> dbcommen bl = (dbcommen) list.get(0);</p><p> request.setAttribute("bl", bl);</p><p> sql = "select roomno,startdate,enddate,</p><p> timestampdiff
45、(day,startdate,enddate) as day </p><p> from room where statue=2 and roomno=?";</p><p> List list1 = (List) run.query(sql, str, new BeanListHandler(room.class));</p><p> roo
46、m room1 = (room) list1.get(0);</p><p> request.setAttribute("room1", room1);</p><p> sql = "select * from consumer where consumerno=?";</p><p> String str1[]
47、= { consumerno };</p><p> List list2 = (List) run.query(sql, str1, new BeanListHandler</p><p> (consumer.class));</p><p> consumer cm = (consumer) list2.get(0);request.setAttribu
48、te("cm", cm);</p><p> if(list.isEmpty()||list1.isEmpty()||list2.isEmpty()){System.out.println("讀取失?。?quot;);}else{</p><p> request.getRequestDispatcher("/seachall.jsp"
49、).forward(request,</p><p> response);}</p><p> } catch (SQLException e) {e.printStackTrace();}}</p><p><b> 4.3查看</b></p><p> 房間查詢的思想為:先到getallroom控制塊對(duì)條件
50、進(jìn)行處理,將滿足條件的房間號(hào)的數(shù)組放到room.Class中,再到Roomseach.Jsp頁(yè)面將數(shù)組顯示出來(lái)。</p><p> try {sql = "select roomno,statue,startdate,enddate from room";</p><p> QueryRunner run = new QueryRunner(ds);</
51、p><p> List list = (List) run.query(sql, new BeanListHandler(room.class));</p><p> request.setAttribute("list",list);</p><p> request.getRequestDispatcher("/main/room
52、seach.jsp").forward(request,response);}</p><p> catch (SQLException e) {</p><p> e.printStackTrace();}</p><p><b> 5程序運(yùn)行與調(diào)試</b></p><p><b> 5.1
53、酒店入住頁(yè)面</b></p><p><b> 圖5-1 入住</b></p><p><b> 5.2退房</b></p><p><b> 5-2酒店退房管理</b></p><p><b> 5.3查詢</b></p>
54、<p><b> 5-3住戶查詢頁(yè)面</b></p><p><b> 6總結(jié)</b></p><p> 通過(guò)一段時(shí)間的設(shè)計(jì)與編寫,該酒店管理系統(tǒng)終于有了一個(gè)比較完整的框架?,F(xiàn)將心得體會(huì)總結(jié)如下:</p><p> 由于時(shí)間倉(cāng)促,這暫時(shí)只是一個(gè)簡(jiǎn)單的管理系統(tǒng),但從設(shè)計(jì)這個(gè)系統(tǒng)的過(guò)程中,我感受到了關(guān)于軟
55、件工程,數(shù)據(jù)庫(kù)設(shè)計(jì)、商業(yè)管理等各方面知識(shí)在實(shí)際工作中的應(yīng)用。在開(kāi)發(fā)該系統(tǒng)過(guò)程中,我始終堅(jiān)持以下四項(xiàng)原則,并朝相應(yīng)目標(biāo)靠攏: </p><p><b> ?。?)實(shí)用為主</b></p><p> 任何系統(tǒng)都應(yīng)該以用戶需求為最終目標(biāo),以方便用戶為最高原則,同進(jìn)要融入先進(jìn)的管理經(jīng)驗(yàn)與技巧。該系統(tǒng)努力根據(jù)用戶的實(shí)際需求功能情況,度身訂造一套先進(jìn)的管理系統(tǒng),并且將在統(tǒng)一的W
56、indows NT/9X圖形界面下提供各種實(shí)用功能,盡可能降低使用前的培訓(xùn)、實(shí)施和使用中的維護(hù)時(shí)間。力求滿足現(xiàn)在及未來(lái)的各種需求,真正為管理及決策提供強(qiáng)有力的支持。</p><p><b> (2)穩(wěn)定可靠</b></p><p> 不論在軟件設(shè)計(jì)還是硬件制造中,穩(wěn)定都是壓倒一切的。本管理系統(tǒng)通過(guò)選用先進(jìn)的開(kāi)發(fā)軟件,成熟的網(wǎng)絡(luò)結(jié)構(gòu)及安全可靠的數(shù)據(jù)庫(kù),再配合硬件的優(yōu)
57、化選型,從而保證系統(tǒng)的可靠性與容錯(cuò)性。</p><p><b> (3)先進(jìn)靈活</b></p><p> 系統(tǒng)充分應(yīng)用現(xiàn)有成熟的網(wǎng)絡(luò)技術(shù)、軟件開(kāi)發(fā)技術(shù),先進(jìn)的客戶/服務(wù)器結(jié)構(gòu),及高性能的數(shù)據(jù)庫(kù),滿足大型客戶的日常運(yùn)營(yíng)、開(kāi)展電子商務(wù)等的需要。同時(shí)用戶可自行靈活設(shè)置參數(shù)和各種代碼,適應(yīng)自己的特殊需要。</p><p> 總體而言,國(guó)內(nèi)酒店I
58、T技術(shù)開(kāi)發(fā)的現(xiàn)狀是:1、需求不明確,使酒店項(xiàng)目工程性強(qiáng),產(chǎn)品化不足,開(kāi)發(fā)商的總體成本居高不下,研發(fā)缺乏原動(dòng)力。2、沒(méi)有行業(yè)統(tǒng)一標(biāo)準(zhǔn),廠商各自為政,市場(chǎng)分化導(dǎo)致產(chǎn)品整合難度大。3、產(chǎn)品推廣依賴行政手段和關(guān)系網(wǎng),抑制了新技術(shù)的引進(jìn)和技術(shù)的創(chuàng)新,不利于形成自己的產(chǎn)品特色和質(zhì)量控制。4、國(guó)外優(yōu)秀品牌的低價(jià)進(jìn)入,壟斷了國(guó)內(nèi)高星級(jí)市場(chǎng),開(kāi)發(fā)商利潤(rùn)空間式微。</p><p><b> 參考文獻(xiàn)</b>&
59、lt;/p><p> [1][美]Microsoft 公司. M icrosoft SQL Server2000 數(shù)據(jù)庫(kù)編程.北京: 希望電子出版社, 2001 </p><p> [2] 王珊,薩師煊.數(shù)據(jù)庫(kù)系統(tǒng)概論[M].第4版.北京:高等教育出版社2006</p><p> [3] 張海藩,軟件工程導(dǎo)論[M].第5版,北京,清
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 酒店管理系統(tǒng)課程設(shè)計(jì)
- 酒店管理系統(tǒng)課程設(shè)計(jì)
- 酒店管理系統(tǒng)課程設(shè)計(jì)
- 酒店管理系統(tǒng)課程設(shè)計(jì)
- 酒店管理系統(tǒng)課程設(shè)計(jì)
- 酒店管理系統(tǒng)課程設(shè)計(jì)
- java課程設(shè)計(jì)--酒店管理系統(tǒng)
- web課程設(shè)計(jì)--酒店管理系統(tǒng)
- 酒店管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 酒店管理系統(tǒng)課程設(shè)計(jì)2
- access課程設(shè)計(jì)酒店管理系統(tǒng)
- uml酒店管理系統(tǒng)課程設(shè)計(jì)
- java課程設(shè)計(jì)--酒店管理系統(tǒng)
- web課程設(shè)計(jì)酒店管理系統(tǒng)
- java酒店管理系統(tǒng)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)-酒店管理系統(tǒng)課程設(shè)計(jì)
- c++酒店管理系統(tǒng)課程設(shè)計(jì)
- c++酒店管理系統(tǒng)課程設(shè)計(jì)
- java課程設(shè)計(jì)--酒店住宿管理系統(tǒng)
- 課程設(shè)計(jì)---酒店經(jīng)營(yíng)管理系統(tǒng)
評(píng)論
0/150
提交評(píng)論