javaweb 图书借阅管理系统课程设计实验报告

javaweb 图书借阅管理系统课程设计实验报告


2024年1月21日发(作者:)

《Java Web 应用开发》课程设计

课程名称:

《JAVA Web应用开发》课程设计

设计题目:

图书管理系统

指导教师: 刘荣辉 苏靖枫

班 级: 0844131

学 号: 084413139

学生姓名: 刘攀辉

成 绩:

评 语:

计算机与数据科学学院

2016年6月12日

目录

第一章.系统概述 ........................................................................................................................... 3

1.1开发背景 ............................................................................................................................. 3

1.2开发环境 ............................................................................................................................. 3

第二章.可行性分析 ....................................................................................................................... 4

2.1 技术可行性 ........................................................................................................................ 4

2.2 操作可行性 ........................................................................................................................ 4

2.3经济可行性 ......................................................................................................................... 4

第三章.需求分析 ........................................................................................................................... 5

3.1 系统功能 ............................................................................................................................ 5

3.2 系统功能描述 .................................................................................................................... 5

第四章.系统分析与设计 ............................................................................................................... 6

4.1 系统分析 ............................................................................................................................ 6

4.1.1 组织结构分析 ......................................................................................................... 6

4.1.2 业务流程分析 ......................................................................................................... 7

4.1.3 数据字典 ................................................................................................................. 8

4.2 系统设计 ............................................................................................................................ 9

第五章.代码设计 ......................................................................................................................... 10

5.1 代码块设计 ...................................................................................................................... 10

5.2 代码结构设计 .................................................................................................................. 17

第六章.输入设计 ......................................................................................................................... 17

6.1 输入界面设计 .................................................................................................................. 17

6.2 菜单设计 .......................................................................................................................... 21

第七章.输出设计 ......................................................................................................................... 23

7.1 系统输出内容设计 .......................................................................................................... 23

7.2 输出界面设计 .................................................................................................................. 24

第八章.心得体会 ......................................................................................................................... 25

第九章.参考文献 ......................................................................................................................... 26

第一章.系统概述

1.1开发背景

随着现代科学技术的迅猛发展,计算机技术已经渗透到各个领域,成为各行各业必不可少的工具,特别是Internet技术的推广和信息高速公路的建立,使IT产业在市场竞争中越发显示出其独特的优势,步入信息化时代,有巨大的数据信息等待加工处理和传输,这使得对于数据库的进一步开发和利用的需要显得尤为迫切。

随着教育的不断普及,接受高等教育的人越来越多,高校生源的扩充与图书借阅的复杂化对管理提出了更高的要求。面对庞大繁琐的借阅量,要进行充分有效的管理,就需要高效的处理方式和管理方法。因此增强图书管理的手段是非常必要的。

我们通过对图书借阅的管理,针对图书馆对读者借阅情况的实际需要,开发了这套小型的图书借阅管理系统。在开发过程中,我们针对当前图书管理的特点和技术人员的实际水平,采用基于Windows图形用户界面这一易学易用的操作环境,在系统设计过程中,我们尽量采用易懂易读的人机界面,使用户可以在短期内完全掌握。我们又始终把系统的正确性放在首位,力求数据的完整和处理的正确性。在此基础上优化程序代码,加速系统运行和减少对系统资源的占用。

1。2开发环境

MyEclipse 10 MySQL

第二章.可行性分析

2。1 技术可行性

在学校行业中从业的工作人员一般都要求掌握计算机技术,具有一定的软硬件基础,会使用各种管理软件,熟悉IT产品。所以在新系统投入使用时,只要对员工进行简单的说明和培训,系统的功能和使用方法就基本上能够是系统顺利运行。

2.2 操作可行性

本系统采用基于Windows的图形用户界面,而该系统是大家熟悉的操作系统,对于那些有一般的计算机知识的人员就可以轻松上手。而整个图书借阅管理系统采用最友好的交互界面,简单明了,不需要对数据库进行深入的了解。

由此,该系统的操作是可行的,且有必要开发该系统。

2.3经济可行性

(1)系统比较小开发者有能力承担系统开发费用

使用方可以维持不变选择手工管理模式,但显然是不科学的,浪费人力物力的同时还得不到好的效果,管理混乱,更新不及时,吃力不讨好.而图书馆作为教育机构,其员工总体素质比很多其他企事业单位具有优势。所以图书馆可以自己配置人员进行开发学生管理的系统,在经济上是可行的。

(2)新系统将为图书馆带来很多的方便

管理系统是一个信息化、智能化和先进管理理念的集合体。而管理是一个动态过程,在其运行过程中要采取多项措施。所以在管理中获得经济效益是一个综合效益,要对它进行直接定量的分析是比较困难的。一般新系统带来的经济效益是简介的,其最主要的表现就是减少了企业管理费用和人力开支。而其它一些繁琐的信息都通过新系统来加以分析解决,不仅节省了大量的时间,还为学校的各

项决策提供了宝贵的资料,为图书馆带来很多的方便.

综合以上三方面,该系统具有很高的开发可行性,无论是从技术上或者经济上还是操作上.因此,可以设计该系统的数据流程图,建立数据字典。

第三章.需求分析

3.1 系统功能

此系统功能主要分三个模块,有读者登录系统,图书馆员登录系统,系统管理员登录系统。三种登录身份登录后会有不同的操作权限,读者登录,读者可以进行图书的借阅,图书归还,个人信息查找;图书管理员登录,管理员可以进行图书的添加,图书下架,个人信息的修改;系统管理员登录,系统管理员可以对读者、管理员进行管理,添加,删除,修改管理员以及读者的信息。

3.2 系统功能描述

选择登录身份:不同的登陆者具有不同的系统权限,具有不同权限者访问不同的系统资源,主要是为了限制越权操作

用户登录:只有注册过的有密码的用户才能登录,主要是为了防止没有用户信息的读者借书没有记录。

图书查找:任何读者都可以通过此功能查找自己喜欢的书记在本图书馆中是否上架.方便读者更快的了解图书的信息。

用户注册: 该功能是针对想借书看的读者而创建的,方便没有注册用户注册信息借阅图书。

子系统:读者

图书借阅:读者登陆后可根据此功能,进行图书借阅,借阅记录会存档。

图书归还: 登陆后读者可以根据自己的账号,进行对以借阅的图书进行归还。消除借阅记录.

借阅查询:登陆后读者可以查看自己未归还的图书,通过记录查看快到期的借阅图书.

个人信息查询:登陆后查询自己的个人信息包括密码.

第四章.系统分析与设计

4。1 系统分析

4。1.1 组织结构分析

作为图书管理系统,其主要的需求人员是借阅者,借阅者对其的要求可以大体概括如下:

1) 能按各种方式,比如书名、编号、作者等查询图书馆的藏书情况;

2) 能熟悉使用图书管理系统;

3) 能方便地借阅图书、续借图书、归还图书;

4) 能查询自己的基本资料、借阅图书情况;

5) 能方便图书管理员对图书的录入登记、注销;

6) 能方便对读者的登记或注销;

7) 可以对图书做出及时的更新,上架与下架,及时更改图书信息.

4。1。2 业务流程分析

用户注册

用户登录

系统管理员

图书管理员

注册读者

管理各类用户

管理自己信息

管理自己信息

管理自己信息

管理自己信息

图书借阅

图书归还

借阅查询

用户退出

图4.1 流程分析图

4.1。3 数据字典

该系统涉及的是图书管理系统,所以主要存放的是读者对图书的借阅情况,其他的是其他登录身份的登录。

表4。1数据项表

编号 数据项名 数据项含义 存储结构 别名

01 Uid 读者编号 Varchar(9)

02 Uname 读者姓名 Varchar(20)

03 Bid 图书编号 Varchar(9)

04 Bname 图书名称 Varchar(20)

05 Borrowdate 借阅时间 Date

06 Author 作者 Varchar(20)

07 Cbs 出版社 Varchar(50)

08 Bdate 出版日期 Date

09 Price 定价 Double

10 Pwd 密码 Varchar(8)

11 Sex 性别 Varchar(8)

12 Age 年龄 Varchar(3) 读者年龄

13 Sal 工资 Double 管理员工资

表4。2数据结构表

编号 数据结构名称 数据结构含义 组成

Id,name,author,cbs,01 Book 图书

bdate,price

02 Borrowing 借阅 Uid,uname,bid,bname,borrowdate

03 Admin 用户 t_user,bookadmin,systemadmin

表4。3数据存储表

名称 输入的数据流 输出的数据流 组成

图书表 图书的基本信息 图书信息及数据 图书信息

读者登录表 读者基本信息 读者信息及数据 登录信息

图书管理员登录图书管理员基本图书管理员信息登录信息

表 信息 及数据

系统管理员登录系统管理员基本系统管理员及数登录信息

表 信息 据

借阅表 借阅信息 借阅数据 借阅信息

4。2 系统设计

E-R图设计:

读者

密码

姓名

作者

性别

年龄

编号

n

借阅

n

出版社

书名

图书

编号

出版日期

1

定价

管理

n

图书管理员

姓名

工资

性别

号入职日期

密码

图4.2 关系E—R图

第五章.代码设计

5。1 代码块设计

1.样式代码块:

body

{

margin:0 auto;

#top

{

background-image:url(../image/2。jpg);

width:1000px;

height:150px;

margin:0 auto;

#top1

height:120px;

#top2

{

height:30px;

font—size:12pt;

}

#top21

width:58%;

float:left;

#top22

{

width:42%;

float:right;

font-size:14pt;

}

#mid

width:1000px;

height:450px;

margin:0 auto;

}

#left

width:20%;

float:left;

#lefttop

{

background-image:url(。./image/3。jpg);

height:50%;

text-align:center;

#leftbottom

height:50%;

background—image:url(。./image/1。jpg);

display:block;

#right

width:80%;

height:450px;

float:right;

background-color:#dccbde;

font—size:18pt;

text—align:center;

}

#bottom

{

width:1000px;

height:30px;

margin:0 auto;

text—align:center;

background—color:#9a9ac9;

}

2。身份登录servlet代码块:

package identify;

import 。IOException;

import java。io。PrintWriter;

import 。Connection;

import java。sql。DriverManager;

import java。edStatement;

import java。sql。ResultSet;

import javax。tException;

import javax。。HttpServlet;

import javax。rvletRequest;

import rvletResponse;

public class identify extends HttpServlet {

public void doPost(HttpServletRequest request,

HttpServletResponse response)

throws ServletException, IOException {

racterEncoding("utf-8”);

String userid = request。getParameter(”userid");

String userpwd = request。getParameter("userpwd”);

String usersf = request。getParameter("usersf");

//request。setAttribute("userid", userid);

if (usersf。equals("普通用户")) {

try {

n("hello world”);

Class。forName(”。");

Connection conn = nection("jdbc:mysql://localhost:3306/bookmanage”, "root”, ”123456”);

PreparedStatement state = conn。prepareStatement("select * from t_user”);

ResultSet rs = null;

rs = eQuery();

boolean bool=false;

while(rs。next())

{

String id=rs。getString("id”);

String pwd=ing("pwd”);

if ((userid)&&pwd。equals(userpwd)) {

bool=true;

break;

if(bool)

direct("login/”);

if(!bool)

{

response。sendRedirect("login/false。jsp”);

} catch (Exception e) {

// TODO Auto—generated catch block

e。printStackTrace();

}

if(("图书管理员"))

try {

e("");

Connection conn = DriverManager。getConnection("jdbc:mysql://localhost:3306/bookmanage", ”root", "123456");

PreparedStatement state =

eStatement("select * from bookadmin");

ResultSet rs = null;

rs = state。executeQuery();

boolean bool=false;

while(rs。next())

{

String id=ing(”id");

String pwd=ing("pwd");

if ((userid)&&pwd。equals(userpwd))

{

bool=true;

break;

}

if(bool)

{

direct(”login/”);

if(!bool)

{

direct(”login/”);

}

} catch (Exception e) {

// TODO Auto—generated catch block

tackTrace();

}

if(("系统管理员"))

{

try {

e(”com。mysql。”);

Connection conn =

nection(”jdbc:mysql://localhost:3306/bookmanage", ”root", ”123456");

PreparedStatement state = conn。prepareStatement("select * from systemadmin");

ResultSet rs = null;

rs = state。executeQuery();

boolean bool=false;

while(())

String id=rs。getString(”id”);

String pwd=ing("pwd”);

if ((userid)&&pwd。equals(userpwd)) {

bool=true;

break;

}

if(bool)

{

response。sendRedirect(”login/systemmanager。jsp");

}

if(!bool)

{

direct(”login/false。jsp”);

}

} catch (Exception e) {

// TODO Auto—generated catch block

tackTrace();

}

代码块:

〈%@ page language=”java" import=”。*"

pageEncoding=”utf-8"%〉

〈%

String path = textPath();

String basePath = request。getScheme()+”://”+request。getServerName()+”:”+request。getServerPort()+path+”/”;

%〉

〈!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4。01 Transitional//EN">

〈head〉

〈base href=”〈%=basePath%>”〉

〈title〉用户登录

〈link rel=”stylesheet” type=”text/css" href="${pageContext。tPath}/CSS/style1。css”〉

〈body〉

〈div id="top22”>

  ;    

〈a href="login/">用户注册

〈/div>

〈div id=”mid">

〈div id="lefttop”>

〈form name="form01” action="identify” method="post”〉

用户登录

身份选择:

普通用户〈input type=”radio" name=”usersf” value=”普通用户" />〈br>

图书管理〈input type="radio" name="usersf" value=”

图书管理员” />

系统管理

帐号:〈input type="text" name="userid" />〈br>

密码: onclick=”isempty()” />

〈/form>

〈/div〉

〈table style="width: 150px; height: 200px; font-size: 9pt;

font-family:

宋体; vertical—align :top ; text-align :center;

background-repeat :no-repeat” border=”0” cellpadding=”0”

cellspacing="0"〉

〈td style="width: 204px; height: 129px;">

onmouseover="()" scrollAmount="2" scrollDelay="10”

style=”width: 120px;height: 150px; font—size: 15pt; font-family:

楷体; vertical-align :top ; text—align :center " >

图书管理系统是一个基于Javaweb技术 平台开发而成,在系统中利用MySQL数据库进行数据存储,系统内部拥有三种登

录身份,分别是系统管理员,图书管理员,普通读者。每种登 录 身份拥有不同的权限功能。所有用户可根据自己的验证身份进行操作。

〈br〉 谢谢!!!

〈/marquee〉

〈/tr>

〈tr style="width:150px;height:20"〉

〈/div〉

〈div id=”right”〉〈br〉

欢迎来到图书管理系统

〈/div〉

〈div id=”bottom”〉制作人:刘攀辉〈/div〉

〈/body〉

〈/html>

5.2 代码结构设计

在编写系统代码时主要设置了数据层在servlet中设置了三个实体类,主要是用于设置其数据的属性和一些行为.其次还设置了数据访问层在中,设置了一些接口,并设置了一些类对接口进行实现,主要是实现对数据库的访问.还设置了一个样式层在中,制定了一些为前台代码服务的s样式,最后形成可操作的前台页面。

第六章.输入设计

6。1 输入界面设计

6.1.1登陆界面

图6。1 登陆界面

6。1。2读者功能界面

图6.2 读者功能界面

6.1.3图书借阅界面

图6。3 读书借阅界面

6.1.4图书归还

图6.4 图书归还界面

6.1。5借阅查询

图6.5 借阅查询界面

6.1。6个人信息查询

图6.6 个人信息查询

6。1.7图书管理员系统界面

图6.7 图书管理员系统界面

6.1。8系统管理员登录界面

图6.8 系统管理员登录界面

6。2 菜单设计

6。2。1登录菜单

图6.9 登录菜单图

6.2.2首页菜单

图6。10首页菜单

6。2。3读者系统菜单

图6.11 读者系统菜单

6.2.4图书管理员系统菜单

图6.12 图书管理员系统菜单

6.2.5系统管理员系统菜单

图6.13 系统管理员系统菜单

第七章.输出设计

7.1 系统输出内容设计

7.1。1借书输出

图7.1 借书输出

7。1.2图书借阅查询

图7。2 图书借阅查询

7。2 输出界面设计

7。2.1个人信息输出

图7.3

个人信息输出

7.2.2图书查询输出结果

图7.4 图书查询输出结果

7.2.3用户注册输出

图7.5 用户注册输出

第八章.心得体会

这次的课程设计周,在这短暂的一个多星期中自己要独立的设计完成一个系统,尽管从大一课设开始已经做过了很多系统,但是由于所应用的语言不同,在课程设计过程中还是遇到了一些麻烦。因为平时学的东西不是太深入,所以在设计期间遇到了一些问题。也因此找了很多资料,学习了很多知识。为了学到更多的知识,能够独立的完成这次课程设计,在课程设计阶段也努力的学习了很多知识,有了很大的体会。掌握了许多的新知识.

在独立完成课程设计阶段,遇到了一个个问题,在自己的努力下通过查阅资料解决这些问题,就是这样的循环往复中学到了很多知识,对用jsp完成系统的整个流程有了个初步的了解。从以前的迷茫渐渐的明白系统的一些知识,这个过程很很好,同时也对平时所学的知识有了一个整体的应用以及更深的理解。

从课程设计开始之后,自己就开始仔细深思选择什么题目对自己的提高比较大.在成功选题之后,由于知道时间不够自己提前就开始了一些准备,最后

终于按照自己的想法完成了任务。看到自己的成果成功的在页面上无错的运行之后,自己内心满是欢喜,尽管在这一段时间里很是劳累,但是毋庸置疑在这一个多星期中真的学到了许多的知识,收获与付出成正比,尽管很累但是内心是快乐的。最重要的是更近一步的对知识的理解。

第九章.参考文献

[1] 赵俊峰,姜宁,焦学理《Javaweb应用开发案例教程》[M],清华大学出版社,2012年1月

[2] 张桂元、贾燕枫,《Eclipse入门与项目实践(第1版)》[M],人民邮电出版社,2006年1月

[3] 万峰科技,《JSP网站开发四“酷”全书》[M], 电子工业出版社,2005年9月

[4] 廖若雪,《JSP高级编程》[M] 机械工业出版社,2001年3月第1版

[5] 百度文库


发布者:admin,转转请注明出处:http://www.yc00.com/news/1705850079a1425703.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信