摘 要
随着计算机的广泛应用,其逐步成为现代化的标志。图书馆的信息量也会越来越大,因此需要对图书信息、借书信息、还书信息等进行管理,及时了解各个环节中信息的变更,要对因此而产生的单据进行及时的处理,为了提高高校图书馆自动化的管理,能够更快速的满足用户的要求,提高各种工作的效率,现对其设计相应的系统,以达到上述的目的。随着科学技术的进步,计算机行业的迅速发展,计算机信息处理系统的引进已彻底改变了许多系统的管理方式。因此,开发一款高校图书管理系统是至关重要的。
根据需求,确定系统采用JSP技术,JAVA作为编程语言,MySQL作为数据库。整个系统要操作方便、易于维护、灵活实用。主要实现了个人信息、书馆信息、新闻信息、馆员信息、用户信息、图书信息、借阅信息等功能。
关键词 ****:****高校图书管理系统; JSP; MYSQL
Abstract
With the widespread application of computers, it has gradually become a symbol of modernization. The amount of information in the library will also become larger and larger. Therefore, it is necessary to manage book information, book borrowing information, book return information, etc., to understand the changes in information in various links in a timely manner, and to timely process the resulting documents. In order to improve the automated management of university libraries, and to more quickly meet user requirements and improve the efficiency of various tasks, a corresponding system is now designed to achieve the above-mentioned purpose. With the advancement of science and technology and the rapid development of the computer industry, the introduction of computer information processing systems has completely changed the management of many systems. Therefore, it is important to develop a university library management system.
According to the requirements, it is determined that the system uses JSP technology, JAVA as the programming language, and MySQL as the database. The whole system should be easy to operate, easy to maintain, flexible and practical. It mainly implements personal information, library information, news information, librarian information, user information, book information, and borrowing information.
Keywords ****:****University Library Management System; JSP; MYSQL
1 绪论
1.1 系统开发目的
高校图书管理系统是针对学院师生借阅图书的需求、图书管理人员对图书资料的管理设计和实现的。随着现代科学技术的发展和社会的进步,各大高校的图书馆规模也在不断扩大,与此同时,图书的种类和数量以及有关图书的各种信息也在迅速增加,这一庞大的信息量对高校图书馆的信息技术提出了更高的要求。为了避免图书管理上的混乱,降低管理费用,给读者提供给更方便、快捷的服务,就需要有一套行之有效的图书管理的系统来提高图书管理的工作效率。
1.2 系统开发意义
图书管理是每一个高等院校都必须切实面对的工作,但目前人们使用传统的人工方式管理图书资料。这种方式存在着许多缺点,如效率低、保密性差且较为繁琐。另外,随着图书资料数量的增加,其工作量也将大大增加,这必将增加图书资料管理者的工作量和劳动强度,这将给图书资料信息的查找、更新和维护都带来了很多困难。高校图书管理系统作为计算机应用的一个分支,有着手工管理无法比拟的优点,如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高图书管理的效率。因此,开发一套能够为用户提供充足的信息和快捷的查询手段的高校图书管理系统,将是非常必要的,也是十分及时的。
2 系统开发工具介绍
2.1 JAVA语言
Java语言诞生于20世纪90年代初,自从正式亮相以来,它的快速开发已经改变了整个Web世界。Java语言最初是由Sun Microsystems (Sun于2009年4月被Oracle收购)开发的,作为一种用于智能家电的语言,称为rich Oak。它基于当时最流行的C和c++语言。然而,由于非技术原因,Oak语言并没有迅速普及。直到1993年,随着万维网的迅速发展,Sun发现Oak的技术可以用来创建包含动态内容的万维网网页。因此,被忽略的Oak被重新开发和修改,修改后的Oak被重新命名为Java。爪哇是太平洋上一个产咖啡的岛屿的名字。最后,在1995年,面向web应用程序的编程语言Java正式启动。
因为Java语言非常强大,在其发布后不久即被广泛接受,而IBM、Apple DEC Adobe HP Oracle Toshiba Netscape和Mierosoft等大公司正在购买Java语言的许可证。微软还从其Web浏览器Explorer 3.0板中添加了对Java语言的支持。与此同时,许多软件开发人员开发了许多支持Java的产品。在当今以网络为中心的计算机时代,缺乏对HTML和Java语言的支持意味着应用程序仅限于同质环境。
随着Java Servlet的发布,Java语言极大地促进了电子商务的发展。Java Serer Page(JSP)技术的引入使得Java语言成为基于web的应用程序的首选开发工具。互联网的普及和快速发展,以及Web技术的不断渗透,使得Java语言在现代社会经济发展和科学研究中占有越来越重要的地位。
Java语言是一种适用于分布式计算环境的跨平台面向对象编程语言。它简单,面向对象,分布式,解释性,可靠,安全,独立于平台,便携,高性能,多线程,动态和其他特性。以下是Java语言的一些重要功能。
1.简单易学
Java语言虽然起源于c++语言,但与Java语言相比,它是一种完全面向对象的编程语言。出于安全和稳定的原因,Java语言删除了C/ c++支持的三种类型的数据,这些数据不容易理解或理解:指针、union和struct。但是,在C/ c++语言中,通过使用Java语言中的类和类属性等面向对象的方法,可以完全实现联合和结构的功能,这不仅更加合理和规范,而且降低了学习的难度。
2.面向对象
Java语言的主要吸引力在于它是一种以对象为中心、消息驱动、面向对象的编程语言。与风味语言一样,面向对象语言支持封装、继承和多态性的概念。
3.平台无关性
Java语言是平台无关的,这意味着用Java语言编写的应用程序可以在不同的硬件和软件平台上运行而无需修改。平台独立性有两种类型:源代码级和目标代码级。C和c++语言具有一定程度的源代码级平台独立性,这意味着用C和c++语言编写的应用程序可以在不同的平台上运行,无需修改,并且需要新的编译。Java语言依赖于Java虚拟机(JVM)在目标代码级别实现平台独立性。
- 分布式
分布包括数据分布和操作分布。Java语言支持这两种发行版。Java语言提供了一套网络库,开发人员可以使用该库进行网络编程,方便实现Java语言的分布式特性。
- 可靠性
Java语言非常可靠。Java解释器运行时检查,可以发现数组和字符串访问越界;此外,Java语言提供了一种异常处理机制,允许您将容易出错的代码放在一个地方,从而简化了错误处理任务并促进了恢复。
- 安全性
Java语言具有很高的安全性。当Java字节码进入解释器时,必须首先用自字节码检查代码检查它。其次,Java解释器将确定程序中类的内存布局。第三,类装入器负责将来自网络的内部装入器放入单独的内存区域,以避免应用程序之间的干扰和破坏。最后,客户机用户可以将从网络加载的类限制为只加载特定的文件系统。Java语言将这些机制集成到安全的编程语言中。
- 支持多线程
Java语言支持多线程有两个方面:一方面,Java环境本身是多线程的,运行着多个系统线程,负责必要的垃圾收集、系统维护等系统和操作;另一方面,Java语言具有内置的多线程机制,可以极大地简化多线程应用程序开发。
- 支持网络编程
Java语言通过他所提供的类库可以处理TCP/IP,用户可以通过URT地址在网络上很方便的访问其他对象。
- 编译与解释并存
Java语言编译器不是将源文件(. Java)编译成二进制代码,而是将其编译成与机器平台无关的字节码文件(.class文件)。字节码文件可以由Java解释器执行,它将字节码文件转换成二进制代码,使程序运行。
2.2 JSP简介
JSP是上世纪90年代末由Sun公司提出的一种基于Java语言的服务器端脚本技术。它是一种服务器端脚本语言。自1999年推出以来,它逐渐发展成为开发Web应用程序的一项重要技术。jsp可以嵌套在HTML中,并支持多个操作系统平台。JSP开发的Web应用程序系统可以在不同的操作系统上运行,而不需要做任何更改。
JSP是Servlet API的扩展,Servlet API本质上将Java代码编码为HTML, HTML由JSP容器编译和执行,并根据动态代码的结果生成相应的HTML代码,以便在客户机的浏览器中显示。
由于JSP页面在转换为servlet之前可用,因此它们具有servlet的所有优点,包括访问Java API。此外,由于JSP是嵌入在Servlet中的应用程序的通用表示代码,因此您可以将其视为"彻底"的Servlet。通过JSP动态页面技术访问页面操作流程如图2-1所示。
图2-1 JSP页面访问操作流程图
由于JSP是在Java语法中使用的,所以Java语言的所有优点都可以在JSP中体现出来,尤其是J2EE强大的功能,是JSP语言开发的强大后盾。JSP技术的目的是使构建基于Web的应用程序变得更容易、更快,这些应用程序可以很好地与各种Web服务器、应用程序服务器、浏览器和开发工具一起工作。JSP页面可以很容易地与静态模板(包括HTML或XML片段)以及生成动态内容的代码相结合。
2.3 MYSQL简介
2.3.1 MYSQL概述
MySQL是瑞典MySQL AB公司开发的一个小型关系数据库管理系统,于2008年1月16日被Sun公司收购。MySQL被广泛应用于互联网上的中小型网站。由于其体积小,速度快,总拥有成本低,尤其是开源,许多中小型网站选择MySQL作为网站数据库,以降低总拥有成本。最初的开发人员的意图是使用MySQL和他们自己的快速底层例程(ISAM)来连接表。无论如何,在进行了一些测试之后,开发人员得出结论,mSQ并没有他们所需要的那么快和灵活。这导致使用几乎与mSQ相同的API接口为其数据库创建一个新的SQL接口,因此该API旨在允许为mSQL编写的第三方代码轻松移植到MySQL。
2.3.2 MySQL特性
1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。
2.支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统。
3.为多种编程语言提供了API。这些编程语言包括C、C%2B%2B、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。
4.支持多线程,充分利用CPU资源。
5.优化的SQL查询算法,有效地提高查询速度。
6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。
7.提供TCP/IP、ODBC和JDBC等多种数据库连接途径。
8.提供用于管理、检查、优化数据库操作的管理工具。
9.可以处理拥有上千万条记录的大型数据库。
2.4 B/S结构
B/S架构主要使用WWW浏览器技术,它能够把系统核心功能集中在服务器上面,可以帮助系统开发人员简化操作,便于维护和使用。
目前B/S结构成为程序开发主流结构,其优点就是没有地点限制还不用专门安装软件,笔记本或者电脑能够上网就能访问系统。系统使用B/S进行开发在后期系统维护上面就会很省事,不用什么问题都在服务器上面操作,简单的客户端处理就解决部分问题,开发出来的程序跟用户交互性上面也会增强,还可以实时刷新浏览器进行程序局部的数据信息更新。
基于B/S架构的系统可以架设到计算机网络上,可以不受地理位置和其他条件的限制,可以在任何联通互联网的地方使用这样的系统。
基于C/S架构的系统只可以被使用在本地电脑上,不能通过计算机网络来进行使用和操作,在使用地理位置等方面都没有B/S架构使用方便。
2.5 MyEclipse简介
MyEclipse是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合。MyEclipse企业级工作平台(MyEclipse Enterprise Workbench)是对Eclipse IDE的扩展,利用它我们在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高了工作效率。它是功能强大的J2EE集成开发环境,支持代码编写、配置、测试、除错和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。
在结构上,MyEclipse的结构特征可以被分为7类:
- JavaEE模型
- WEB开发工具
- EJB开发工具
- 应用程序服务器的连接器
- JavaEE项目部署服务
- 数据库服务
- MyEclipse整合帮助
对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。
MyEclipse适用多种操作系统,集成了许多常用的框架,在编写程序时非常方便快捷,是一款不错的Java开发工具。
3 需求分析与设计
3.1可行性分析
3.1.1 经济可行性
由于高校图书管理系统是我们自己开发的毕业项目,经济投入很小。系统完成后,将为未来的高校图书管理系统提供极大的便利,通过分析系统的开发成本,以及未来使用中需要的维护成本,来确定软件开发是否经济可行,是否有必要。经济可行性是软件开发的一个重要指标,直接关系到应用程序的成败,因此做好经济可行性分析是非常有必要。
3.1.2 技术可行性
技术可行性是确定现有的技术条件下,能否开发出本程序,软硬件配置是否满足开发需求。这个高校图书管理系统,调试比较简单,目前的计算机硬件配置也完全可以满足开发的需要,所以技术上可行。由于目前的独立模型相对成熟,软件开发平台成熟可行。它们速度快,容量大,可靠性高,价格低,完全可以满足系统的需要。
3.1.3 运行可行性
运行可行性是对组织结构的影响,现有人员和机构的适应性,环境对系统的影响,以及补充人员培训计划的可行性。目前,信息化技术已应用到各个方面,各种运营商的水平相当高,因此在运营中是可行的。根据新系统测量技术的目标,通常根据硬件,软件性能要求,环境条件,技术人员水平和数量进行考虑和分析。开发人员的技术实力应首先考虑能力和水平。考虑一下可以在不久的将来接受培训和开发的技术人员。
在新系统运行后,估算和评估当前系统(包括组织,管理,工作环境等)的影响和后果。同时,我们还应该考虑现有管理人员的培训和补充,并分析是否有可能在特定时间完成预定的系统开发任务。
在基于以上三个方面进行可行性分析和研究后,可以编制和编制新系统开发的可行性报告,这是整体规划工作的阶段性结果。
3.2 系统性能分析
(1)安全性:用户必须登录才能进入系统。否则,他们无权进入系统。系统满足不同用户的需求。用户登录后,无法进一步操作。
(2)可升级性:由于需求的不断增加,程序也要相应的调整,因此,系统必须要具备可升级性。
(3)机密性:在实际使用过程中,系统将涉及需要保密的数据。如果系统存在漏洞,将给用户带来巨大损失,因此我们全面开发系统。确保系统的可靠性。
(4)可靠性:系统不能有病毒代码,必须有内部信息拦截器,验证方法和保护措施,以便人们可以放心使用。
(5)简单:系统设计应易于学习。设计的各种功能应易于操作,无需努力学习并缩短熟悉用户系统的过程。
(6)一致性:应准确输入数据。需要更新时,应及时修改数据。数据应单独保存。如果无法删除数据,则将删除需要删除的数据。
3.3 系统功能分析
本系统实现一个高校图书管理系统,分为用户和管理员两种用户。具体功能描述如下:
前台用户模块包括:
- 网站首页:网站打开的第一个页面,显示网站的最新信息。
- 用户注册/登录:实现用户的注册和登录。
- 关于我们:实现关于我们的显示。
- 图书信息:实现图书信息的列表显示,点击可以查看图书信息详情,用户登录后可以填写借阅数量或在线借阅。
- 新闻信息:实现新闻信息的列表显示,点击可以查看新闻信息详情。
- 联系我们:实现联系我们的显示。
- 会员中心:用户登录后可以进入会员中心,在会员中心可以修改自己的信息,修改自己的登录密码,可以对意见信息进行添加、查看、修改或删除,可以还书,可以对自己借阅的图书进行评价,可以修改或删除评价信息。
后台管理员模块包括:
- 个人信息:管理员可以修改自己的登录密码,可以删除登录日志信息。
- 书馆信息:管理员可以修改关于书馆信息,修改联系书馆信息。
- 新闻信息:管理员可以对新闻信息进行添加、查看、修改或删除。
- 馆员信息:管理员可以对馆员信息进行添加、查看、修改或删除。
- 用户信息:管理员可以查看用户信息,可以回复用户意见信息。
- 图书信息:管理员可以对图书类型信息进行添加、查看、修改或删除,对图书信息进行添加、查看、修改、删除或上传缩略图。
- 借阅信息:管理员可以查看图书借阅信息,查看归还图书信息,可以删除图书评价信息。
- 系统管理:管理员可以修改自己的登录密码。
3.4 系统功能结构图
通过需求分析,确定系统功能如下图所示:
图3-1 系统功能结构图
3.5 系统流程分析
系统主要流程如下:
用户必须注册后才能登录系统。注册具体流程如下图所示:
图3-2 用户注册流程
管理员必须登录后才能进入系统。具体流程如下图所示:
图3-3 系统管理员管理流程
4 数据库设计
数据库设计的主要任务是概念设计,它实现了每个用户需求,归纳分类和抽象的总和,使他成为独立于DBMS概念的模型。 数据库的设计至关重要。 在设计时,首先,根据系统要求,绘制一个反映每个应用程序要求的E-R图,包括确定实体属性和连接类型。其次,在初始E-R图上进行了一系列优化,以消除现有的冗余和可能的矛盾。概念模型旨在客观地响应用户需求,而不包括特定的软件硬件。 因此,在这里我们需要关注如何表达用户对系统的需求,而不是考虑具体的实现问题。
4.1 数据库逻辑结构设计
规划出的实体有管理员实体、新闻信息实体、登录日志实体、图书信息实体、借阅图书实体、图书类型实体、评价实体、归还图书实体、用户信息实体、用户意见实体、馆员实体。主要实体的实体属性图描述如下:
1、管理员实体:
4-1管理员实体属性图
2、新闻信息实体:
4-2新闻信息实体属性图
3、登录日志实体:
4-3登录日志实体属性图
4、图书信息实体:
4-4图书信息实体属性图
5、借阅图书实体:
4-5借阅图书实体属性图
6、图书类型实体:
4-6图书类型实体属性图
7、评价实体:
4-7评价实体属性图
8、归还图书实体:
4-8归还图书实体属性图
9、用户信息实体:
4-9用户信息实体属性图
10、用户意见实体:
4-10用户意见实体属性图
11、馆员实体:
4-11馆员实体属性图
4.2 数据库物理结构设计
由前面的数据分析可建立如下几张表,各表详细信息描述如下:
- 管理员表
|----|---------------|---------|-----|-----|----|----|----|-----|
| 序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 |
| 1 | adminId | int | 11 | | 是 | 是 | | 否 |
| 2 | adminName | varchar | 255 | | | | | 是 |
| 3 | adminPassword | varchar | 255 | | | | | 是 |
- 新闻信息表
|----|-------------|---------|-------|-----|----|----|----|-----|
| 序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 |
| 1 | gonggaoId | int | 11 | | 是 | 是 | | 否 |
| 2 | gonggaoName | varchar | 255 | | | | | 是 |
| 3 | gonggaoMark | varchar | 20000 | | | | | 是 |
| 4 | gonggaoImg | varchar | 255 | | | | | 是 |
- 登录日志表
|----|-----------|----------|-----|-----|----|----|----|-----|
| 序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 |
| 1 | rizhiId | int | 11 | | 是 | 是 | | 否 |
| 2 | rizhiName | varchar | 255 | | | | | 否 |
| 3 | dengluIp | varchar | 255 | | | | | 否 |
| 4 | date | datetime | | | | | | 否 |
- 图书信息表
|----|------------|----------|------|-----|----|----|----|-----|
| 序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 |
| 1 | shujuId | int | 11 | | 是 | 是 | | 否 |
| 2 | shujuName | varchar | 255 | | | | | 是 |
| 3 | shujuMark | varchar | 2550 | | | | | 是 |
| 4 | shujuMark1 | varchar | 2550 | | | | | 是 |
| 5 | shujuMark2 | varchar | 2550 | | | | | 是 |
| 6 | shujuMark3 | varchar | 2550 | | | | | 是 |
| 7 | shujuDate | datetime | | | | | | 是 |
| 8 | shujuDate1 | datetime | | | | | | 是 |
| 9 | shujuZong | int | 11 | | | | | 是 |
| 10 | shujuZong1 | int | 11 | | | | | 是 |
| 11 | shujuZong2 | int | 11 | | | | | 是 |
- 借阅图书表
|----|----------------|----------|------|-----|----|----|----|-----|
| 序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 |
| 1 | sjjianchuId | int | 11 | | 是 | 是 | | 否 |
| 2 | sjjianchuName | varchar | 255 | | | | | 是 |
| 3 | sjjianchuMark | varchar | 2550 | | | | | 是 |
| 4 | sjjianchuMark1 | varchar | 2550 | | | | | 是 |
| 5 | sjjianchuMark2 | varchar | 2550 | | | | | 是 |
| 6 | sjjianchuMark3 | varchar | 2550 | | | | | 是 |
| 7 | sjjianchuDate | datetime | | | | | | 是 |
| 8 | sjjianchuDate1 | datetime | | | | | | 是 |
- 图书类型表
|----|---------------|---------|-----|-----|----|----|----|-----|
| 序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 |
| 1 | sjleixingId | int | 11 | | 是 | 是 | | 否 |
| 2 | sjleixingName | varchar | 255 | | | | | 是 |
| 3 | sjleixingMark | varchar | 255 | | | | | 是 |
- 评价表
|----|----------------|----------|------|-----|----|----|----|-----|
| 序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 |
| 1 | sjpinglunId | int | 11 | | 是 | 是 | | 否 |
| 2 | sjpinglunName | varchar | 2550 | | | | | 是 |
| 3 | sjpinglunMark | varchar | 2550 | | | | | 是 |
| 4 | sjpinglunDate | datetime | | | | | | 是 |
| 5 | sjpinglunDate1 | datetime | | | | | | 是 |
- 归还图书表
|----|----------------|----------|------|-----|----|----|----|-----|
| 序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 |
| 1 | sjshaochuId | int | 11 | | 是 | 是 | | 否 |
| 2 | sjshaochuName | varchar | 255 | | | | | 是 |
| 3 | sjshaochuMark | varchar | 2550 | | | | | 是 |
| 4 | sjshaochuMark1 | varchar | 2550 | | | | | 是 |
| 5 | sjshaochuMark2 | varchar | 2550 | | | | | 是 |
| 6 | sjshaochuMark3 | varchar | 2550 | | | | | 是 |
| 7 | sjshaochuDate | datetime | | | | | | 是 |
| 8 | sjshaochuDate1 | datetime | | | | | | 是 |
| 9 | sjshaochuZong | int | 11 | | | | | 是 |
| 10 | sjshaochuZong1 | int | 11 | | | | | 是 |
- 用户信息表
|----|--------------|---------|-----|-----|----|----|----|-----|
| 序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 |
| 1 | userId | int | 11 | | 是 | 是 | | 否 |
| 2 | userName | varchar | 255 | | | | | 是 |
| 3 | userPassword | varchar | 255 | | | | | 是 |
| 4 | userXingming | varchar | 255 | | | | | 是 |
| 5 | userSex | int | 11 | | | | | 是 |
| 6 | userAge | int | 11 | | | | | 是 |
| 7 | userMinzu | varchar | 255 | | | | | 是 |
| 8 | userPhone | varchar | 255 | | | | | 是 |
- 用户意见表
|----|--------------|---------|------|-----|----|----|----|-----|
| 序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 |
| 1 | uyijianId | int | 11 | | 是 | 是 | | 否 |
| 2 | uyijianName | varchar | 255 | | | | | 是 |
| 3 | uyijianMark | varchar | 2550 | | | | | 是 |
| 4 | uyijianMark1 | varchar | 2550 | | | | | 是 |
| 5 | uyijianMark2 | varchar | 2550 | | | | | 是 |
| 6 | uyijianImg | varchar | 255 | | | | | 是 |
- 馆员表
|----|----------------|---------|-----|-----|----|----|----|-----|
| 序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 |
| 1 | yonghuId | int | 11 | | 是 | 是 | | 否 |
| 2 | yonghuName | varchar | 255 | | | | | 是 |
| 3 | yonghuPassword | varchar | 255 | | | | | 是 |
| 4 | yonghuXingming | varchar | 255 | | | | | 是 |
| 5 | yonghuSex | int | 11 | | | | | 是 |
| 6 | yonghuAge | int | 11 | | | | | 是 |
| 7 | yonghuPhone | varchar | 255 | | | | | 是 |
| 8 | yonghuMinzu | varchar | 255 | | | | | 是 |
5 系统的详细设计与实现
5.1 网站首页页面
此页面为网站的首页,显示总的信息,先是左上角是网站名称,右上角是导航栏,导航栏包括:网站首页、关于我们、图书信息、新闻信息、联系我们、登录注册,网站最下方为版权和管理员入口。界面如下图:
图5-1网站首页页面
5.2 用户注册页面
此页面实现用户注册操作,注册信息包括:登录名、密码、确认密码、姓名、年龄、性别、电话、身份证。界面如下图:
图5-2用户注册页面
5.3 图书信息页面
此页面实现图书信息的列表显示,点击可以查看图书信息详情。界面如下图:
图5-3图书信息页面
5.4 图书信息详情页面
此页面实现图书信息详情的显示,用户登录后可以填写借阅数量或在线借阅。界面如下图:
图5-4图书信息详情页面
5.5 新闻信息页面
此页面实现新闻信息的列表显示,点击可以查看新闻信息详情。界面如下图:
图5-5新闻信息页面
5.6 登录日志信息页面
此页面为管理员功能,实现登录日志信息的管理,可以删除登录日志信息。界面如下图:
图5-6登录日志信息页面
5.7 添加新闻信息页面
此页面为管理员功能,实现新闻信息的添加,添加信息包括:名称、新闻描述。界面如下图:
图5-7添加新闻信息页面
5.8 馆员信息页面
此页面为管理员功能,实现馆员信息的管理,可以添加、修改或删除馆员信息。界面如下图:
图5-8馆员信息页面
5.9 用户信息页面
此页面为管理员功能,实现管理员可以查看用户信息。界面如下图:
图5-9用户信息页面
5.10 图书类型信息页面
此页面为管理员功能,实现图书类型信息的管理,可以添加、修改或删除图书类型信息。界面如下图:
图5-10图书类型信息页面
5.11 图书评价信息页面
此页面为管理员功能,实现图书评价信息的管理,可以删除图书评价信息。界面如下图:
图5-11图书评价信息页面
6 系统测试
软件测试是软件发布前的必要步骤。有各种各样的软件测试:功能测试、性能测试和接口测试。对于需要极端用户体验的移动应用程序,每项测试都特别重要。
对于软件来说,最重要的是功能。所以做功能测试很重要,有时也被称为黑盒测试。在测试期间,测试对象通常被视为一个黑盒。测试人员使用黑盒测试方法进行动态测试系统,需要测试软件产品的所有不同的功能和多次重复执行功能测试,而无需测试软件产品的内部结构和相关功能的实现过程。
软件的性能决定了软件能否满足大多数设备的正常运行。性能测试是通过自动化的测试工具,模拟一些软件的运行状态,如正常、峰值和异常负载条件对系统性能指标的影响。软件负载测试和压力测试都是性能测试,可以单独使用,也可以组合使用。负载测试可以确定软件系统在各种责任下的性能。测试过程是观察系统各项指标在负载缓慢增加时发生的变化,并通过这些测试结果进行相应的优化。压力测试是测试系统的瓶颈点,或通过增加测试条件来获得系统的最大压力点,从而获得系统的最高服务水平。
界面是用户首先要处理的,界面交互测试是极其重要的。一个设计良好的界面就像一个向导,吸引用户的第一眼,并允许他们自己探索特性。一个系统被用户感知的第一件事就是界面,所以界面决定了它能否将用户保留在首位。合理的界面和交互设计可以给用户带来轻松的感知和良好的心情。相反,界面设计的失败很可能会让用户感到沮丧,第一次放弃这个产品,这对于一个移动互联网应用来说是非常失败的。因此,接口分辨率的测试是接口测试的重点。
6.1 测试原则
应该尽早进行测试,最好是在需求阶段,因为最大的错误是系统不能满足用户的需求。程序员应该避免检查他们自己的程序,软件测试应该由第三方负责。在设计测试用例时,应考虑合法输入和非法输入以及各种边界条件。在特殊情况下,应创建极端状态和意外状态,如异常网络中断和停电。测试中应充分注意聚类问题。错误结果有一个验证过程。A的测试一般都会有误差,这需要B来确认。可以在审查会议中讨论和分析严重错误,以严格确认测试结果,问题是否确实存在以及问题的严重程度。制定严格的测试计划。务必制定测试计划并提供指导。测试时间表应尽可能宽松,并且不要期望在很短的时间内完成高水平的测试。维护测试计划,测试用例,错误统计和最终分析报告,以便于维护。
6.2 测试目的
确定可以通过测试避免的开发风险。进行测试以降低发现的风险。确定测试何时可以结束。将测试视为开发项目期间的标准项目。
6.3 测试分类
白盒测试,黑盒测试和灰盒测试根据它们是否关心软件的内部结构和实现进行分类。在执行程度方面:静态测试,动态测试。这些阶段按阶段细分为软件开发过程:单元测试,集成测试,验证测试,系统测试,验收测试,回归测试,g.pha测试,h.eta测试。
结束语
至此本毕业设计基本完成,在开发过程中经历了各种酸甜苦辣,从最开始的懵懵懂懂,到中期的渐入佳境,再到最后的得心应手。在本次毕业设计的过程中,遇到了不少问题,通过请教老师以及查阅相关资料,都一一解解决,使我学会了运用所学知识解决实际中的问题,使理论和实践得到充分结合,增强了自己的实践能力。
因为缺乏实际的商业项目经验,所学知识的有限,考虑问题不是太全面,所以本系统距实际应用还有一些差距,需要以后不断的进行测试及完善,并且测试的时间较短,存在一些未知的错误也在所难免。主要存在以下一些问题:
1.对于系统的扩展性考虑不足,在以后的改进过程中,可以使用重构方法对系统进行重构,增强系统的扩展性。
2.系统的安全性有待进一步提高,以后的改进过程中,可以通过对表关键字段内容进行加密,在系统中运用多种权限验证,以保证系统的安全。
通过这次毕业设计的经历,让我感慨良多,收获颇丰,所学的理论知识,在开发中也通过了实际验证,锻炼了自己实际动手能力,掌握了软件开发的流程,为以后的工作打下基础,使我受益终生。
致 谢
大学生活即将结束,在经历了找工作的尴尬和挫折之后,我深深体会到了知识的重要性。回顾大学四年的美好时光,对于那些指导我,帮助我并激励我的人,在此表示深深的感谢。本系统是在导师的精心指导下完成的。导师渊博的专业知识,严谨的学术态度,优秀的工作作风,朴实高尚的道德观,对我产生了深远的影响。从课题的选择到完成,每一步都在导师的精心指导下完成,导师投入了大量的时间和精力。在撰写论文的过程中,我遇到了很多问题。在导师的指导下,问题都完美解决。在此,我要表示高度的敬意和衷心的感谢!
我还要感谢我们学院的所有领导和老师。是他们一丝不苟的教学,使我学到了专业的知识并掌握了许多专业技能。正是由于多年知识的积累,使我顺利的完成了这篇论文。
然后我要感谢我的同学们无私的帮助让我感受到校园的温暖。在撰写论文的过程中,许多学生给了我信息支持,我想表达我的感激之情。
最后,我要感谢我的父母。在我十多年的学习中,我离不开父母的鼓励和支持。感谢他们辛勤的工作,为我创造良好的学习条件。
我很快就要毕业了。在未来的工作和生活中,我会记住老师的教诲,并继续不懈的努力和追求,并回报所有支持和帮助我的人!谢谢你们!
主要参考文献
[1]陈恒、楼偶俊、朱毅、项聪、张术梅。 JSP网站设计[J].清华大学出版社, 2017(8):72-72.
[2]张跃平、耿祥义。JSP程序设计[J].清华大学出版社,2017,(22):
[3]RuiZHANG,HuiMA,YaoLU,YangLI.Provablysecurecloudstorageformobilenetworkswithlesscomputationandsmalleroverhead[J].ScienceChinaInformationSciences),2017,60(12):
[4]江承尧。MySQL技术内幕 InnoDB存储引擎[J].机械工业出版社,2013,44(11):
[5]张工厂。MySQL从入门到精通[J].清华大学出版社,2017,(22):
[6]甘长春,孟飞。MySQL数据库管理实战.人民邮电出版社,2016,27(06):
[7]刘玉红,郭广新。MySQL数据库应用[J].清华大学出版社,2016,(11):
[8]孙菲亚、孙俊玲、马杰。MySQL数据库实用教程[J/]. 清华大学出版社,2015,(15):169.
[9]陈恒、朱毅、项聪. JSP网站设计教学做一体化教程.清华大学出版社,2017.
[10]克伦克。数据库处理-基础、设计与实现.电子工业,2016.
[11]Chao.Entangled pieties. Palgrave Macmillan,c2017.
[12]郑阿奇。MySQL实用教程.电子工业出版社,2017.
需要源码 其他的定制服务 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 或者私信作者