java毕业设计

您所在的位置:网站首页 jsp个人主页设计方案 java毕业设计

java毕业设计

2024-07-10 16:40| 来源: 网络整理| 查看: 265

基于JSP+mysql的图书馆借阅系统设计与实现(毕业论文+程序源码)

大家好,今天给大家介绍基于JSP+mysql的图书馆借阅系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。需要下载开题报告PPT模板及论文答辩PPT模板等的小伙伴,可以进入我的博客主页查看左侧最下面栏目中的自助下载方法哦

文章目录:

基于JSP+mysql的图书馆借阅系统设计与实现(毕业论文+程序源码)1、项目简介2、资源详情3、关键词4、毕设简介5、资源下载

1、项目简介 随着电脑、手机等信息工具的普及,人们能更加完善、快捷地处理信息数据。在图书馆的日常运作中,由于图书借阅和用户查询次数繁多,需要进行繁杂的信息数据管理。为了能更高效、快捷、稳定地管理图书馆的数据信息,本文设计并实现了一套基于Web的图书管理借阅系统。系统采用Browser/Server运行模式,基于JAVA开发平台,并使用SQL Server作为后台数据库系统。系统主要实现了以下几个功能:查询图书、借还图书、图书管理、读者信息管理,读者留言、公告栏等。读者只需要通过浏览器访问本系统,就可以轻松实现图书查询、图书借还等操作。同样,图书管理员也可以使用本系统方便快捷地完成图书馆的信息数据管理工作。另外,由于手机使用的普及,本系统中还新加入了WAP查询功能,借助于无线网络,读者可以通过使用手机,更加方便、快捷地完成图书查询的工作,这为读者带来了更多便捷。

2、资源详情

项目难度:中等难度 适用场景:相关题目的毕业设计 配套论文字数:7883个字25页 包含内容:全套源码+配整论文

3、关键词 图书管理系统;WAP;JSP 4、毕设简介

提示:以下为毕业论文的简略介绍,项目完整源码及完整毕业论文下载地址见文末。

1 引 言 1.1 课题背景 当今时代是飞速发展的信息时代,计算机与信息处理技术日渐成熟。随着Internet和计算机网络技术的蓬勃发展,Web技术得到了迅猛地发展。在科学技术高速发展的今天,信息技术已经渗透到社会发展的每一个领域,而计算机技术为工作提供了方便性、高效性、灵活性及安全性,尤其Web技术的高速发展将计算机的应用提升到另一个层次。而图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,利用计算机来管理复杂的信息,能够充分发挥计算机的优越性。

1.2 课题研究意义 尽管有的图书馆有图书管理系统,但是仅仅限于图书管理员使用,属于单机系统,对于Internet服务几乎没有,更不用说是WAP等服务。这样的图书管理系统根本没有发挥它的效力,资源闲置比较突出。 基于这此问题,有必要建立一个图书管理系统有效的支持WEB和WAP的服务,以使图书管理工作规范化,系统化,程序化,提高信息处理的速度和准确性,并且能通过Internet能够及时、准确修改图书情况。 本系统的设计主要有效的支持WEB访问和WAP访问,使得资源利用最大化用户只需要通过浏览器或者手机WAP访问就可以实现操作,操作简单灵活。

2 需求分析 2.1 应用需求分析 图书管理系统需要满足来自两方面的需求,分别是图书借阅者和图书馆工作人员。图书借阅者的需求是查询图书馆所存的图书;图书馆工作人员对图书借阅者的借阅及还书要求进行操作,同时形成借书或还书操作,有修改图书借阅者借书和还书记录的权限,实现对图书信息、借阅者信息、总体借阅情况信息的管理和统计、工作人员和管理人员信息查看及维护。图书馆管理员可以浏览、查询、添加、删除、修改、统计图书的基本信息;浏览、查询、统计、添加、删除和修改图书借阅者的基本信息,浏览、查询、统计图书馆的借阅信息,发布公告,回复留言,以下就是本系统实现的功能。 1.设计不同用户的操作权限和登陆方法 2.对所有用户开放的图书查询 3.查询及统计各种信息 4.维护图书信息 5.维护工作人员和管理员信息 6.维护借阅者信息 7.处理信息的完整性 8.实现WAP手机网上图书查询

2.2 设计模式 设计模式是面向对象的程序设计人员用来解决编程问题的一种形式化表示。本系统开发采用目前一种目前广泛流行的软件设计模式MVC。MVC(Model-View - Controller)应用程序结构被用来分析分布式应用程序的特征。这种抽象结构能有助于将应用程序分割成若干逻辑部件,使程序设计变得更加容易。把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层。 在这里插入图片描述

图1 MVC模式

MVC模式的出现,很好的解决了传统开发WEB应用方式中存在的问题。M代表模型(Model),包含完成任务所需要的所有的行为和数据;V代表视图(View)界面,显示模型提供的数据;C代表控制器(Controller),它将模型映射到界面中,处理用户的输入并响应请求。其模型关系如图所示。在MVC模式中,三层各尽其职、相对独立,各层内部的改变不会影响到其它层,从而降低了数据表达、数据描述和应用操作的耦合度,也能更好的实现开发中的分工,加快工程进度。

2.3 开发环境

MySQL: MySQL是一个多用户、多线程的SQL数据库,是一个客户机/服务器结构的应用,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。MySQL的快速和灵活性足以满足一个网站的信息管理工作。 因为许可证的灵活,任何人都可以以任何目的免费使用,修改,和分发 PostgreSQL,不管是私用,商用,还是学术研究使用。命令执行速度快,也许是现今最快的;简单有效的用户特权系统。MySQL使用完全免费,使得其运用范围更加广泛。

TOMCAT: Tomcat服务器是Apache Group Jakarta小组开发的一个免费服务器软件,适合于嵌入Apache中使用,而且,它的源代码可以免费获得,你可以自由地对它进行扩充。Tomcat服务器的兼容性很好,如WebLogic服务器采用其为Web服务器引擎,Jbuilder将其作为标准的测试服务器,Sun公司也将其作为JSP技术应用的示例服务器。但是Tomcat服务器有众多大软件公司的支持,而且服务器的性能稳定,其发展前景很好。

2.4 开发工具 Eclipse是一个非常优秀的集成开发环境,它旨在简化用于多操作系统软件工具的开发过程,可以用于管理多种开发任务,其中包括测试、性能调整以及程序调试等,而且还可以集成来自多个供应商的第三方应用程序开发工具。通过集成大量的插件,Eclipse的功能可以不断扩展,以支持各种不同的应用。

Eclipse平台是一个成熟的、精心设计的、可扩展的体系结构,其组成结构如图所示用 Eclipse开发的插件,可以适应多平台的需要 , 且具有良好的可扩展性和灵活性。 Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。 虽然大多数用户很乐于将 Eclipse 当作 Java IDE 来使用,但 Eclipse 的目标不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Enviro nment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。

3 系统总体设计 3.1 系统概要 本图书管理系统总体上分为前台页面显示和后台管理。前台页面(即本书图书管理系统的首页)实现了公告的显示图书查询,留言建议三大功能。而后台的页面则集成了图书管理中所需的功能和录入新书到库,办公图书,借还手续,查询图书等等。平时图书管理人员的工作都是在后台中完成的。前台是为了师生显示的。师生们可以看到图书管理人员发布的最新公告信息;并可以查询自己感兴趣的图书,也可以给学校的图书管理人员留言提议。相对应的后台是针对学校图书管理人员,后台的页面都加密,如果不正常登录是进入不了后台管理页面的,后台功能具体包括:发布首页公告,添加新书到库等等。

3.2 功能模块构成 在这里插入图片描述

图2 功能结构图

3.3 功能流程图 3.3.1 查询功能流程图

在这里插入图片描述

图3 基于WEB和WAP的查询流程图 3.3.2 借还图书功能流程图 在这里插入图片描述

图4 借还书流程图

3.4 数据库设计 3.4.1 数据库概要 考虑该系统的定位与现有技术力量,系统采用MY-SQL作为系统的后台数据库开发环境,数据库命名标准与规范均采用英文单词标写,以便日后对其维护修改.

3.4.2 数据库逻辑设计 表2所示为管理员表(admin),记录了系统用户的角色和密码,判断是否允许其登录管理员界面。 表2 admin数据库 在这里插入图片描述

表3所示为留言信息表(guestbook),记录了游客用户姓名,发表的留言信息,发表时间和管理员回复信息,其作用就是实现留言板功能。

表3 guest数据库 在这里插入图片描述

表4所示为首页公告表(notice),记录了发布信息和发布时间,其作用就是支持公告栏的功能实现。 表4 notice数据库 在这里插入图片描述

表5所示为图书信息表(book),记录了图书书名,书号,图书类型,总量。其作用就是保存录入到库的图书资料,以便借阅和查询。 表5 book数据库 在这里插入图片描述

表6所示为用户借阅图书信息表(borrowbook),记录了借阅证号,借书开始日期,结束日期,书号。实现本系统核心功能-借书,还书的数据库应用。 表6 borrowbook数据库 在这里插入图片描述

表7所示为借书证用户信息表(user),记录了借书人姓名,性别,年龄,所在院系和所借书的书号。实现其程序主体的数据库调用。 表7 uesr数据库 在这里插入图片描述

3.4.3 数据库之间关联设计 这个图书管理系统是基于MySQL设计的,然后通过在JSP中向数据库发送相应的SQL指令,从而实现对图书的全面管理..对于数据库设计这一流程中,最重要的一步是对user表、book表、borrowBook表三张表的设计以及它们之间的关系.这是这个图书管理系统中的一个关键技术,以下就是数据库关联图

在这里插入图片描述

图5数据库关系

4 系统详细设计与实现 JavaBean技术是一种基于Java的组件技术,JavaBean组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据的提取等,是解决代码重用问题的一种策略。

为了创建和使用Java软件组件,JavaBean被实现为一种独立于平台和结构的应用程序接口,它的实现可以忽略内部的结构及细节问题,只需要定义其外部的特征及对外功能就行。其中,属性、方法和事件三种接口可以独立对外进行开发。 JavaBean的实质就是一个.class文件,也可以成为类文件。JavaBean以binary格式保存,可以保护Java源代码不容易被他人抄袭。

下面是本系统中主要的JavaBean。

select函数功能:查询数据 public int select(String sql){ int k=-10; this.init(this.getConn()); try { k=0; rs=stmt.executeQuery(sql); if (rs.next()) { k=k+1; } } catch (Exception e) { k=-1; System.out.println("select():"+e.getMessage()); this.close(); } this.close(); return k; } update函数功能:更新\删除\插入 数据 public int update(String sql){ int k=-10; this.init(this.getConn()); try { k=0; k=stmt.executeUpdate(sql); } catch (Exception e) { k=-1; System.out.println("update():"+e.getMessage()); } this.close(); return k; }

chStr函数功能:解决乱码 省略

4.1 发布首页公告功能模块 在这里插入图片描述

图6首页发布功能界面

在后台管理中能自由发布首页公告信息,来通知各种事情,其条目以滚动的形式来表现。

该功能的实现由admin_addnotice.jsp和admin_addnotice_post.jsp文件实现。 在admin_addnotice.jsp中主要是发布界面的编写和传输notice内容,本功能的核心程序放在admin_addnotice_post.jsp中,负责存储内容到数据库和错误提示。 在admin_addnotice_post.jsp中关键代码如下:

//从request获取名为"content"的参数值 String content=request.getParameter("content"); //解决中文乱码问题 String tcontent=addbook.chStr(content); //合成SQL语句,将content的值传入,作用为更新公告表 String sql="update notice set content='"+content+"',createtime=DEFAULT where id=1"; //申明一个int的变量temp int temp=-2; //如SQL执行成功,temp>0,否则执行失败 temp=notice.update(sql);

4.2 留言板功能模块 留言板功能模块分为发布模块和回复模块。发布模块在前台完成,可以让任何人留言,而回复模块在后台使用只允许管理员查看回复。 4.2.1 发布留言模块 在这里插入图片描述

图7 发布留言界面

本功能所有文件放在guest目录下面,包含了guestbook_index.jsp,guestbook_postmessage.jsp,guestbook_save.jsp,guestbook_show.jsp,guestbook_viewmessage.jsp这5个文件,分别实现了留言板各个功能。 其主要代码在guestbook_postmessage.jsp中.

//从request获取名为"username"的参数值 String username=request.getParameter("username"); //从request获取名为"content"的参数值 String content=request.getParameter("content"); //合成SQL语句,将username,content的值传入nickname,content表中,作用为将留言板内容放入数据库中 String.sql="insert into guestbook (nickname,content) values('"+username+"','"+content+"')"; //判断语句,如果username为空或者错误,content为空或者错误的时候。 if(username==null||username.equals("")||content==null||content.equals("")) { else{ int temp=-2; //如SQL执行成功,temp>0,否则执行失败 temp=guestbook.update(sql); %> //返回错误信息errorpage.jsp,显示“请检查你的输入.请确保你输入的信息的正确性!”错误信息文字以提示。 else{ session.setAttribute("error","请检查你的输入.请确保你输入的信息的正确性!"); response.sendRedirect("../errorpage.jsp"); } } %>

4.2.2 回复留言模块 本功能主要是用于回复留言,由admin_guestbook_reply.jsp实现.其实现方法与前面类似,不在累述。 4.3 系统管理员登录功能模块 在这里插入图片描述

图8 管理员登录界面

本功能涉及到图书管理操作的jsp文件,为了方便全部把它们放在admin目录里面,并且通过session防止非法登录.把这个功能提取出来,单独作为一个jsp文件,然后include到需要加密的jsp文件头部.这样如果非法用户直接提交后台URL,系统会将非法用户直接转到前台首页 本功能由admin_login.jsp和admin_logincheck.jsp实现 其主要代码是在admin_logincheck.jsp中,如下

0){ //表明验证成功,进入admin_index.jsp,并将用户定格为登录用户。 session.setAttribute("name",tusername); response.sendRedirect("admin_index.jsp"); }else{ //验证失败,返回错误提示信息,并返回errorpage.jsp页面。 session.setAttribute("error","请检查你的用户名和密码!"); response.sendRedirect("../errorpage.jsp"); }} %>

4.4 图书查询功能模块 在前台允许所有用户对图书馆里面的书籍进行查询,返回内容包含书名,编号,分类和库存几个方面。 总的来说该功能是本系统最重要的核心功能之一。 4.4.1 前台图书查询 在这里插入图片描述

图9Web图书查询界面 在这里插入图片描述

图10 查询结果界面

图9为前台查询界面,图10为显示界面主要是实现对图书的查询,内容包括书名,图书编号,分类,库存量。 分别由searchbook.jsp和实现 其主要代码在功能代码在searchbook_post.jsp下, 查询功能代码:

4.4.2 后台所有图书查询 在后台运行中,除了前台所拥有的查询外,还提供直接查询并允许对其修改和删除,其界面由admin_viewallbooks.jsp显示,而修改,删除由其他文件实现,其实现方法类似前台查询不在累述。

4.4.3 WAP查询 在这里插入图片描述

图11 WAP图书查询界面

Winwap是Slobtrot网站提供的WAP仿真工具。它完美的支持WML 1.0和1.1。可以将WML页面保存为HTML页面。Winwap因此也成为了目前WAP网站开发人员使用最广泛的模拟器。 图9则是用Winwap模拟器打开的WAP图书查询界面。 其功能主要由wapresult来实现,里面功能大多可参照以上的查询功能实现。 其主要代码如下

4.5 其余功能模块 其余功能模块实现方法同上面雷同,就不在详细分析代码,只简单叙述。 借还手续功能模块包含了借书功能模块,还书功能模块,借阅信息功能模块,借书证管理功能模块。借还手续功能模块是另一个核心功能模块。借书功能模块通过输入借书证号和图书编号实现借书功能admin_borrowbook.jsp和admin_borrowbook_post.jsp文件实现。其主要功能在admin_borrowbook_post.jsp中实现。还书功能模块主要实现对图书的重新入库和清理所借图书人借书项目包含admin_returnbook.jsp,admin_returnbook_post.jsp和admin_returnbook_post_post.jsp三个文件。阅信息功能模块为查询所有借阅书籍的同学和其借阅的图书,主要由admin_viewallborrows.jsp实现。 新开借书证功能模块本功能主要实现借书证的重新开启,包含admin_addnewuser.jsp,admin_addnewuser_post.jsp。修改借书证信息主要实现修改借书的情况,包括包含admin_changeuser.jsp和admin_changeuser_post.jsp两个文件 管理图书功能模块主要用于对图书的管理,其包括录入新书功能模块和修改,删除图书功能模块,未归还图书查询功能模块。录入新书功能模块主要将图书录入,并添加其数量,名称,类别的功能由admin_addnewbook.jsp和admin_addnewbook_post.jsp两个文件实现。修改,删除图书功能模块主要是修改删除图书的信息。由admin_changebook.jsp和admin_changebook_post.jsp实现。 用户信息管理功能模块是本系统后台最为重要的一部分,包括所有用户查询功能模块,搜索用户功能模块,管理员列表功能模块,添加管理员功能模块,修改密码功能模块。所有用户查询功能模块本功能作用是实现对用户信息查询,包括姓名,性别,年龄,系别,借书证号由admin_viewallusers.jsp实现搜索用户功能模块本功就是通过输入借书证号搜寻所查找的用户。由searchuser.jsp和searchuser_post.jsp文件实现用户功能模块主要是对用户的所有信息进行修改并保存由admin_changeuser.jsp和admin_changeuser_post.jsp实现。管理员列表功能模块主要是查询所有管理员。由admin_viewalladmins.jsp实现。添加管理员功能模块就是添加管理员,包括登录名和密码由admin_addadmin.jsp和admin_addadmin_post.jsp实现。修改管理员密码功能模块本功能主要是对管理员密码修改由changepwd.jsp和admin_changepwd_post.jsp实现。

5 测试 省略

结 论 本文提出的基于WEB的图书管理系统完成了借书,还书,查询图书,管理借书证和管理员帐户设置等主要功能,本系统是基于B/S模式,其后台部分完全实现借书与还书的手续操作与对图书和人员的管理功能,系统界面简单、易用,任何人都可以在短时间内学会使用该系统,在前台部分,创新设计的WAP图书查询部分,不仅大大方便了同学们查询图书,而且使得系统多样化,多元化,具有有很强的扩展性。 在技术方面,通过此项目的开发,本人对基于Browser/Server即浏览器/服务器模式的多层体系结构的JSP技术有了一定的实战经验,同时对JavaBean的使用有了深刻的理解。将不同复杂的数据库操作划分为独立的模块封装于Bean中,提高了系统的安全性和可移植性。

参考文献 [1] 林上杰,林康司. JSP 2.0技术手册[M]. 北京: 电子工业出版社,2005。 [2] 汪孝宜,刘中兵. JSP数据库开发实例精粹[M]. 北京:机械工业出版社,2001。 [3] 杨仁毅. DreamweaverMX2004自学手册[M]. 成都: 四川电子音像出版中心,2004。 [4] 方睿,刁仁宏.网络数据库原理及应用[M]. 成都: 四川大学出版社,2005。 [5] 陈明. 实用软件工程基础[M]. 北京: 清华大学出版社,2002。 [6] 耿祥义,张跃平. JAVA2实用教程[M]. 北京: 清华大学出版社,2006。 [7]张海藩.软件工程导论[M].北京:北京清华大学出版社,2003。

致 谢 省略

5、资源下载

本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。

序号毕业设计全套资源(点击下载)本项目源码基于JSP+mysql的图书馆借阅系统设计与实现(源码+文档)_jsp_BS架构_图书馆借阅系统.zip


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3