数据库系统原理课程设计报告图书管理系统.docx
《数据库系统原理课程设计报告图书管理系统.docx》由会员分享,可在线阅读,更多相关《数据库系统原理课程设计报告图书管理系统.docx(16页珍藏版)》请在冰豆网上搜索。
![数据库系统原理课程设计报告图书管理系统.docx](https://file1.bdocx.com/fileroot1/2023-1/24/f97de2e1-d233-4d4c-8a10-a0e277e41780/f97de2e1-d233-4d4c-8a10-a0e277e417801.gif)
数据库系统原理课程设计报告图书管理系统
数据库系统原理课程设计报告
设计题目:
图书管理系统
班级:
学号:
姓名:
指导教师:
完成日期:
成绩:
摘要
在计算机日益普及的今天,对个人而言假设采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。
对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,往往是投入了大量的人力和财力却得不到搞笑的管理效率。
为了便于图书资料的管理需要有效的图书管理软件,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效,智能化管理,到达提高图书借阅信息管理效率的目的。
采用数据库技术生成的的图书借阅管理系统将会极大的方便借阅者并简化图书管理人员和工作人员的劳动,使工作人员从繁忙,复杂的工作进入到一个简单,高效的工作中。
基于这个问题,开发了大学图书管理系统。
第一章系统概述
?
数据库原理及应用?
课程的学习,其主要的目标是能利用课程中学习到的数据库知识与技术较好地开发设计出数据库应用系统,去解决各行各业信息化处理的要求。
本实验主要在于稳固学生对数据库的根本原理和根底理论的理解,掌握数据库应用系统的设计开发的根本方法,进一步提高学生的综合运用所学的知识能力。
为了使数据库的应用系统开发设计合理、规、有序、正确、高效进展,现在广泛采用的是工程化6阶段开发设计过程与方法,它们是需求分析阶段、概念构造设计阶段、逻辑构造设计阶段、物理构造设计阶段、数据库实施、数据库系统运行与维护阶段。
我们按照以上几点开发了图书管理系统数据库。
图书管理系统要求读者较好的正我数据库知识与技术外,还要求读者掌握某种客户端开发工具或语言。
这里是利用dreamwave,myeclipse,tomcat开发工具来实现例如系统的。
用js,angularjs控制前台页面逻辑数据库用postgres,将PostgresQL驱动放在tomcatlib库中即可。
编写语言javaee,程序类型:
web。
这次课程设计能顺利通过是教师的细心指导和我们小组团结一致、努力的结果。
在这次课程设计中每位同学都积极参与各项环节的设计,但我们也有分工。
初步列出如下:
高钢和吴捷担任的工作是对系统的需求分析、构思数据流图、把E-R图转化成关系模型并对其进展规化处理、用SQL语言建表、视图以及文档的初步编写等。
余立,豪和高凯伦的工作是负责画数据流图和E-R图,以及转化初始关系模型,和容摘要等的编写。
高钢是我们组的组长,除对我们所制作单个模块审核外还担任了WORD文档的总结排版。
这次数据库的课程设计让我们对数据库的操作有了进一步的了解,受益匪浅。
第二章系统数据库设计局部
2.1需求分析
2.1.1需求描述
每个学校都有图书馆,最初由于图书数量和种类较少,人工手动管理比拟方便和灵活。
随着社会的开展,图书的数量和种类越来越多,人工手动管理会降低工作的效率,希望建立一个图书管理系统,是为了解决人工手动管理图书信息在实践的问题,从而到达系统化,规化,标准化的水平。
该系统不但给管理者带来了方便,也节省了工作时间从而提高了工作的效率。
2.1.2数据流图
密码输入
2.1.3数据字典
数据流名:
图书
别名:
图书馆库存图书
组成:
书名+书名+作者++剩余数
备注:
无
数据概念设计
E-R图
数据库逻辑构造
图书〔图书编号,图书名,图书的类别,作者,,出版日期〕
图书管理员〔职工号,XX,性别〕
管理〔图书编号,录入,删除,修改〕
数据库物理机构
删除模块
模块划分与功能需求关系
模块编号
模块名称
功能
M1
身份验证模块
输入验证信息
M2
主菜单模块
输入选择的功能
M3
录入模块
插入相关信息
M4
删除模块
删除指定信息
M5
查询模块
查询指定信息
M6
显示模块
以列表方式显示所有信息
M7
备份模块
备份文件信息
M8
退出模块
退出程序保存文件
第三章系统设计
1.程序的功能;
1〉图书信息录入,删除,修改,查询,功能
2〉用postgres保存学生信息数据
用javaee技术实现数据库的操作
2.输入输出的要求;
图书信息
图书编号,名称,价格,出版日期,出版单位……
3.测试数据
Book表
图书编号,名称,价格,出版日期,出版单位
"TS006";"Android";23.50;12;"2014-07-12";"大学";"设计";5
"TS007";"windosphone";23.50;12;"2014-07-25";"大学";"中国历史";4
"TS008";"Android";23.50;12;"2014-07-09";"大学";"设计";5
"TS009";"老人与海";23.50;12;"2013-08-09";"大学";"计算机编程";3
.
数据库设计:
设计表:
图书表book,
用户表:
admin
程序设计:
交互界面采用jsp页面
用js,angularjs控制前台页面逻辑
数据库用postgres,将PostgresQL驱动放在tomcatlib库中即可
后端用jsp,servlet,Bean技术控制get,post,数据库的数据处理,表单的提交
用表格显示图书信息,表单控制图书的增,删,改,查
a>1.一个登录界面
2.表单
3.表格
Main()->登录界面
1.添加add()
2.查找search()
管理员-?
主菜单=?
3.修改
4.删除delete()
表格显示图书数据:
每个按钮对应一个post请求,用angularjs绑定元素实现ng-click=add()提交事件,后端用servlet响应请求,再用Bean处理数据,通过servlet返回数据或页面到前端页面,显示更新信息〔成功或失败〕。
表格可用dreamwave等工具调整样式;
效劳代码可用myeclipse工具编写
效劳器用tomcat
用到的js库angular.js
第四章总结
经过这些天的设计和开发,图书管理系统根本开发完毕。
本系统根本能够完成学生图书的查询、录入、删除、修改等。
这次的课程设计是分组讨论和制作的。
在制作的过程中,我学到的不仅是知识,我还认识到许多事情。
这次设计对我们的综合能力是一次很好的锻炼,使我的编程水平提高了一大步,同时也使我充分的认识到合作的可贵。
在我们所制作的学生学籍管理系统中,涉及到数据库、javaee等,交互界面采用jsp页面用js,angularjs控制前台页面逻辑数据库用postgres,将PostgresQL驱动放在tomcatlib库中即可。
后端用jsp,servlet,Bean技术控制get,post,数据库的数据处理,表单的提交用表格显示图书信息,表单控制图书的增,删,改,查。
还有就是由于我们对数据库知识的掌握有限和不结实,角色和视图的创立没有想象中的完美,备份和复原也只是初步的形成,以致学生学籍管理系统只是到达了根本要求,有待进一步改善,希望教师给予批评。
主要参考文献
javaweb实战1200例
Angularjs中文社区
附录
5、核心源程序清单和执行结果
源程序要按照写程序的规那么来编写。
要构造清晰,重点函数的重点变量,重点功能局部要加上清晰的程序注释。
Book.jsp
<%pagelanguage="java"import="java.util.*"pageEncoding="utf-8"%>
<%pageimport="java.sql.*"%>
<%pageimport="java.io.*"%>
useBeanid="db"class="ligaogang.DB"scope="page"/>
<%
Stringpath=request.getContextPath();
StringbasePath=request.getScheme()+":
//"+request.getServerName()+":
"+request.getServerPort()+path+"/";
%>
DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">
">
MyJSP'book.jsp'startingpage
*FFCCFF;">
图书编号
价格
类别
|
图书名
数量
书类代号
出版日期
|
搜索条件
图书名
类别
条件值
查询
增加
修改
删除
|
*FFCCFF;">
图书编号 | 图书名 | 价格 | 数量 | 出版日期 | | 类别 | 书类代号 |
<%
try{
ResultSetrt=(ResultSet)session.getAttribute("resultset");
while(rt.next()){
Stringbarcode=rt.getString("barcode");
StringbookName=rt.getString("bookName");
intbookType=rt.getInt("bookType");
floatprice=rt.getFloat("price");
intcount=rt.getInt("count");
java.util.DatepublishDate=rt.getDate("publishDate");
StringpublishName=rt.getString("publish");
StringintroductionName=rt.getString("introduction");
%>
<%=barcode%> | <%=bookName%> | <%=price%> | <%=count%> | <%=publishDate%> | <%=publishName%> | <%=introductionName%> | <%=bookType%> |
<%}
}catch(Exceptione){
out.println(e);
}
%>