javaWeb書店管理系統(tǒng)系統(tǒng)

上傳人:m**** 文檔編號:52034294 上傳時(shí)間:2022-02-07 格式:DOC 頁數(shù):57 大?。?91.50KB
收藏 版權(quán)申訴 舉報(bào) 下載
javaWeb書店管理系統(tǒng)系統(tǒng)_第1頁
第1頁 / 共57頁
javaWeb書店管理系統(tǒng)系統(tǒng)_第2頁
第2頁 / 共57頁
javaWeb書店管理系統(tǒng)系統(tǒng)_第3頁
第3頁 / 共57頁

本資源只提供3頁預(yù)覽,全部文檔請下載后查看!喜歡就下載吧,查找使用更方便

50 積分

下載資源

資源描述:

《javaWeb書店管理系統(tǒng)系統(tǒng)》由會員分享,可在線閱讀,更多相關(guān)《javaWeb書店管理系統(tǒng)系統(tǒng)(57頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。

1、、實(shí)驗(yàn)?zāi)康? 1) 理解并掌握編碼與測試相關(guān)理論與方法; 2) 進(jìn)一步熟悉利用編程語言實(shí)現(xiàn)系統(tǒng); 3) 要求學(xué)生理解測試在軟件開發(fā)中的重要地位; 4) 學(xué)生了解測試用例與測試報(bào)告的相關(guān)書寫規(guī)范 、實(shí)驗(yàn)內(nèi)容與要求 1) 根據(jù)系統(tǒng)的特點(diǎn),選取javaWeb MVC開發(fā)模型實(shí)現(xiàn)該系統(tǒng); 2) 系統(tǒng)的編碼結(jié)構(gòu): 邊界類:1個(gè)html (項(xiàng)目首頁),13個(gè)jsp (中間跳轉(zhuǎn)的頁面),一個(gè)css (界面美化功能),一個(gè)javascript (控制輸入合法性)。 控制類:一個(gè)servlet類(連接邊界類和實(shí)體類) 實(shí)體類:一個(gè)datebase類(連接數(shù)據(jù)庫),一個(gè)book info 類(書

2、本的 增刪檢查操作) 服務(wù)器采用tomcat 。 如下圖展示: ..C5S 2015/1/1 20:27 I ? .■戶 2015/1/1 20:27 WEB-IWF 2015/1/1 20:23 ,_ add.bcekj&p 201S/1/1 21:21 2 KE 0 buyj年 2015/1/1 21:21 2

3、59 1 KB indesnhtrnl 2015/1/120:34 2 KB msnager.j^p 2015/1/^ 14:;S 2

4、5/1/2 15:55 2 KB s_mjsp 2015/1/1 20:32 1 KB 3) 對系統(tǒng)進(jìn)行測試分析,并對系統(tǒng)功能實(shí)施測試,編寫測試用例,系統(tǒng)已 經(jīng)實(shí)現(xiàn)可以讓手機(jī)電腦一起訪問并做操作; 4) 撰寫實(shí)驗(yàn)報(bào)告,同時(shí)需要了解測試報(bào)告相應(yīng)的規(guī)范與寫法。 1.下面是一些界面的 展示(沒有全部展示): 登錄頁面 ■'幀客不莊輸入】 sina sohu CQpyigrt? 2014-201 ^NETWORK.席犠誨 鄧勻翔袁野 監(jiān)一甩一 ?茶膨s OIT霧 S a 3 3- 0 -O1 W1 E> ni £ 3

5、 a 1 O a 需 ITv Fl 8 m i/i O FM ■M 1 E S w 聲K S K S lll| HP- 4H 管 s K* 密 X ¥ §第 s .13 ■■ 耳 Ud X A. tx § 京 乂歸丼匪粧棒 K*s 訂單信息已審檢亮

6、卑 2012011] 90 血日制 32 U 2 KISi 正在打印訂單『請稍候■… 查詢頁面 圖書宿息査詢 *笛輸入則需芫整) 水目認(rèn)關(guān)濯寧即可) 咒輸入矣鍵宇即可) 查詢結(jié)果 躺號 書色 出匸牡 3 2012011307 卩唔it 學(xué)阿 51華檸 2011^^16 65 貼 2nL2DL]2La 亦y梅b 5K5 畤4卒斗蔚;| 20K-1-]? 旳 1D 2ni2DL12[4 旳衛(wèi) 手冃 中05科斗'社嗣

7、t 3300-12-16 55 B 血 管理員頁面 編耳 書若 ttft 出am 出丹曰期 怕略 1 ■itrr^ry#iit W-1!-* 科 0 ttik HA 20329I11CK1 jiWIKE 3DH-34 ie M^. 初】MILW1 匚啊 tlR 亂蘿丸黃倆t 30II4-K IQ 1<0 HI保 20】7加說幹 imEU ?Ri 科燈出*吐 3011-14^ 0 Hl怩 2012曲1204 tmis > 昌

8、 gflj amnoii ?Z i#土丈利!KS牡 35 遜 3tl2kll3U 囚迴t ISE 番k攀如t 如WK 越 amoiim Jfl?12-16 0 ffit 201201西丹 4如扯Ft 20OD-2-19 tttt 添加圖書頁面 添加圖書信息不完整頁面 圖書佶總 nc narr?L 三、完整開發(fā)代碼(按照上面截圖部

9、署即可實(shí)現(xiàn)) Table.css: body{ backgro und: margi n: 15; } body,table,th,td,i nput,select,textarea{ fon t-family: T ahoma,Verda na,Arial,Helvetica,sa ns-serif; fon t-size: 12px; } table.default{ border: 1px solid #3366CC; border-collapse: collapse; width: 80%; } table.default td{ paddi ng:

10、2 5 2 5; height: 26px; text-alig n: cen ter; border: 1px solid #ffffff; backgrou nd-color: #fOfOfO; } table.default tr.title td{ fon t-weight: bold; text-alig n: cen ter; backgrou nd: #99CCFF; color: red; border: 1px solid #ffffff; white-space: no wrap; height: 26px; } table.default th.

11、item{ fon t-weight: bold; color: #333333; text-alig n: cen ter; vertical-alig n: top; paddi ng: 10px; fon t-size: 14px; } xyh.css: body {fon t-family: Arial, Helvetica, san s-serif; fon t-size:12px;color:#666666;backgrou nd:#fff; text-alig n:cen ter;} * {margi n:0;paddi ng:0;} a {color:#

12、1E7ACE;text-decorati on:non e; } a:hover {color:#000;text-decoratio n:un derl in e;} h3 {fon t-size:14px;fo nt-weight:bold;} pre,p {color:#1E7ACE;margi n:4px;} in put, select,textarea {paddi ng:1px; margi n:2p x;fon t-size:11p x;} .buttom{padd in g:1px 10px;fo nt-size:12px; border:1px #1E7ACE

13、 solid;backgro un d:#D0F0FF;} #formwrapper {width:450p x;m argi n:15px auto; paddi ng:20px;text-alig n:left;border:1px solid #A4CDF2;} fieldset {paddi ng:10px;marg in-top:5px; border:1px solid #A4CDF2;backgrou nd:#fff;} fieldset lege nd {color:#1E7ACE;fo nt-weight:bold; paddi ng:3px 20px 3px 20p

14、x;border:1px solid #A4CDF2; backgro un d:#fff;} fieldset label {float:left;width:120px; text-alig n:right;paddi ng:4px;marg in :1px;} fieldset div {clear:left;marg in-bottom:2px;} .in put { width:120px;} .en ter{ text-alig n:ce nter;} .clear {clear:both;} Common.js: fun ctio n isNum( nu m){

15、 for(i=0;i< num.len gth;i++) { c=nu m.charAt(i); if(c>'9'||c<'0'){ return false; } } return true; } function check(){ if(form1.id.value=="”) {alert (" no id!"); form1.id.focus(); return false;} if(form1. name.value=="") {alert(” no n ame!"); form1. name.focus(); return false;} if(form1.autho

16、r.value=="") { alert("no author!"); form1.author.focus(); return false; if(form1.press.value=="”) { alert(" no press!"); form1.press.focus(); return false; } if(form1.date.value==""){ alert("no date!") form1.date.focus(); return false; } if(!isNum(form1.price)){ alert("price is wron g!") f

17、orm1.price.focus(); return false; } if(!isNum(form1.acco un t)){ alert("acco unt is wring!") form1.acco un t.focus(); return false; } Bookinfo.java: package bea n; import java .Ian g.Stri ng; import java .Ian g.System; import java.sql.ResultSet; import java.sql.SQLExcepti on; import java.u

18、til.ArrayList; public class book info{ private String id; private String name; private String author; private String press; private String date; private int price; private int acco unt; public void setName(Stri ng n ame) { this. name = n ame; } public String getName() { return n ame; }

19、 public void setAuthor(Stri ng author) { this.author = author; public Stri ng getAuthor() { return author; } public void setDate(Stri ng date) { this.date = date; } public Stri ng getDate() { return date; public void setPress(Stri ng press) { this.press = press; public String getPress() { r

20、etur n press; } public void setld(Stri ng id) { this.id = id; } public Stri ng getId() { return id; public void setAcco un t(i nt aco unt) { this.acco unt = aco unt; public int getAcco un t() { retur n acco unt; } public void setPrice(int price) { this.price = price; public int getPrice()

21、{ retur n price; } public static ArrayList getbooklist(){ ArrayList list=new ArrayList(); String sql="select * from book.bookshop"; dbbea n jdbc=new dbbea n(); ResultSet rs=jdbc.executeQuery(sql); try{ while(rs. next()){ book info bi=new book info(); bi.s

22、etld(rs.getStri ng("id")); bi.setName(rs.getStri ng(" name")); bi.setAuthor(rs.getStri ng("author")); bi.setPress(rs.getStri ng("press")); bi.setDate(rs.getStri ng("date")); bi.setPrice(rs.get In t("price")); bi.setAcco un t(rs.get In t("acco un t")); list.add(bi); } rs.close(); } catch(SQ

23、LExceptio n e){ e.pri ntStackTrace(); } jdbc.close(); return list; } //通過編號書名作者來搜索 n ame,Stri ng public static ArrayList getbookbyway(String id,String author){ ArrayList list=new ArrayList(); String sql=n ull; int way=0; if (!id.equals("")){way=way+1;}

24、 if (!n ame.equals("")){way=way+10;} if (!author.equals("")){way=way+100;} if (way==1||way==11||way==101){ sql="select * from book.bookshop where id='"+id+""'; } if (way==10){ sql="select * from book.bookshop where n ame like '%"+name+"%": } if (way==100){ sql="select * from bookshop where

25、 author like '%"+author+"%"‘; } and if (way==110){ sql="select * from bookshop where name like '%"+name+"%' author like '%"+author+"%'"; } dbbea n jdbc=new dbbea n(); ResultSet rs=jdbc.executeQuery(sql); try{ while(rs. next()){ book info bi=new book info(); bi.setDate(rs.getStri ng("date"

26、)); bi.setPress(rs.getStri ng("press")); bi.setAuthor(rs.getStri ng("author")); bi.setName(rs.getStri ng(" name")); bi.setld(rs.getStri ng("id")); bi.setPrice(rs.get In t("price")); bi.setAcco un t(rs.get In t("acco un t")); list.add(bi); } rs.close(); } catch(SQLExceptio n e){ System.ou

27、t.pri ntl n(” no fin d"); } jdbc.close(); return list; } public static book info getbookbyid(Stri ng id){ String sql="select * from book.bookshop where id='"+id+""'; dbbea n jdbc=new dbbea n(); ResultSet rs=jdbc.executeQuery(sql); book info bi = new book in fo(); try{ if(rs. next()){ bi.

28、setDate(rs.getStri ng("date")); bi.setPress(rs.getStri ng("press")); bi.setAuthor(rs.getStri ng("author")); bi.setName(rs.getStri ng(" name")); bi.setld(rs.getStri ng("id")); bi.setPrice(rs.get In t("price")); bi.setAcco un t(rs.get In t("acco un t")); } rs.close(); } catch(SQLExceptio n

29、e){ System.out.println("no find"); } jdbc.close(); return bi; } author,Stri ng set public static int updatebook(Stri ng id,Stri ng n ame,Stri ng press,String date,int price,int account){ int result=0; String sql="update book.bookshop n ame='"+name+"',author="'+author+"',press="'+press+"'

30、,date="'+date+"',price= "+price+",acco un t="+acco un t+" where id='"+id+""'; dbbea n jdbc=new dbbea n(); result=jdbc.executeUpdate(sql); return result; } public static int deletebook(String id){ int result=O; String sql="delete from book.bookshop where id='"+id+""'; dbbea n jdbc=new dbbea

31、n(); result=jdbc.executeUpdate(sql); return result; } public static int addbook(String id,String name,String author,String press,String date,i nt price,i nt acco un t){ into int result=0; String sql="i nsert book.bookshop(id ,n ame,author,press,date,price,acco unt) values(”'+id+"',”'+name+"

32、',”'+author+"',”'+press+"',”'+date+"',"+price+","+accou n t+")"; dbbea n jdbc=new dbbea n(); result=jdbc.executeUpdate(sql); return result; } } Dbbean.java: package bea n; import java .Ian g.*; import java.sql.*; public class dbbea n{ private String driverStr="com.mysql.jdbc.Driver"; S

33、tri ng private conn Str="jdbc:mysql://localhost:3306/book?characterE ncodi ng=utf-8"; private String name="root"; private Stri ng password="xyh201268"; private Connection conn=n ull; private Stateme nt stmt=n ull; public dbbea n(){ try{ Class.forName(driverStr); conn=DriverMa nager.getC on

34、n ecti on(conn Str, name,password); stmt=c onn .createStateme nt(); } catch(Excepti on ex){ System.out.pri ntln ("conn ect to database is worry!"); } } public int executeUpdate(Stri ng s){ int result=0; try{ result=stmt.executeUpdate(s); } catch(Excepti on ex){ System.out.pri ntl n("upd

35、ate wrong!"); } return result; } public ResultSet executeQuery(Stri ng s){ ResultSet rs=n ull; try{ rs=stmt.executeQuery(s); } catch(Excepti on ex){ System.out.pri ntl n("search wrong!"); } return rs; } public void close(){ try{stmt.close();c onn .close(); } catch(Excepti on ex){ S

36、ystem.out.println("can not close the database!"); } } } Servlet.java: package servlets; import javax.servlet.ServletExceptio n; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResp on se; import java.i o.I OExcepti o

37、n; import java.util.ArrayList; import java .Ian g.*; /** * Created by Admi nistrator on 14-5-31. */ public class Servlet exte nds HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResp onse resp on se) throws ServletExcepti on, I OExcepti on { doPost(request, resp on

38、 se); } protected void doPost(HttpServletRequest request, HttpServletResp onse resp on se) throws ServletExcepti on, I OExcepti on { request.setCharacterE ncodi ng("utf-8"); String action=request.getServletPath(); if(act ion. equals("/servlets/depe nd.do")){ String value=request.getParameter(

39、"password"); if(value.equals("123")){ ArrayList list= bean.bookinfo.getbooklist(); request.setAttribute("list", list); request.getRequestDispatcher("/ma nager.jsp").forward(request,resp on se); } else { ArrayList list= bea n.book in fo.getbooklist(); request.s

40、etAttribute("list", list); request.getRequestDispatcher("/reader.jsp").forward(request,resp on se); } } else if (act ion. equals("/servlets/list_m.do")){ ArrayList list= bean.bookinfo.getbooklist(); request.setAttribute("list", list); request.getRequestDispatcher("/ma nager.jsp"

41、).forward(request,resp on se); } else if (act ion. equals("/servlets/list_r.do")){ ArrayList list= bean.bookinfo.getbooklist(); request.setAttribute("list", list); request.getRequestDispatcher("/reader.jsp").forward(request,resp on se); } else if(act ion. equals("/servlets/edit.

42、do")){ String id =request.getParameter("id"); bea n. book info bi= bea n.book in fo.getbookbyid(id); request.setAttribute("bi",bi); request.getRequestDispatcher("/edit.jsp").forward(request,resp on se); } else if(act ion. equals("/servlets/update.do")){ String id=request.getParameter("id");

43、 String n ame=request.getParameter(" name"); String author=request.getParameter("author"); String press=request.getParameter("press"); String date=request.getParameter("date"); String s_price=request.getParameter("price"); String s_acco un t=request.getParameter("acco un t"); int price=ln tege

44、r.parse In t(s_price); int acco unt=ln teger.parse In t(s_acco un t); r= int bea n. book in fo.updatebook(id, name,author,press,date,price,acco un t); if (r==1){ request.getRequestDispatcher("/success_m.jsp").forward(request,resp on se); } else{request.getRequestDispatcher("/failure_m.jsp").

45、forward(request,resp on se); } } else if (actio n.equals("/servlets/delete.do")){ String id=request.getParameter("id"); int r= bea n. book in fo.deletebook(id); if (r==1){ request.getRequestDispatcher("/success_m.jsp").forward(request,resp on se); } else{request.getRequestDispatcher("/failu

46、re_m.jsp").forward(request,resp on se); } } else if (act ion. equals("/servlets/add.do")){ String id=request.getParameter("id"); String n ame=request.getParameter(" name"); String author=request.getParameter("author"); String press=request.getParameter("press"); String date=request.getParame

47、ter("date"); String s_price=request.getParameter("price"); String s_acco un t=request.getParameter("acco un t"); int price=ln teger.parse In t(s_price); int acco unt=ln teger.parse In t(s_acco un t); press, int r= bea n. book in fo.addbook(id, n ame, author, date,price,acco un t); if (r==1)

48、{ request.getRequestDispatcher("/success_m.jsp").forward(request,resp on se); } else{ request.getRequestDispatcher("/failure_m.jsp").forward(request,resp on se); } } else if (act ion. equals("/servlets/buy.do")){ String buy=request.getParameter("buy"); bea n. book info bi=bea n. book in fo.

49、getbookbyid(buy); request.setAttribute("bi",bi); request.getRequestDispatcher("/buy.jsp").forward(request,resp on se); } else if (act ion. equals("/servlets/search_r.do")){ String id=request.getParameter("id"); String n ame=request.getParameter(" name"); String author=request.getParameter("aut

50、hor"); String user=request.getParameter("user"); list= ArrayList bea n. book in fo.getbookbyway(id, name,author); request.setAttribute("list", list); if (user.equals("reader")){ request.getRequestDispatcher("/sear_result_r.jsp").forward(request,resp on se); } if (user.equ

51、als("ma nager")) { request.getRequestDispatcher("/sear_result_m.jsp").forward(request,resp on se); } } else if (act ion. equals("/servlets/check_buy.do")){ String id=request.getParameter("id"); String s_nu m_buy=request.getParameter(" nu m_buy"); int nu m_buy =ln teger.parse In t(s_ nu m_buy

52、); bea n. book info bi= bea n.book in fo.getbookbyid(id); if(bi.getAcco un t() >=nu m_buy){ request.setAttribute("bi",bi); request.setAttribute("s_ nu m_buy",s_ nu m_buy); request.getRequestDispatcher("/success_buy.jsp").forward(request,resp on se); }else{ request.getRequestDispatcher("/failur

53、e_r.jsp").forward(request,resp on se); } } else if (act ion. equals("/servlets/pri nt_order.do")){ String id=request.getParameter("id"); String s_nu m_buy=request.getParameter("s_ nu m_buy"); bea n. book info bi= bea n.book in fo.getbookbyid(id); int nu m_buy =ln teger.parse In t(s_ nu m_buy)

54、; bea n. book in fo.updatebook(id,bi.getName(),bi.getAuthor(),bi.getPress(),bi.getDate( ),bi.getPrice(),(bi.getAcco un t()-nu m_buy)); request.getRequestDispatcher("/pri nt_order.jsp").forward(request,resp on se); } } } Add_book.jsp: <%@ page conten tType="text/html;charset=UTF-8" Ian guage="

55、java" %>

  • vform n ame="form1" on submit="retur n check()" action="/bookshop/servlets/add.

    56、do" method="post">

    圖書信息

    <

    57、th class="item"> 作 者

    name="press">*( 不能為空)
    編 號 *(不能為空)
    書 名 *( 不能為空)
    *( 不能為空)
    出版日期 *( 不能為空)
    價(jià) 格 *( 只能數(shù)字)

    58、td>

    庫 存 *( 只能數(shù)字)
    buy.jsp: <%@ page conten tType=

    59、"text/html;charset=UTF-8" Ian guage="java" import="bean.bookinfo" %>

  • <% request.setCharacterE ncodi ng("utf-8"); book info bi=(book info) request.getAttribute("bi"); %> <

    60、ce nter>

    訂單信息 value="<%= bi.getPrice()%>" n ame="price">
    編 號
    書 名

    61、

    作 者
    出版社
    出版日期 <

    62、input type="text" type="text" type="text" type="text" type="text" value="<%= bi.getDate()%>" name="date">

    庫 存

    63、s="item"> 購買數(shù)量

    edit.jsp: <%@ page con te ntType="text/html;charset=UTF-8" import="bean.book

    64、info" %>

  • type="text" type="text" Ian guage="java" <% request.setCharacterE ncodi ng("utf-8"); book info bi=(book info) request.getAttribute("bi"); %>

    修改信息

    value="<%= bi.getPrice()%>" n ame="price"> type="text"

    編 號
    書名

    66、 type="text" value=<%= bi.getName()%> n ame="n ame">

    作者 n ame="author">
    出版社
    出版日期
    庫 存
    展開閱讀全文
    溫馨提示:
    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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
    6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
    7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

    相關(guān)資源

    更多
    正為您匹配相似的精品文檔

    copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

    備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


    本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!