課程設計---java web圖書管理系統(tǒng)_第1頁
已閱讀1頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  信息系統(tǒng)工程與實踐</b></p><p>  ---- Java Web圖書管理系統(tǒng)</p><p><b>  班級: </b></p><p><b>  姓名: </b></p><p><b>  學號: </b>&

2、lt;/p><p><b>  一、題目的選擇</b></p><p>  Java Web圖書管理系統(tǒng)</p><p><b>  二、系統(tǒng)分析</b></p><p>  2.1 系統(tǒng)的可行性分析</p><p>  可行性分析是在進行初步調查后所進行的對系統(tǒng)開發(fā)必要性和可能

3、性的研究,所以也稱為可行性研究。信息系統(tǒng)也應從技術可行性,經濟可行性和社會可行性三方面來論證。通過長時間的觀察與實踐,我認為圖書館管理系統(tǒng)的可行性分析如下:</p><p>  2.1.1經濟可行性分析</p><p>  作為圖書館這樣的商業(yè)性質較小的場所,其經濟成分比重相對較少,主要是支出的費用:其中包括設備購置費、軟件開發(fā)費用、管理和維護費、人員工資和培訓費等。由于各個圖書館實行統(tǒng)一

4、操作,系統(tǒng)共享,其設備購置,人員工資,維護費用相對較少,前期的資金投入主要集中于購置圖書上。建立信息中心,可將來自各方面的信息集中管理,提高圖書管理的計劃性和預見性,快速地反饋市場信息。</p><p>  2.1.2技術可行性分析</p><p>  技術上的可行性分析主要分析現有技術條件能否順利完成開發(fā)工作,硬件、軟件配置能否滿足開發(fā)者的需要,各類技術人員的數量,水平,來源等。圖書館管

5、理系統(tǒng)的工作主要是在讀者和圖書館之間架起一座橋梁,能相互溝通信息和處理信息。這一特點非常適合計算機特點,通過網絡internet技術,發(fā)揮計算機的信息傳輸速度快、準確度高的優(yōu)勢。計算機硬件和軟件技術的飛速發(fā)展,為系統(tǒng)的建設提供了技術條件。</p><p>  2.1.3社會可行性分析</p><p>  社會可行性有時也稱為操作可行性,主要論證新系統(tǒng)在企業(yè)或機構開發(fā)和運行的可能性以及運行后

6、可能一起的對企業(yè)或機構的影響,即組織內外是否具備接受和使用新系統(tǒng)的條件。在當前信息技術飛速發(fā)展的大環(huán)境下,計算機技術和軟件技術的更新是圖書館完全有可能也有能力采用這樣先進的管理技術。它對圖書館帶來的影響可以看到:</p><p>  (a)對傳統(tǒng)管理理念的沖擊,可能引起管理層的變動和人員的調整。</p><p> ?。╞)對圖書館工作人員的要求提高,使圖書館在一定的可能下進行機構精簡,迫使

7、工作人員繼續(xù)學習新知識,拓寬圖書館在市場環(huán)境下的生存空間。</p><p> ?。╟)對圖書館與讀者之間業(yè)務方式的轉變和擴充。</p><p>  最后,針對用戶對圖書資源進行有效利用和管理的功能需求,用建模技術對圖書管理資源采用面向對象的描述方式,在具體系統(tǒng)功能實現之前,建立起系統(tǒng)模型是很必要的,這里采用具有可視化、能夠柔性實現分析、設計和開發(fā)系統(tǒng)的統(tǒng)一建模語言實現系統(tǒng)模型構建。同時,結

8、合最流行的基于瀏覽器的數據管理模式,建議采用基于組件技術的B/S(brower/server)系統(tǒng)結構。</p><p>  從技術的角度來考慮,隨著計算機技術的深入發(fā)展,相關的應用軟件、技術已經很成熟了,各種信息系統(tǒng)的開發(fā)工具也很完善了。運用現在軟件行業(yè)中流行的開發(fā)工具JAVA以及MySQL,借鑒別人成功開發(fā)的寶貴經驗,可成功開發(fā)一個功能基本完善的、符合中小型生產企業(yè)生產管理所需的生產管理信息系統(tǒng)。</p

9、><p>  綜上所述,實施生產管理系統(tǒng)在技術上、經濟上、運行上以及社會環(huán)境上都是可行的,因此,開發(fā)生產管理信息系統(tǒng)是可行的。</p><p>  2.2 系統(tǒng)的需求分析</p><p>  公司的圖書管理涉及圖書信息、系統(tǒng)用戶信息、讀者信息、圖書借閱等多種數據管理。從管理的角度可將圖書分為三類:圖書信息管理、系統(tǒng)用戶管理、讀者數據管理。圖書信息管理包括圖書征定、借還、

10、查詢等操作,系統(tǒng)用戶管理包括系統(tǒng)用戶類別和用戶數據管理,讀者數據管理包括讀者類別管理和個人數據的錄入、修改和刪除。</p><p>  圖書借閱者的需求是查詢圖書室所存的圖書、個人借閱情況及個人信息的修改;圖書館工作人員對圖書借閱者的借閱及還書要求進行操作,同時形成借書或還書報表給借閱者查看確認;圖書館管理人員的功能最為復雜,包括對工作人員、圖書借閱者、圖書進行管理和維護,及系統(tǒng)狀態(tài)的查看、維護等。圖書借閱者可直

11、接查看圖書館圖書情況,如果圖書借閱者根據本人借書證號和密碼登錄系統(tǒng),還可以進行本人借書情況的查詢和維護部分個人信息。一般情況下,圖書借閱者只應該查詢和維護本人的借書情況和個人信息,若查詢和維護其他借閱者的借書情況和個人信息,就要知道其他圖書借閱者的借書證號和密碼。這些是很難得到的,特別是密碼,所以不但滿足了圖書借閱者的要求,還保護了圖書借閱者的個人隱私。圖書館工作人員有修改圖書借閱者借書和還書記錄的權限,所以需對工作人員登陸本模塊進行更

12、多的考慮。在此模塊中,圖書館工作人員可以為圖書借閱者加入借書記錄或是還書記錄,并打印生成相應的報表給用戶查看和確認。圖書館管理人員功能的信息量大,數據安全性和保密性要求最高。本功能實現對圖書信息、借閱者信息、總體借閱情況信息的管理和統(tǒng)計、工作人員和管理人員信息查看及維護。圖書館管</p><p>  2.3系統(tǒng)的功能需求</p><p>  在本系統(tǒng)中,對讀者來說,他們關心的問題其實是如

13、何方便的查詢到圖書館中的書籍以及自己正在借閱或是已經借閱過些什么書,所借的書是否到期等。[3]由此可以得出系統(tǒng)在面向讀者方面應該至少做到如下幾點:</p><p><b>  1.圖書查詢。</b></p><p>  2.讀者信息查詢,讀者信息的查詢內容應包括下面的幾個方面:</p><p>  讀者信息——對讀者的基本信息進行顯示。<

14、/p><p>  書刊借閱——對該讀者借閱過的所有書籍進行查詢。</p><p>  借閱歷史——查詢該讀者借閱過的所有書籍。</p><p>  違章信息——該讀者的違章信息。</p><p>  讀者規(guī)則——該讀者所應用的規(guī)則。</p><p>  對系統(tǒng)的管理員來說,應該注意的是:</p><p&

15、gt;  1.圖書館中有些什么書,它們都存放在那里,是不是可以被借閱;</p><p>  2.本圖書館發(fā)放的讀者證有那些,如何管理這些讀者證;</p><p>  3.這些讀者證都借閱著那些書;</p><p>  4.如何來確定這些讀者證是否可用,以及借書的還期等。</p><p>  從以上問題出發(fā),可以得出本系統(tǒng)應該具有的功能:<

16、;/p><p>  1.圖書查詢——對館內的圖書進行查詢。</p><p>  2.借閱管理——對讀者的每一次借閱,還書進進登記和管理。</p><p>  3.圖書管理——對圖書館的書籍進行管理。</p><p>  4.借閱證管理——對讀者的借閱證進行管理。</p><p>  5.讀者規(guī)則管理——設置和管理讀者規(guī)則。

17、</p><p><b>  2.4設計模式</b></p><p>  設計模式是面向對象的程序設計人員用來解決編程問題的一種形式化表示。本系統(tǒng)開發(fā)采用目前一種目前廣泛流行的軟件設計模式MVC。MVC(Model-View - Controller)應用程序結構被用來分析分布式應用程序的特征。這種抽象結構能有助于將應用程序分割成若干邏輯部件,使程序設計變得更加容易。

18、把一個應用的輸入、處理、輸出流程按照Model、View、Controller的方式進行分離,這樣一個應用被分成三個層——模型層、視圖層、控制層。如下圖2.1所示:</p><p>  圖2.1 MVC模式</p><p><b>  三、系統(tǒng)設計</b></p><p><b>  3.1 系統(tǒng)概要</b></p&

19、gt;<p>  本圖書管理系統(tǒng)總體上分為前臺頁面顯示和后臺管理。前臺頁面(即本書圖書管理系統(tǒng)的首頁)實現了公告的顯示圖書查詢,留言建議三大功能。而后臺的頁面則集成了圖書管理中所需的功能和錄入新書到庫,辦公圖書,借還手續(xù),查詢圖書等等。平時圖書管理人員的工作都是在后臺中完成的。前臺是為了師生顯示的。師生們可以看到圖書管理人員發(fā)布的最新公告信息;并可以查詢自己感興趣的圖書,也可以給學校的圖書管理人員留言提議。相對應的后臺是針

20、對學校圖書管理人員,后臺的頁面都加密,如果不正常登錄是進入不了后臺管理頁面的,后臺功能具體包括:發(fā)布首頁公告,添加新書到庫等等。</p><p><b>  3.2功能模塊</b></p><p>  本系統(tǒng)的功能模塊的設計如圖3.1所示,整個系統(tǒng)包含基本信息設置,圖書信息管理,查詢圖書管理,添加圖書管理,修改圖書管理和用戶借閱管理。</p><p

21、><b>  圖3.1功能結構圖</b></p><p><b>  3.3設計思想</b></p><p>  利用軟件開發(fā)現有軟硬件環(huán)境,及先進的管理系統(tǒng)開發(fā)方案,從而達到充分利用現在資源提高系統(tǒng)開發(fā)水平和應用效果的目的。</p><p>  系統(tǒng)應該符合軟件工程開發(fā)的理論,開發(fā)方法等開發(fā)依據。</p&g

22、t;<p>  系統(tǒng)應滿足圖書館管理工作需要,到操作過程中的直觀,方便,實用,安全等要求。</p><p>  系統(tǒng)具備數據庫維護功能,及時根據用戶需求進行數據庫的各種操作。</p><p>  系統(tǒng)采用原型,使用模塊化程序設計方法,便于系統(tǒng)功能的各種組合和修改,以及系統(tǒng)的測試與維護。</p><p>  3.4模塊設計及功能</p>

23、<p><b>  3.4.1圖書查詢</b></p><p>  讀者可以通過網絡訪問學校圖書館管理系統(tǒng),并對館內的圖書進行查詢,對查到的在館圖書可以進行借閱,如圖3.2所示:</p><p>  圖3.2 圖書查詢流程圖</p><p><b>  3.4.2借閱管理</b></p><p

24、>  這一部分是對書籍借閱、書籍歸還的管理,當讀者借書的時候,圖書館管理員把書籍的編號和讀者的借閱證號輸入系統(tǒng),當此次借閱符合借閱規(guī)則的時候,借閱成功。并將結果寫入到數據庫中。讀者歸還書籍時,將圖書交給圖書管理員,管理員把書籍的編號和讀者的借閱證號輸入系統(tǒng),系統(tǒng)核對借閱規(guī)則,對違規(guī)(如超期)的讀者進行罰款之類。如圖3.3所示:</p><p>  圖3.3借閱管理流程圖</p><p&g

25、t;<b>  3.4.3圖書管理</b></p><p>  圖書管理主要實現的功能是對新購的圖書進行入庫和廢書記錄從庫中刪除。當新書被放入圖書館時,管理員登錄進入系統(tǒng),把圖書的信息添加到圖書館管理系統(tǒng)中,并指定是放到哪一個藏書館中。這時圖書可以被讀者查詢到,并可以借閱。當要把一本廢書刪除時,圖書管理員登錄進入系統(tǒng),查找到這一本書,并將其刪除。這時,這一本圖書將不再能被查詢到。如圖3.4所

26、示:</p><p>  圖3.4圖書管理流程圖</p><p>  3.4.4借書證管理</p><p>  本部分是對借閱證進行管理,并對讀者的一些基本的信息進行維護,提供增、刪、改等功能。每一個借閱證都要以某一個讀者規(guī)則相應,讀者規(guī)則決定讀者可以借閱書籍的等級,如借書時間、借書種類等。當讀者借閱證丟失時,可以進行掛失處理。持失之后借閱證失效。如圖4.5所示:&

27、lt;/p><p>  圖3.5借書證管理流程圖</p><p>  3.4.5讀者規(guī)則管理</p><p>  讀者規(guī)則包括借閱時間,可借閱的圖書數目,可借閱圖書的書館等。這一部分可以對讀者規(guī)則進行管理,主要是增、刪、改操作。如圖3.6所示:</p><p>  圖3.6 讀者規(guī)則管理流程圖</p><p>  3.4.

28、6借還圖書功能流程圖</p><p>  圖3.7 借還書流程圖</p><p><b>  3.5數據庫設計</b></p><p><b>  設計兩個表:</b></p><p>  書籍信息autos(id,category類別,model型號,no書籍編號,price租書價格),如表3.8

29、所示:</p><p><b>  表3.8書籍信息表</b></p><p>  租書信息leases(id,autoId書籍id,customer客戶名稱,leaseDate租書日期,returned是否還書?,returnDate還書日期),如表3.9所示:</p><p><b>  表3.9租書信息表</b>&l

30、t;/p><p>  3.5.1創(chuàng)建數據庫的代碼</p><p><b>  代碼1:</b></p><p>  create database bookmanage;</p><p>  use bookmanage;</p><p>  create table autos</p>

31、<p>  (id int primary key auto_increment,</p><p>  category varchar(50) not null,</p><p>  model varchar(50) not null,</p><p>  no varchar(50) not null,</p><p>  

32、price double </p><p>  )ENGINE=InnoDB DEFAULT CHARSET=utf8;</p><p><b>  代碼2:</b></p><p>  create table leases</p><p><b>  (</b></p><

33、p>  id int primary key auto_increment,</p><p>  autoId int not null,</p><p>  customer varchar(20) not null,</p><p>  leasedate date,</p><p>  returned int default

34、0,</p><p>  returndate date</p><p>  )ENGINE=InnoDB DEFAULT CHARSET=utf8;</p><p><b>  四、程序設計與編碼</b></p><p>  4.1 系統(tǒng)登錄界面</p><p>  當系統(tǒng)登陸時,首先出現的是一

35、個用戶權限登陸的界面, 權限設置主要是維護系統(tǒng)的安全性和完整性。擁有管理員權限的操作員能對其他操作員進行相應的權限設置,沒有權限的操作員不能對相應的窗口進行操作。如下圖4.1所示:</p><p>  圖4.1 管理員登入界面</p><p>  這是進入系統(tǒng)時的身份驗證,用戶首先要從軟件開發(fā)者那里申請用戶名和密碼,才可以進入。該過程的流程圖如下圖4.2所示:</p><

36、;p>  圖4.2系統(tǒng)登入流程圖</p><p><b>  核心代碼如下:</b></p><p>  public void doPost(HttpServletRequest request, HttpServletResponse response)</p><p>  throws ServletException, IOExc

37、eption {</p><p>  response.setContentType(Constant.CONTENTTYPE);</p><p>  request.setCharacterEncoding(Constant.CHARACTERENCODING);</p><p><b>  try{</b></p><p

38、>  String method=request.getParameter("method").trim();</p><p>  AdminBean loginbean = new AdminBean();</p><p>  HttpSession session = request.getSession();</p><p>  se

39、ssion.setMaxInactiveInterval(1200);</p><p>  SystemBean systembean = new SystemBean();</p><p>  String sysdir = systembean.getDir();</p><p>  if(method.equals("one")){//ad

40、min登錄</p><p>  String username = request.getParameter("username");</p><p>  String password = request.getParameter("password");</p><p>  if(username == null||use

41、rname.trim().equals("")){</p><p>  request.setAttribute("message", "請正確輸入用戶名!");</p><p>  request.getRequestDispatcher("index.jsp").forward(request, respo

42、nse);</p><p><b>  return ;</b></p><p><b>  }</b></p><p>  else if(password == null||password.trim().equals("")){</p><p>  request.setA

43、ttribute("message", "請輸入密碼!");</p><p>  request.getRequestDispatcher("index.jsp").forward(request, response);</p><p><b>  return ;</b></p><p&

44、gt;<b>  }</b></p><p>  DBO dao = new DBO();</p><p>  String realPassword ="";</p><p>  dao.open();</p><p>  java.util.ArrayList list = new java.ut

45、il.ArrayList();</p><p>  ResultSet rs = dao.executeQuery("select * from admin where username='"+username+"'"); </p><p>  Date date = new Date();</p><p> 

46、 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");</p><p>  String logintime = format.format(date);</p><p>  if(rs.next()){</p><p>  realPassword = rs.getStri

47、ng("password").trim();</p><p>  String userName = rs.getString("username").trim();</p><p>  String right = rs.getString("quanxian").trim();</p><p> 

48、 Integer logintimes = Integer.valueOf(rs.getInt("logintimes"));</p><p>  list.add(userName);</p><p>  list.add(right);</p><p>  list.add(logintimes);</p><p>

49、  list.add(logintime);</p><p><b>  }</b></p><p>  String pwd = MD5.MD5(password.trim());</p><p>  if(!pwd.equals(realPassword)){</p><p>  request.setAttribu

50、te("message", "密碼錯誤!");</p><p>  request.getRequestDispatcher("index.jsp").forward(request, response);</p><p><b>  }else{</b></p><p>  sess

51、ion.setAttribute("list",list);</p><p>  session.setAttribute("user",username);</p><p>  request.getRequestDispatcher("admin/index.jsp").forward(request, response);&

52、lt;/p><p><b>  }</b></p><p>  4.2 添加圖書信息</p><p>  身份驗證通過以后,點擊可以使用系統(tǒng)的基本信息管理界面,這是管理員主要的輸入信息部分,它即可以對數據進行輸入包括圖書類別,圖書名稱,圖書作者等。填寫好各項信息后,單擊保存按鈕,系統(tǒng)將對這些信息進行處理。界面見下圖5.3所示:</p>

53、<p>  圖4.3 添加圖書信息界面</p><p><b>  核心代碼如下:</b></p><p>  public int addBOOK(String booktype,String name,String author,String cbs,String isbn,String price,String num,String intro,St

54、ring jyjg){</p><p>  String sql="insert into book(booktype,name,author,cbs,isbn,price,num,intro,jyjg,addtime) " +</p><p>  "values('"+booktype+"','"+nam

55、e+"','"+author+"','"+cbs+"','"+isbn+"','"+price+"','"+num+"','"+intro+"','"+jyjg+"',&

56、#39;"+date+"')";</p><p>  DBO dbo = new DBO();</p><p>  dbo.open();</p><p><b>  try{</b></p><p>  int i = dbo.executeUpdate(sql);</p&g

57、t;<p>  if(i == 1)</p><p>  return Constant.SUCCESS;</p><p><b>  else</b></p><p>  return Constant.SYSTEM_ERROR;</p><p>  }catch(Exception e){</p&

58、gt;<p>  e.printStackTrace();</p><p>  return Constant.SYSTEM_ERROR;</p><p><b>  }finally{</b></p><p>  dbo.close();</p><p><b>  }</b><

59、;/p><p><b>  }</b></p><p>  public int upBOOK(String id,String booktype,String name,String author,String cbs,String isbn,String price,String num,String intro,String jyjg){</p>&l

60、t;p>  String sql="update book set booktype='"+booktype+"',name='"+name+"',author='"+author+"',cbs='"+cbs+"',isbn='"+isbn+"'

61、;," +</p><p>  "price='"+price+"',num='"+num+"',intro='"+intro+"',jyjg='"+jyjg+"' where id='"+id+"'";&

62、lt;/p><p>  DBO dbo = new DBO();</p><p>  dbo.open();</p><p><b>  try{</b></p><p>  int i = dbo.executeUpdate(sql);</p><p>  if(i == 1)</p>

63、<p>  return Constant.SUCCESS;</p><p><b>  else</b></p><p>  return Constant.SYSTEM_ERROR;</p><p>  }catch(Exception e){</p><p>  e.printStackTrace();

64、</p><p>  return Constant.SYSTEM_ERROR;</p><p><b>  }finally{</b></p><p>  dbo.close();</p><p><b>  }</b></p><p><b>  }</b

65、></p><p>  4.3 圖書類別管理</p><p>  點擊可以使用系統(tǒng)的基本信息管理界面,這是管理員主要的輸入信息部分,它即可以對數據進行輸入,可以添加圖書的類別。填寫好各項信息后,單擊保存按鈕,系統(tǒng)將對這些信息進行處理。界面見下圖4.4所示:</p><p>  圖4.4圖書管理類別管理</p><p><b>

66、  核心代碼如下:</b></p><p>  public void doPost(HttpServletRequest request, HttpServletResponse response)</p><p>  throws ServletException, IOException {</p><p>  System.out.println

67、("-----------");</p><p>  response.setContentType(Constant.CONTENTTYPE);</p><p>  request.setCharacterEncoding(Constant.CHARACTERENCODING);</p><p>  PayBean pb=new PayBean

68、();</p><p>  String method=request.getParameter("method").trim();</p><p><b>  //圖書類型</b></p><p>  if(method.equals("addTYPE")){</p><p> 

69、 String name=request.getParameter("booktype");</p><p>  int flag=pb.addTYPE(name);</p><p>  if(flag==Constant.SUCCESS){</p><p>  request.setAttribute("message",

70、"操作成功!");</p><p>  request.getRequestDispatcher("admin/type/index.jsp").forward(request, response);</p><p><b>  }</b></p><p><b>  else{</b&g

71、t;</p><p>  request.setAttribute("message", "系統(tǒng)維護中,請稍后再試!");</p><p>  request.getRequestDispatcher("admin/type/index.jsp").forward(request, response);</p>&l

72、t;p><b>  }</b></p><p><b>  }</b></p><p>  else if(method.equals("addBOOK")){</p><p>  String booktype=request.getParameter("booktype")

73、;</p><p>  String name=request.getParameter("name");</p><p>  String author=request.getParameter("author");</p><p>  String cbs=request.getParameter("cbs&qu

74、ot;);</p><p>  String isbn=request.getParameter("isbn");</p><p>  String price=request.getParameter("price");</p><p>  String num=request.getParameter("num&

75、quot;);</p><p>  String intro=request.getParameter("intro");</p><p>  String jyjg=request.getParameter("jyjg");</p><p>  int flag=pb.addBOOK(booktype, name, auth

76、or, cbs, isbn, price, num, intro, jyjg);</p><p>  if(flag==Constant.SUCCESS){</p><p>  request.setAttribute("message", "操作成功!");</p><p>  request.getRequestDispa

77、tcher("admin/book/index.jsp").forward(request, response);</p><p><b>  }</b></p><p><b>  else{</b></p><p>  request.setAttribute("message"

78、, "系統(tǒng)維護中,請稍后再試!");</p><p>  request.getRequestDispatcher("admin/book/index.jsp").forward(request, response);</p><p><b>  }</b></p><p><b>  }<

79、;/b></p><p><b>  4.4 管理員設置</b></p><p>  增加系統(tǒng)管理員。管理員可以添加新的管理員,包括為管理員設置一個密碼。管理員登入后,可以自己修改密碼。同樣,總管理員可以刪除管理員。管理員還可以將狀態(tài)設置成當前在用和關閉狀態(tài)。如下圖4.5所示:</p><p>  圖4.5管理員設置界面</p>

80、;<p><b>  核心代碼如下:</b></p><p>  String username2 = (String)session.getAttribute("user");</p><p>  if(username2 == null){</p><p>  request.getRequestDispa

81、tcher("error.jsp").forward(request, response);</p><p><b>  }</b></p><p><b>  else{</b></p><p>  session.removeAttribute("user");</p>

82、;<p>  session.removeAttribute("list");</p><p>  System.gc();</p><p>  request.getRequestDispatcher("index.jsp").forward(request, response);</p><p><b&

83、gt;  }</b></p><p><b>  }</b></p><p>  else if(method.equals("manager")){//添加修改管理員</p><p>  String username2 = (String)session.getAttribute("user&

84、quot;);</p><p>  if(username2 == null){</p><p>  request.getRequestDispatcher("error.jsp").forward(request, response);</p><p><b>  }</b></p><p>&l

85、t;b>  else{</b></p><p>  String ra = request.getParameter("ra").trim();</p><p>  if(ra.equals("add")){</p><p>  String username = request.getParameter(&

86、quot;username").trim();</p><p>  String password = MD5.MD5(request.getParameter("password").trim());</p><p>  String isuse = request.getParameter("isuse").trim();</p&

87、gt;<p>  if(isuse.equals("在用"))</p><p>  isuse = "1";</p><p><b>  else</b></p><p>  isuse = "2";</p><p>  int flag = lo

88、ginbean.addManager(username, password, "2", isuse);</p><p>  if(flag == Constant.SUCCESS){</p><p>  request.setAttribute("message", "增加管理員成功!");</p><p>

89、;  request.getRequestDispatcher(sysdir+"/system/user.jsp").forward(request, response);</p><p><b>  }</b></p><p>  else if(flag == Constant.SAME_NAME){</p><p> 

90、 request.setAttribute("username", username);</p><p>  request.setAttribute("message", "該用戶名已經存在!");</p><p>  request.getRequestDispatcher(sysdir+"/system/user.

91、jsp").forward(request, response);</p><p><b>  }</b></p><p><b>  else{</b></p><p>  request.setAttribute("message", "系統(tǒng)維護中,請稍后再試!");

92、request.getRequestDispatcher(sysdir+"/system/user.jsp").forward(request, response);</p><p><b>  }</b></p><p><b>  }</b></p><p>  else if(ra

93、.equals("update")){</p><p>  String username = request.getParameter("username").trim();</p><p>  String password = request.getParameter("password").trim();</p>

94、;<p>  String isuse = request.getParameter("isuse").trim();</p><p>  if(!password.equals("")){</p><p>  password = MD5.MD5(password);</p><p><b>  }&

95、lt;/b></p><p>  if(isuse.equals("在用"))</p><p>  isuse = "1";</p><p><b>  else</b></p><p>  isuse = "2";</p><p>

96、;  int flag = loginbean.updateManager(username, password, "2", isuse);</p><p>  if(flag == Constant.SUCCESS){</p><p>  request.setAttribute("message", "修改管理員信息成功!")

97、;</p><p>  request.getRequestDispatcher(sysdir+"/system/user.jsp").forward(request, response);</p><p><b>  }</b></p><p><b>  else{</b></p>

98、<p>  request.setAttribute("message", "系統(tǒng)維護中,請稍后再試!");</p><p>  request.getRequestDispatcher(sysdir+"/system/user.jsp").forward(request, response);</p><p><

99、b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  4.5 圖書借閱管理</p><p>  點擊圖書借閱界面,管理員可以查看到圖書的借閱情況,包括借閱者,圖書名稱,借出的時間,歸還的時間,圖書的狀態(tài),借閱圖書

100、的價格等。管理員同樣可以修改和刪除圖書借閱的內容。操作成功后,點擊保存退出。如圖4.6所示:</p><p>  圖4.6圖書借閱管理界面</p><p><b>  核心代碼如下:</b></p><p>  String card=request.getParameter("card");</p><

101、p>  String bookid=request.getParameter("bookid");</p><p>  String stime=request.getParameter("stime");</p><p>  String etime=request.getParameter("etime");</p

102、><p>  int flag=pb.addJY(card, bookid, stime, etime);</p><p>  if(flag==Constant.SUCCESS){</p><p>  request.setAttribute("message", "操作成功!");</p><p>  

103、request.getRequestDispatcher("admin/jy/index.jsp").forward(request, response);</p><p><b>  }</b></p><p><b>  else{</b></p><p>  request.setAttribut

104、e("message", "系統(tǒng)維護中,請稍后再試!");</p><p>  request.getRequestDispatcher("admin/jy/index.jsp").forward(request, response);</p><p><b>  }</b></p><p

105、><b>  }</b></p><p>  else if(method.equals("upJY")){</p><p>  String id=request.getParameter("id");</p><p>  String card=request.getParameter(&quo

106、t;card");</p><p>  String bookid=request.getParameter("bookid");</p><p>  String stime=request.getParameter("stime");</p><p>  String etime=request.getParam

107、eter("etime");</p><p>  int flag=pb.upJY(id, card, bookid, stime, etime);</p><p>  if(flag==Constant.SUCCESS){</p><p>  request.setAttribute("message", "操作成

108、功!");</p><p>  request.getRequestDispatcher("admin/jy/index.jsp").forward(request, response);</p><p><b>  }</b></p><p><b>  else{</b></p>

109、;<p>  request.setAttribute("message", "系統(tǒng)維護中,請稍后再試!");</p><p>  request.getRequestDispatcher("admin/jy/index.jsp").forward(request, response);</p><p><b&

110、gt;  }</b></p><p><b>  }</b></p><p>  else if(method.equals("delJY")){</p><p>  String id=request.getParameter("id");</p><p>  int

111、 flag=pb.delJY(id);</p><p>  if(flag==Constant.SUCCESS){</p><p>  request.setAttribute("message", "操作成功!");</p><p>  request.getRequestDispatcher("admin/jy/

112、index.jsp").forward(request, response);</p><p><b>  }</b></p><p><b>  else{</b></p><p>  request.setAttribute("message", "系統(tǒng)維護中,請稍后再試!&qu

113、ot;);</p><p>  request.getRequestDispatcher("admin/jy/index.jsp").forward(request, response);</p><p><b>  }</b></p><p><b>  }</b></p><p&

114、gt;  5.4設計測試用例 </p><p>  基于測試原則,本系統(tǒng)在設計測試用例時采用了黑盒測試技術中的劃分等價類方案,其測試用例設計如下:</p><p><b>  劃分等價類</b></p><p><b>  合理類測試用例</b></p><p><b>  不合理類測試用

115、例</b></p><p>  通過以上的測試用例,系統(tǒng)在運行合理的測試用例都能正常運行,系統(tǒng)的穩(wěn)定性良好。在輸入不合理的測試用例數據后,系統(tǒng)不能正常運行,提示輸入有誤。</p><p><b>  五、經驗與總結</b></p><p>  本文提出的基于WEB的圖書管理系統(tǒng)完成了借書,還書,查詢圖書,管理借書證和管理員帳戶設置等

116、主要功能,本系統(tǒng)是基于B/S模式,其后臺部分完全實現借書與還書的手續(xù)操作與對圖書和人員的管理功能,系統(tǒng)界面簡單、易用,任何人都可以在短時間內學會使用該系統(tǒng),在前臺部分,創(chuàng)新設計的WAP圖書查詢部分,不僅大大方便了同學們查詢圖書,而且使得系統(tǒng)多樣化,多元化,具有有很強的擴展性。</p><p>  在技術方面,通過此項目的開發(fā),對基于B/S模式的多層體系結構的JSP技術有了一定的實戰(zhàn)經驗,同時對JavaBean的使

117、用有了深刻的理解。將不同復雜的數據庫操作劃分為獨立的模塊封裝于Bean中,提高了系統(tǒng)的安全性和可移植性。</p><p>  通過對基于JSP的圖書館管理系統(tǒng)的設計與實現,感受頗深,獲益匪淺,同時獲得了許多項目設計與開發(fā)的方法和經驗。</p><p><b>  1.合理的開發(fā)原則</b></p><p><b>  2.科學的開發(fā)過

118、程</b></p><p><b>  3.良好的編程習慣</b></p><p><b>  4.全面有效的測試</b></p><p>  但是由于個人水平有限,導致該系統(tǒng)還有許多不盡人意的地方,比方說所實現的功能還不夠強大、完全和實用,仍然存在著許多漏洞。在做此系統(tǒng)時也不規(guī)范,先考慮功能的實現,沒有綜合考

溫馨提示

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

評論

0/150

提交評論