收藏 分销(赏)

基于java的小型图书管理系统与实现.doc

上传人:w****g 文档编号:2489844 上传时间:2024-05-30 格式:DOC 页数:20 大小:197.50KB 下载积分:10 金币
下载 相关 举报
基于java的小型图书管理系统与实现.doc_第1页
第1页 / 共20页
基于java的小型图书管理系统与实现.doc_第2页
第2页 / 共20页


点击查看更多>>
资源描述
目 录 小型图书管理系统设计与实现 目 录 1、 引言 3 1.1选题 3 1.2开发计划 3 1.3开发工具与环境配置 3 2、 系统概述 4 2.1需求分析 4 2.2系统的架构 4 3、 详细设计 5 3.1功能结构图 5 3.2数据库设计 5 3.3页面的结构和关系图 6 3.4模块设计 7 4. 系统实现 18 5.结束语 20 1、 引言 1.1选题 为了实现图书管理的自动化,现对其设计相应的系统。与图书馆管理信息系统不同,本系统为小型图书管理系统,用于个人对所拥有的图书进行管理,具有管理员登录以及图书的增删改查功能。 1.2开发计划 设计一个小型图书管理系统,该系统由登录模块和功能模块组成。登录模块实现管理员登录,功能模块分为图书查询、图书入库、图书删除、图书修改四个部分。 1.3开发工具与环境配置 操作系统:Windows 7 数据库服务器:SQL server 2000(采用ODBC数据源连接) Web服务器:Tomcat 开发工具:eclipse6.0 环境配置 JDK安装路径:C:\jdk Tomcat服务器安装路径:D:\java软件\tomcat\apache-tomcat-7.0.37-windows-x86\apache-tomcat-7.0.37 环境变量设置JAVA_HOME=D:\jdk CLASSPATH=%JavaHome%\lib\dt.jar;%JavaHome%\lib\tools.jar PATH变量添加的部分:%JAVA_HOME%\bin 2、 系统概述 2.1需求分析 2.1.1 图书管理系统需求概述 图书管理系统的开发主要涉及到管理员登录和图书信息管理。图书信息管理包括:添加新进图书、删除旧图书、修改图书信息、图书查询。图书管理员可以浏览、查询、添加、删除、修改图书的基本信息。 2.1.2 功能需求 (1)管理员登录——只有管理员才能对图书信息进行操作 (1)图书信息浏览——对入库的图书按编号进行浏览; (2)图书查询——根据书名对图书进行快速查询; (3)图书管理——对图书馆的书籍进行管理,添加、删除以及修改信息; 2.1.3 性能需求 可靠性和可用性需求: (1)系统中的软件可以每天使用24小时,每年使用365天; (2)系统中的软件故障率小于等于5%。 2.2系统的架构 考虑到本系统简单、容易实现,故没有采用传统的MVC模式,而是以纯JSP页面来实现各模块之间的跳转。 3、 详细设计 3.1功能结构图 登录界面 图书管理面板 编辑图书 查询图书 删除图书 添加图书 图1 图书管理系统功能结构图 3.2数据库设计 根据系统分析,设计图书信息管理系统的数据库(tsgl)表有:管理员信息表(表1)、图书信息表(表2)。表结构如下: 表1:gly_id 字段 说明 类型 长度 主键 备注 username 用户名 varchar 50 no password 密码 varchar 30 no 表2:t_book 字段 说明 类型 长度 主键 备注 id 图书编号 char 11 yes name 书名 varchar 50 no author 作者 char 10 publish 出版社 varchar 50 no price 图书价格 char 11 no 登录界面 login.jsp 3.3页面的结构和关系图 验证valid.jsp 密码错误 图书管理面板bookList.jsp 保存修改操作SavaBookEdit.jsp 保存插入操作SaveBookAdd.jsp 修改操作 bookEdit.jsp 删除操作 bookDel.jsp 插入操作bookAdd.jsp 查询 操作 图书管理面板bookList.jsp 密码正确 3.4模块设计 3.4.1登录模块 登录页面:Login.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>登录图书管理系统 </title> <style type="text/css"> <!-- .STYLE1 { font-size: 36px; font-weight: bold; } --> </style> </head> <body bgcolor=cyan> <form method="post" action="valid.jsp"> <table width="400" height="120" border="1" align="center"> <caption> <span class="STYLE1">登录图书管理系统</span> </caption> <tr> <td width="166">用户名:</td> <td width="318"><input name="username" type="text" id="username"></td> </tr> <tr> <td>密码:</td> <td><input name="password" type="password" id="password"></td> </tr> <tr> <td colspan="2" align="center"> <input type="submit" name="Submit" value="登录"> <input type="reset" name="Submit2" value="取消"> </td> </tr> </table> </form> </body> </html> 验证程序:valid.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.sql.*" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>判断登录</title> </head> <body> <% String user=request.getParameter("username"); String pass=request.getParameter("password"); Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con = DriverManager.getConnection("jdbc:odbc:JDBC-ODBC","sa","sa"); PreparedStatement ps =con.prepareStatement("select * from gly_id where username=? and password=?"); ps.setString(1,user); ps.setString(2,pass); ResultSet rs = ps.executeQuery(); if(rs.next()){response.sendRedirect("bookList.jsp");} else response.sendRedirect("Login.jsp"); %> </body> </html> 3.4.2图书管理模块 (1)图书浏览&&查询页面:bookList.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.sql.*"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>图书管理面板</title> <style type="text/css"> <!-- .STYLE1 { font-size: 36px; font-weight: bold; } --> </style> </head> <body> <form name="form1" method="get" action="bookList.jsp"> <table width="600" border="1" align="center" bgColor="#ffffff"> <br> <caption> <span class="STYLE1">图书信息一览表</span> </caption> <br> <center>请输入书名:<input type="text" name="name" size="16" maxlength="25"><input type="submit" name="submit" value="查询"></center> <br> <tr> <td width="98" bgColor="#808000">编号</td> <td width="118" bgColor="#808000">书名</td> <td width="118" bgColor="#808000">作者</td> <td width="108" bgColor="#808000">出版社</td> <td width="78" bgColor="#808000">价格</td> <td width="60" bgColor="#808000">编辑</td> <td width="60" bgColor="#808000">删除</td> </tr> <% String name=null; String sql=""; ResultSet rs=null; if(request.getParameter("name")!=null) name=new String(request.getParameter("name").getBytes("ISO-8859-1"),"UTF-8"); if (name==null) sql="select * from t_book order by id"; else sql="select * from t_book where name like'%"+name+"%' order by id"; System.out.print(name); try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con = DriverManager.getConnection("jdbc:odbc:JDBC-ODBC","sa","sa"); Statement st=con.createStatement(); rs=st.executeQuery(sql); while(rs.next()){ String ID=rs.getString("id"); %> <tr> <td><%=ID %></td> <td><%=rs.getString("name") %></td> <td><%=rs.getString("author") %></td> <td><%=rs.getString("publish") %></td> <td><%=rs.getString("price") %></td> <td><a href="bookEdit.jsp?id=<%=ID%>">修改</a></td> <td><a href="BookDel.jsp?id=<%=ID%>">删除</a></td> </tr> <% } st.close(); con.close(); }catch(Exception e){ e.printStackTrace(); } %> <tr> <td colspan="7" align="center" bgcolor="#ff8000"> <input name="add" type="button" value="添加图书" onClick="location='BookAdd.jsp'"> </td> </tr> </table> </form> </body> </html> (2) 图书添加页面:BookAdd.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>添加图书信息</title> <style type="text/css"> <!-- .STYLE1 { font-size: 36px; font-weight: bold; } --> </style> </head> <body> <form name="form1" method="post" action="bookSaveAdd.jsp"> <div align="center" class="STYLE1">添加图书信息 </div> <table width="300" height="120" border="1" align="center"> <tr> <td>编号:</td> <td><input type="text" name="id" ></td> </tr> <tr> <td width="74">书名:</td> <td width="210"><input type="text" name="name"></td> </tr> <tr> <td>作者:</td> <td><input type="text" name="author" ></td> </tr> <tr> <td>出版社:</td> <td><input type="text" name="publish" ></td> </tr> <tr> <td>价格:</td> <td><input type="text" name="price" ></td> </tr> <tr> <td colspan="2" align="center"> <input type="submit" name="Submit1" value="提交"> <input type="reset" name="Submit2" value="重置"> </td> </tr> </table> </form> 保存添加程序:SaveBookAdd.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.sql.*"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>图书管理面板</title> <style type="text/css"> <!-- .STYLE1 { font-size: 36px; font-weight: bold; } --> </style> </head> <body> <form name="form1" method="get" action="bookList.jsp"> <table width="600" border="1" align="center" bgColor="#ffffff"> <br> <caption> <span class="STYLE1">图书信息一览表</span> </caption> <br> <center>请输入书名:<input type="text" name="name" size="16" maxlength="25"><input type="submit" name="submit" value="查询"></center> <br> <tr> <td width="98" bgColor="#808000">编号</td> <td width="118" bgColor="#808000">书名</td> <td width="118" bgColor="#808000">作者</td> <td width="108" bgColor="#808000">出版社</td> <td width="78" bgColor="#808000">价格</td> <td width="60" bgColor="#808000">编辑</td> <td width="60" bgColor="#808000">删除</td> </tr> <% String name=null; String sql=""; ResultSet rs=null; if(request.getParameter("name")!=null) name=new String(request.getParameter("name").getBytes("ISO-8859-1"),"UTF-8"); if (name==null) sql="select * from t_book order by id"; else sql="select * from t_book where name like'%"+name+"%' order by id"; System.out.print(name); try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con = DriverManager.getConnection("jdbc:odbc:JDBC-ODBC","sa","sa"); Statement st=con.createStatement(); rs=st.executeQuery(sql); while(rs.next()){ String ID=rs.getString("id"); %> <tr> <td><%=ID %></td> <td><%=rs.getString("name") %></td> <td><%=rs.getString("author") %></td> <td><%=rs.getString("publish") %></td> <td><%=rs.getString("price") %></td> <td><a href="bookEdit.jsp?id=<%=ID%>">修改</a></td> <td><a href="BookDel.jsp?id=<%=ID%>">删除</a></td> </tr> <% } st.close(); con.close(); }catch(Exception e){ e.printStackTrace(); } %> <tr> <td colspan="7" align="center" bgcolor="#ff8000"> <input name="add" type="button" value="添加图书" onClick="location='BookAdd.jsp'"> </td> </tr> </table> </form> </body> </html> (3) 删除操作: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.sql.*"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="refresh" content="3;URL=bookList.jsp"> <title>删除图书</title> </head> <body> <% String strId = request.getParameter("id"); Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con = DriverManager.getConnection("jdbc:odbc:JDBC-ODBC","sa","sa"); PreparedStatement ps = con.prepareStatement("delete from t_book where id=?"); ps.setString(1,strId); ps.execute(); con.close(); %> 正在删除图书,3秒后自动跳转...... </body> </html> (4) 修改操作:bookEdit.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.sql.*" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>编辑图书信息</title> <style type="text/css"> <!-- .STYLE1 { font-size: 36px; font-weight: bold; } --> </style> </head> <body> <% String strId = request.getParameter("id");//获取传过来的参数(网络上传输的只能是字符串) Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con = DriverManager.getConnection("jdbc:odbc:JDBC-ODBC","sa","sa"); PreparedStatement ps =con.prepareStatement("select * from t_book where id=?"); ps.setString(1,strId); ResultSet rs=ps.executeQuery(); if(rs.next()){ String ID=rs.getString("id"); %> <form name="form1" method="post" action="bookSaveEdit.jsp"> <input type="hidden" name="id" value="<%=ID%>"> <div align="center" class="STYLE1">编辑图书信息</div> <table width="300" height="120" border="1" align="center"> <tr> <td>编号:</td> <td><input name="id" type="text" value="<%=ID%>"></td> </tr> <tr> <td width="74">书名:</td> <td width="210"><input type="text" name="name" value="<%=rs.getString("name") %>"></td> </tr> <tr> <td width="74">作者:</td> <td width="210"><input type="text" name="author" value="<%=rs.getString("author") %>"></td> </tr> <tr> <td>出版社:</td> <td><input type="text" name="publish" value="<%=rs.getString("publish") %>"></td> </tr> <tr> <td>价格:</td> <td><input type="text" name="price" value="<%=rs.getString("price") %>"></td> </tr> <tr> <td colspan="2" align="center"> <input type="submit" name="Submit" value="确定修改"> <input type="reset" name="Submit2" value="取消"> </td> </tr> </table> </form> <% } con.close(); %> </body> </html> 保存修改程序:SavaBookEdit.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.sql.*" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>保存编辑</title> </head> <body> <% request.setCharacterEncoding("UTF-8"); String name=request.getParameter("name"); String author=request.getParameter("author"); String pub=request.getParameter("publish"); String price=request.getParameter("price"); String id=request.getParameter("id"); Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con = DriverManager.getConnection("jdbc:odbc:JDBC-ODBC","sa","sa"); PreparedStatement ps =con.prepareStatement("update t_book set name=?,author=?,publish=?,price=? where id=?"); ps.setString(1,name); ps.setString(2,author); ps.setString(3,pub); ps.setString(4,price); ps.setString(5,id); ps.execute(); con.close(); response.sendRedirect("bookList.jsp"); %> </body> </html> 4. 系统实现 登录页面: 图书预览页面: 图书修改页面: 图书查询页面: 5.结束语 从上面的演示中可以看出,此系统可以完成用户登录和图书管理两大功能。在本系统的应用下可以实现图书管理员按照书名查询书库的藏书,方便的增添图书,删除图书,修改图书信息。测试阶段一方面发现了系统的各种错误,另外一方面验证了修改后的系统能够实现提高图书管理工作效率的预期目的。 不知不觉中,课程设计快接近尾声。回顾这几天,短暂而充实。经过这一个学期的学习,使我对java web开发有了一定的了解,从开始的j2se到后来的j2ee,一步一步的前进,一点一点的积累,最后完成了该图书管理系统的设计与实现。也是由于时间比较紧张只有五天时间,所以该系统功能比较简单,暂且留待日后在完善。 目 录 第一章 总 论 1
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 研究报告 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服