基于SSM框架响应式共享图书系统的设计与实现

 2023-11-07 09:11

论文总字数:31657字

摘 要

: 校园图书借阅地点一般集中在图书馆,然而有些同学大学四年都没去图书馆借过几本书。针对传统校园借阅地点单一,且离宿舍远等问题,开发设计这套共享图书系统,结合Spring、struts2和MyBatis框架,运用PL/SQL Developer Oracle Database 11g进行数据库处理,系统主要包括四个模块:超级管理员、图书管理员模块、用户模块和图书信息模块。其中超级管理员模块有对图书管理员和用户信息的维护,以及对自己账号的加密功能。图书管理员模块主要包括管理员对图书信息进行维护,同意借阅,同意归还申请操作,还可以导出用户和图书信息等。用户模块主要包括修改密码,图书查询,图书借阅和退出操作。图书信息模块主要包括最新图书信息以及图书的借阅分布情况。本系统主要以淮阴师范学院为一个范围,设立多借书地点,进行校内图书的借阅。以后推广,可以运用于公司、社区、咖啡书屋等公共场合。我们可以就近借阅自己喜欢的图书,在人均读书量极低的中国,不失为一次提高全民读书量的一项新举措。

关键词: 共享图书, 校园, S2SM ,Oracle Database

Abstract:The location of book borrow in the school is always assembled in the library, however, some students did not go to the library to borrow books in the college. This system combining Spring, Struts2, and MyBatis Frameworks, using oracle for database aims to solve this problem. It mainly includes four modules: super administrator module, librarian module, user module and book information module. The super administrator module includes that the information changes for users and the password reset for 3himself. The librarian module mainly includes the information changes for books, agreement to borrow, agreement to return . The user module mainly includes the operation of changing the password, the book searching, the book borrowing and exit .The book information module mainly includes the latest book information and the distribution of books. This system mainly uses Huaiyin Normal University as an area, borrowing and returning books in it. In the future, it can be used in public places such as companies, communities, and cafes. We can borrow our favorite books nearby. It is a new measure to improve people’s reading in China,where the personal reading is extremely low.

Keywords:Shared books ,School, S2SM ,Oracle Database

目 录

1 绪论 4

1.1 课题来源及背景 4

1.2 目标和意义 4

1.3 设计思想和主要工作 4

2 系统研究现状 5

2.1 S2SM(Struts2 Spring Mybatis)框架集 5

2.2 PL/SQL Developer 5

3 系统需求分析 6

3.1 业务需求 6

3.2 系统功能需求 7

3.3 系统可行性分析 8

3.3.1 技术可行性 8

3.3.2 操作可行性 8

3.3.3 经济可行性 8

3.4 开发环境需求 8

3.4.1 硬件开发环境简介 8

3.4.2 软件开发环境简介 9

4 系统功能介绍 6

4.1 功能简介 9

4.2 数据库设计 11

4.2.1 数据库的概念设计 11

4.2.2 数据库的具体结构设计 13

5 系统功能模块设计与实现 17

5.1 数据库的连接 17

5.2 Java框架配置 18

5.3 超级管理员模块的设计与实现 19

5.4 图书管理员模块的设计与实现 24

5.5 用户模块的设计与实现 31

6 系统测试与调试 34

6.1 测试介绍 34

6.2 测试内容 34

6.3 问题解决 37

致谢 43

1 绪论

1.1 课题来源及背景

随着工业4.0时代的到来,各行各业的转型,都迫在眉睫。在知识日新月异的的今天,我们更得及时为自己“充电”,补充新知识,然而事实是,城市里的书屋寥寥无几,要想读个书,要么网上买,要么去离家特别远的图书馆,有的图书馆还不对外开放。为满足应用的需求,开发设计一个相对完备的共享图书管理系统,一方面可以实现图书借阅不受地点约束,另一方面对我们国家的精神文明的建设有着深远的实用价值和现实意义。

“图书管理”是这个概念一开始是由IBM公司在1998年提出来的,而后很快得到各界的认同。这几年,共享经济被推到风头上,共享图书的概念又再一次映入大众的眼帘。支付宝率先在全国五个城市开通了包括快递借书以及共享书架这类服务,合肥三孝口的新华书店也尝试推广了“共享书店”,还有各种各样的共享书屋和共享书柜,如雨后春笋般涌现出来,总的来说共享图书目前还处在一个摸索阶段,是挑战,当然也是机遇。

1.2 目标和意义

基于SSM框架响应式共享图书系统,也是在传统图书管理系统的基础上,能够实现用户借书与管理员还书的操作,后台运用Struts2 Spring Mybatis的Java语言框架配合Oracle进行数据的处理,前台运用JavaScript CSS进行搭建。本系统以淮阴师范学院为例,通过管理员与用户模块展现共享图书管理系统的,希望这套系统能使学弟学妹们“好读书,读好书”,牢记我们周恩来总理的教诲“为中华之崛起而读书”。在学校好好沉淀自己,以后能为实行中华民族伟大的复兴梦添砖加瓦。未来是属于我们的,也是属于你们的。

1.3 设计思想和主要工作

大一刚入学的时候,录取通知书上的几个大字“为中华之崛起而读书”,那种油然而生的使命感,至今影响着我。这也是这套“共享图书管理系统”的主要设计思想,就是想传承和发扬这种读书精神。本套系统通过主流的Java框架配合JavaScript,运用PL/SQL Developer等进行数据库处理,前后台结合,逐步完成这套基于Struts2 Spring Mybatis的Java语言框架的共享图书管理系统的设计与实现。

2 系统研究现状

2.1 S2SM(Struts2 Spring Mybatis)框架集

S2SM是目前较主流的由Struts2、Spring、Mybatis整合的开源框架集,多用于搭建中小型的应用系统。以下对Struts2、Spring、Mybatis分别进行简要介绍说明:

Struts2是基于MVC,即model,view,controller的Web应用框架,Struts2作为Controller层,也就是控制层建立model层与view层的数据交互。Struts2整合了Struts1和WebWork技术[2],将框架进行优化升级,Struts1框架是世界上第一个基于MVC设计模式的框架,其核心控制器为Action Servlet;WebWork建立在XWork基础之上,其核心控制器是ServletDispatcher。Struts2框架以WebWork优秀的设计思想作为中心思想,同时结合了Struts1 框架的部分优点,实现两者的统一,更轻快便捷[1]

Spring是由Rod Johnson创建的一个分层一站式轻量级的开放源代码的设计层面框架。Spring框架具有全面和模块化的特点,具有有分层的体系结构,以此同时,该架构仍然很稳定,在实际使用中很方便,而且Spring属于非侵入式的框架,其对内存的占用以及处理开销都是微之甚微的。运用这套框架的主要目的是使JavaEE的使用更方便。

Mybatis原属Apache公司,后迁移到Google Code并进行更名,该框架属于持久层框架,支持SQL语句查询、也可以实现存储过程以及高级映射等等;使用简洁的XML文件或者注解来配置映射原生的信息,把接口和Java的POJO映射在数据库中;基本消除了JDBC代码以及参数的手工方面的设置,对结构集的检索也是一样。Mybatis框架的特点有:简单方便,容易学习,不存在第三方的依赖,灵活性比较好,能够把业务和数据访问的逻辑分离开来,使得系统设计更清晰明了[7]

通过Spring整合Struts2以及Mybatis结合成S2SM框架集进行编程[6],使开发过程更加清晰明了,可提高开发效率,其稳定性好,可扩展性好,便于后期维护代码[2]

2.2 PL/SQL Developer和Oracle数据库

随着计算机软件在实际社会中的广泛运用,软件需要处理越来越多样化、关系越来越复杂的数据,这就要使用相应的数据库软件管理和处理越来越复杂的数据。

PL/SQL Developer 是一个由Allround Automations 公司开发设计的一套集成开发环境,其用途主要是对Oracle数据库存储的程序单元的开发、测试、调试和优化。由于Oracle数据库的性能较其它数据库相比稳定许多,使用的人数多,所以PL/SQL Developer在编程开发的过程具有举足轻重的作用。能够实现询问创建、SQL视窗、命令视窗等功能。

针对于PL/SQL Developer的Oracle数据库,隶属于甲骨文公司,是一款以分布式数据库为核心的关系型数据管理系统,一直在数据库市场上处于领先地位,是目前最流行的数据库,适用于客户端与服务器端(Client/Server)体系结构以及浏览器/服务器端(Browse/Server)体系结构,具有比较完整的数据管理功能[3]。其系统可移植性好、结构严谨、响应速度快、安全稳定、数据的持久性强、使用方便、功能强,使用的SQL语句也是访问数据库最常用的标准化语句,适用于各类大、中、小、微机环境。

3 系统需求分析

3.1 业务需求

众所周知,21世纪是互联网的时代,各行各业的转型,都迫在眉睫。在知识日新月异的的今天,我们更得及时为自己“充电”,补充新知识[4]。然而城市图书馆少之又少,而且离家远。应对这种现状,开发设计一个相对完备的共享图书管理系统,采用简单易懂的开发工具结合普通数据库技术开发出一个简单、方便、灵活的共享图书管理系统来解决传统借还书存在借阅地点单一,且住所,借阅不方便远等问题。本系统以淮阴师范学院校园为例,大体上实现了校园借书场所单一,离宿舍远,平时借书不方便等问题,有助于提高学生的整体素养。设计的总体的流程图如图3.1所示

图3.1 设计总体流程图

本流程图共分为了七个部分:

  1. 确认所选内容,开始收集资料,进一步确认最终方案。
  2. 根据自己所熟悉的学习内容确定整体框架[7]
  3. 根据实际情况来对整个系统进行需求分析,将系统划分为多个模块。
  4. 根据所选的开发工具对每个模块进行系统地编程[6]
  5. 大体上完成后对照之前的需求进行调试。
  6. 连接后台数据库并测试运行,查看最终结果。
  7. 一切流程都没问题后,即可投入到实际运用当中。

3.2 系统功能需求

共享图书系统对全校学生素养的提高具有非凡的意义,符合淮师人“为中华之崛起而读书”的信念。可以解决校园图书借阅地点单一集中,有些同学因为图书馆离宿舍远而不想去等问题。有效培养学生爱读书的习惯,让淮师学子受益终生。

其主要功能有:

1.超级管理员模块:超级管理员模块有对图书管理员和用户信息查询,删除,修改,增加的功能,以及对自己账号的加密功能。

2.图书管理员模块:图书管理员主要任务是对图书信息进行维护,同意借阅,同意归还申请,还可以导出图书信息等。在图书信息进行维护中,图书管理员可以对图书进行很多操作,比如添加图书,删除图书和修改图书,还能对图书进行根据所在地点、作者、书名等信息图书模糊查询。在同意借阅中,图书管理员会及时获取到用户申请借阅的图书,可以选择同意借阅或者不予借阅。在归还申请中,图书管理员会根据图书的实际归还情况,选择同意归还或者不予归还。其中图书信息,就是将用户、图书信息以Excel表格的形式导入到本地。

3.用户模块:有修改密码,图书查询,图书借阅,归还等操作,修改密码指的是用户可以对自己的密码进行修改。图书查询中,用户可以根据图书所在的位置,书名、图书类型、图书作者、出版社等,对图书进行模糊查询。找到自己喜欢的图书就可以点击申请借阅按钮,实现借阅申请。如果,用户需要还书的话,则只需到还书申请模块,查看自己需要返还的图书,点击返还申请即可。

4.图书信息模块:此模块主要针对没有账号信息的游客,首页会显示最新的图书信息,由于只针对淮师学子,所以不存在自行注册的功能,需要拿着学生证到管理员处登记,由管理员申请账号。游客进入到系统首页后,可以点击图书,查看图书简介,获取图书信息,查看就近的图书借阅地点。

3.3 系统可行性分析

本系统的可行性分析主要是指本系统是否能够拥有所需的功能以及是否拥有被开发的价值。主要是从三个方面来进行分析:技术可行性、操作可行性和经济可行性。

3.3.1 技术可行性

采用C/S架构和结合Oracle的技术,编程语言则是选用Java语言。在具体的编程过程中,本系统采用了Java的Spring、Mybatis以及Struts2三大框架,其方便的编程方法极大地简化了编程的工作量,减小了人力的投入,各个模块之间也能相互联系起来,对数据的处理也变得极其方便,大大地减少人的负担,也更利于系统的设计与实现。

3.3.2 操作可行性

本系统主要是面向学生、图书管理员老师以及超级及管理员而开发的。整体界面简介,操作通俗易懂。对于现在的学校而言,图书管理员都有一定的计算机基础,而学生也是在互联网时代的潮流中对计算机的操作变得行云流水[4],即使有不太熟悉计算机的用户,也可以通过鼠标的点击轻易地完成各种数据的增删改。因此,本系统具有及其良好的可操作性。

3.3.3 经济可行性

如果本系统所需的设备不多,只需要在各个图书借阅点配置电脑即可,不需要多少动用人力物力。当然最重要的是本系统将有助于提高学生的整体素养,对加强全民的精神具有重要意义,而且为实现高校信息化做出了进一步的贡献。

3.4 开发环境需求

3.4.1 硬件开发环境简介

硬件开发环境

(1)CPU: 2.0GHZ;

(2)内存: 4G;

(3)硬盘: 程序所需要的空间大小;

3.4.2 软件开发环境简介

软件开发环境

(1)操作系统:Windows7;

(2)开发工具:Eclipse;

(3)开发工具包:JDK;

(4)服务器:Tomcat;

(5)数据库管理系统:Oracle

软件开发环境补充说明

(1) Eclipse

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台[1]。主要用于Java、JavaEE以及移动应用的开发。其功能非常强大,支持也十分广泛,尤其是对各种开源产品支持的相当的不错。它包含完整的JavaEE库,支持同时部署到多个服务器,并支持快速检索。

(2) Tomcat服务器

Tomcat服务器是Apache软件基金会的Jakarta项目中的一个免费的、轻量级的、开放源代码的Web应用服务器,普遍适用于中小型系统中,与其它服务器一样具有处理HTML页面的功能,同时也有作为Servlet 和JSP容器的功能。因运行时占用系统资源小,扩展性好,性能稳定等因素备受广大开发人士青睐。

(3) JDK

JDK(Java Development Kit)是Java语言的软件开发工具包,主要用于Java应用程序;JDK包含了Java的运行环境和Java工具,其基本组件有:Javac编译器、Jar打包工具、Jdb查错工具、Javap反汇编器等,安装JDK后Java源码(.java文件)即可被编译。

(4) Oracle

Oracle数据库在前文已经介绍说明过了,这边不再赘述。

4 系统功能介绍

4.1 功能简介

1.相关技术运用:本系统采用的是Oracle数据库精简版来实现系统数据的设计,以Eclipse 4.5(Mars)作为开发平台,运用Java、JavaScript进行程序的编写。

2.系统功能结构图:

图4.1系统功能结构图

1.超级管理员模块:超级管理员模块有对图书管理员和用户信息维护的功能,以及对自己账号更改密码的功能。

2.图书管理员模块:图书管理员主要任务是对图书信息进行维护,同意借阅,同意归还申请,还可以导出图书信息等。在图书信息进行维护中,图书管理员可以对图书进行很多操作,比如添加图书,删除图书和修改图书,还能对图书进行根据所在地点、作者、书名等信息图书模糊查询。在同意借阅中,图书管理员会及时获取到用户申请借阅的图书,可以选择同意借阅或者不予借阅。在归还申请中,图书管理员会根据图书的实际归还情况,选择同意归还或者不予归还。其中图书信息,就是将用户、图书信息以Excel表格的形式导入到本地。

3.用户模块:有修改密码,图书查询,图书借阅,归还等操作,修改密码指的是用户可以对自己的密码进行修改。图书查询中,用户可以根据图书所在的位置,书名、图书类型、图书作者、出版社等,对图书进行模糊查询。找到自己喜欢的图书就可以点击申请借阅按钮,实现借阅申请。如果,用户需要还书的话,则只需到还书申请模块,查看自己需要返还的图书,点击返还申请即可。

4.游客模块:此模块主要针对没有账号信息的游客,首页会显示最新的图书信息,由于只针对淮师学子,所以不存在自行注册的功能,需要拿着学生证到管理员处登记,由管理员申请账号。游客进入到系统首页后,可以点击图书,查看图书简介,获取图书信息,查看就近的图书借阅地点。

4.2 数据库设计

4.2.1 数据库的概念设计

结合需求进行分析,使用E—R图,设计构造出各类实体以满足用户需求,为之后的逻辑结构设计打下了结实的基础。包括各样具体的信息,通过他们之间相互的联系来形成数据的流动。本系统的数据库的总体建表思路,具体如下所示。

1. 本系统的主要E-R图,主要分析超级管理员,图书管理员以及用户之间的关系需求。

图4.2.1系统总体E-R图

剩余内容已隐藏,请支付后下载全文,论文总字数:31657字

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;