课程设计期刊文章管理系统的设计与实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
第一章绪论 (1)
1.1 课题研究的目的及意义 (1)
1.2 国内研究动态 (1)
1.3 课题概述 (1)
第二章系统分析 (2)
2.1 可行性分析 (2)
2.1.1 经济可行性 (2)
2.1.2 技术可行性 (2)
2.1.3 操作可行性 (3)
2.2 系统总体需求分析 (3)
2.2.1 管理员功能模块分析 (3)
2.2.2 用户功能模块分析 (5)
2.3 系统数据流图分析 (5)
2.4 系统E-R图分析 (5)
2.5 系统流程图分析 (7)
第三章开发工具的选择与运行环境 (9)
3.1 开发工具及相关技术简介 (9)
3.1.1相关工具简介 (9)
3.1.2相关技术概述 (10)
3.2 系统运行环境 (11)
第四章系统详细设计 (12)
4.1 数据库设计 (12)
4.1.1数据库表的设计 (12)
4.1.2数据库连接 (14)
4.2 系统结构设计 (14)
第五章系统测试 (15)
5.1 管理员功能模块测试 (15)
5.2 用户功能模块测试 (20)
5.3 系统的维护 (23)
第六章总结与展望 (24)
6.1 总结 (24)
6.2 展望 (24)
参考文献 (26)
致谢 (27)
附录 (28)
第一章绪论
1.1 课题研究的目的及意义
在计算机技术飞速发展的今天,社会上还存在着落后的信息处理方式,这显然是没有跟上时代的步伐,制约了一些产业的发展,不能推动社会的进步,所以有必要开发一款软件来满足社会的需要,减轻人们的工作负担。
从另一方便讲,开发本系统会巩固我在大学随学的知识,增强了自己的自学能力及编程能力,了解了软件开发的全部过程,有利于自身素质的发展,能为以后的工作做一个良好的铺垫。
1.2 国内研究动态
在快速发展的中国,计算机技术已快速被普及,人们已经进入了信息化时代,它的应用节约了大量的人力物力,这也证明了科学技术是第一生产力的道理。
但是,对于本系统而言,该系统的出现也呈现了多元化,当前应用比较广泛的刊物管理系统多是Client/Server方式的两种结构,社会上不同语种所开发的系统,对系统管理人员、读者用户、客户端都提出了要求,本系统将兼顾这些问题,开发一种操作简单,界面整洁,可移植性强的系统。
1.3 课题概述
随着计算机科技的飞速发展和社会进步,尤其是计算机的大范围普及,传统的手工操作已渐渐被人工智能化的计算机应用所替代,利用智能的系统可以做到信息的规范管理、科学统计和快捷的查询,从而减少管理人员的工作量。
进入21世纪后,人们的生活质量在不断地提高,人们的生活需要不仅仅局限在物质上面,精神层面也同样得到了重视,这就使得期刊书社的规模不断扩大,期刊数量急剧增多,随之带来的期刊各种信息就会成倍增加。
因此,需要对读者信息、管理员信息、期刊信息进行管理,这就有必要开发期刊文章管理系统来实现这一功能,来满足期刊书社的日常业务需求,方便读者与管理员。
在本系统中,大体上可以分为管理员模块和用户模块,具体实现的功能将在后面展示。
第二章系统分析
2.1 可行性分析
通过初步调查及查阅资料,人工智能化应用程序,实现管理现代化、办公自动化、和程序运行可移植化,是现代化办公管理的必然趋势。
传统的期刊文章管理复杂、繁琐、混乱、耗时大,在汇总以后分析更加困难,因此迫切需要期刊文章管理系统来辅助管理。
对要开发的期刊文章管理系统从技术上、经济上和操作上进行是否可行的研究与分析[1],这样对于开发者能够了解该系统的所要用到的技术、开发成本及其前景,还可以为用户考虑操作是否简单易上手。
2.1.1 经济可行性
在前期的可行性分析中已对经济可行性做了初步总结。
经济可行性主要是对软件开发前期的资金投入的与系统开发完成后上线所带来的经济效益来相互比较。
由于网络已经普及,所以本系统在网络设备上不需要花费太多的资金。
在前期投入中开发成本不大,主要的经济投入是在软件的维护上。
在后期上线后,用户只要购买安装本软件就能运行,还要要求客户端具备客户机的基本功能。
2.1.2 技术可行性
期刊文章管理系统在技术层面上,前期的网页设计上主要采用HTML、CSS和JS作为开发工具,采用HTML能够开发简单的静态的网页[2],后期用CSS处理,但是,考虑到本系统的人性化设计,在用户进行填写表单时,会进行表单验证,一旦用户操作错误或填写不合理时,在提交时会显示错误的原因,以便用户能够快速改正,这就运用到了JS技术。
后期开发主要采用java作为工具,Tomcat 作为后台服务器,Mysql作为后台数控支持,这样能够保存期刊、读者的各种信息。
JSP可以作为网页数据交换支持[3]。
但是,在设计与编程过程中,明显感觉到了力不从心,好多知识点不能应用到程序中去。
在老师的悉心指导下,以及翻阅了大量的资料,才使得该系统顺利开发出来。
因为技术和实践方面的不足,本系统还存在大量的不足,我会在以后的学习中继续钻研,力争该系统能够完美。
2.1.3 操作可行性
在客户没有使用本系统以前,期刊管理人员采用的是人工操作的方式,耗时大,效率低,操作复杂。
但是对于有一点计算机基础的客户来说,安装了本系统软件,能够摆脱这一困扰。
客户只需打开软件的客户端,以不同身份登陆,会显示不同界面,能快速查询所要的期刊信息以及能够完成相应业务。
每个人都很容易上手,操作简单,这也是本系统的优势所在。
2.2 系统总体需求分析
需求分析在软件的开发过程是至关重要的,关联到软件的整个开发过程,复杂度越高的软件,需求分析就越显得重要。
在系统的开发前期,系统分析人员根据对用户的调查及分析,可以大致得出系统的需求所在,而后,开发人员根据需求进行编码。
期刊文章管理系统的设计与实现实现了以下功能:
(1)管理员功能:添加借阅者记录、查询借阅者记录、添加期刊信息、查询期刊信息、添加借阅者、查询借阅者信息、修改密码、返回登录界面以及查看用户留言。
(2)用户功能:查看所有的期刊信息、查询特定用户的借阅记录、在线文章阅读以及留言。
2.2.1 管理员功能模块分析
(1)管理员登陆
本系统设计的是没有注册的管理员是不能进入系统的,但是,在设计过程中,已在数据库中添加了管理员信息,管理员只要在登陆页面输入用户名和密码,点击“登陆”按钮,如果系统没有弹出错误提示,则进入管理员系统页面。
(2)添加借阅者记录
在本系统中管理员只要输入期刊书号和借阅证号就能把借阅信息输入到系统中。
但是,在操作过程中如果期刊书号或者借阅证号不存在,点击“确定提交”按钮后,会提示“添加失败”消息,经管理员核实后,可以重新输入以上信息,完成操作。
(3)查询借阅者记录
在本系统中如果想要查询用户的借阅记录,管理员可以按照期刊号查询、借
阅号查询、借阅时间查询、未还借阅记录查询、已还借阅记录查询,当然,还可以查询所有用户的借阅记录。
管理员可以对查询出来的结果进行修改和删除。
(4)添加期刊信息
在管理员主页面上,点击“添加期刊信息”后,管理员需要输入期刊的书号、期刊的名称、期刊的价格、期刊的作者以及期刊的出版社,输入的信息在点击“添加”按钮后,会自动保存在数据库中。
(5)查询期刊信息
在管理员登陆主页面后,点击“查询期刊信息”后,管理员可以按照书号查询、期刊作者查询、期刊名称查询、期刊出版社查询,还可以查询所有的期刊信息,管理员可以对查询出来的信息经行修改和删除。
(6)添加借阅者
为实现用户在没有注册的情况下,还能借阅到期刊,在管理员主页面上,点击“添加借阅者”后,管理员需要输入借阅者的借阅证号、借阅者的名称以及借阅者的身份证号,在点击“添加”按钮后,输入的信息将自动保存在数据库中,这时,借阅者就可以借阅期刊。
(7)查询借阅者信息
在管理员登陆主页面后,点击“查询借阅者信息”后,管理员可以根据借阅者的借阅证号查询、借阅者的身份证查询、还能查询所有的借阅者信息,管理员可以对查询出来的结果经行修还或删除。
(8)修改密码
如果管理员想要修改自己的密码,只需要输入原来的密码,再连续输入两次相同的新设置密码,在点击“修改”按钮后,密码则修改成功。
(9)返回登陆页面
如果管理员想要重新登陆或者其他管理员登陆,只要在管理员主页面上,点击“返回登录页面”,即可完成此操作。
(10)查看用户留言
在管理员主页面上,管理员只要点击“查看用户留言”,管理员则可查看读者用户对管理员的留言信息,这就使得管理员可以时时关注读者用户的需求状况。
2.2.2 用户功能模块分析
(1)用户注册
为了减轻管理员的工作量,用户可以自行注册,只需输入借阅证号、姓名以及身份证号,便可完成注册操作。
(2)查看所有期刊信息
读者用户登录用户页面后,想要查看期刊库中有哪些期刊,只需要点击“查看所有期刊信息”,就可以显示出来。
(3)查看特定用户借阅信息
读者用户登录用户页面后,想要查询自己借阅了哪些书及借阅状态,只要输入自己的用户号即可显示在页面。
(4)用户讨论区
读者用户登录用户页面后,可以发表自己对本系统的意见或发表对管理员的建议,还可以发表看过期刊后的感触及心得。
2.3 系统数据流图分析
数据流图分析是描述系统有哪几部分组成,各个功能模块与系统的关系,从而让用户更好的理解系统的功能。
图1 系统数据流图分析
2.4 系统E-R图分析
通过对本系统的整体架构进行分析,我们已经了解系统所具有的整体功能,
现将各实体的实体图说明如下。
下图2是用户实体图,其中包括用户账号、用户名称、用户密码。
图2用户实体图
下图3是管理员实体图,其中包括管理员编号、管理员名称、管理员密码。
图3 管理员实体图
下图4是期刊实体图,其中包括期刊的书号、期刊作者、期刊出版社、期刊价格、期刊名称。
图4 期刊实体图
经过以上实体图分析后,整个系统的E-R 图如下。
1 M N 1
1
M
1 M M N
图5系统E-R 图
2.5 系统流程图分析
用户 提交
借阅表 期刊 管理员
留言 执行 查看 被借管理
以上图6是管理员流程图。
以下图7是用户流程图。
图7 用户流程图
第三章开发工具的选择与运行环境
3.1 开发工具及相关技术简介
本系统采用的工具有JDK1.6.0、Tomcat6.0、MyEclipse8.5、MySQL,使用的技术有Java、JSP、JavaScript、JDBC等。
3.1.1相关工具简介
(1)JDK1.6.0
JDK是Sun公司Java应用程序和组件的开发环境,是编译和测试工具,也是提供Java程序的Java虚拟机平台,是调试和运行JSP所不可缺少的工具。
本系统采用JDK6.0版本。
(2)Tomcat
Tomcat是开源的servlet和JSP容器,它是Jakarta项目中一个重要的组成,由Apache、Sun和其他一些公司及个人开发。
Tomcat内部实现了Servlet和JSP 引擎,而且扩展了一些应用服务器的功能。
(3)MyEclipse8.5
MyEclipse是一个十分优秀的用于开发java项目,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也非常广泛,尤其是对各种开源产品的支持十分不错。
MyEclipse本身是Eclipse的一个插件,但是MyEclipse提供了比Eclipse强大的功能,集成了很多的插件和类库[4],对于给MyEclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有相同的发挥场所,在另一方面,MyEclipse界面简洁,易于上手,操作也非常的简便。
在MyEclipse 应用程序中,可以使用结构化查询语言SQL数据标准,注解访问服务器上的数据库。
对于一个新手来说,写程序中难免会出现错误,但是在MyEclipse中出现了错误会及时指出,以便让我们快速改正,节省了我们的时间,而且在MyEclipse 上编程的软件可读性强。
MyEclipse的开放、自由、免费也是它迅速发展的原因,MyEclipse会越来越受到欢迎的。
(4)Mysql与Navicat forMysq
Mysql是当今社会流行的数据库,它是一个关系型数据库管理系统,是由
瑞典Mysql AB公司开发的,目前是属于Oracle公司的。
关联数据库系统将数据保存在不同的表中,而不是讲所有数据存放在一个大仓库内,这就增加了速度并提高到了性能[5]。
Mysql采用的是SQL语言,SQL语言是“结构化查询语言”最常用的标准化语言。
Mysql采用了GPL。
由于Mysql文件小,运行时不占内存,而且,Mysql是开源的,许多中小型企业可以采用Mysql作为后台数据支持,这样可以降低企业运行的成本。
Navicat for MySQL是一套专为MySQL设计的强大数据库管理及开发工具。
它可以用于任何3.21或以上的MySQL数据库服务器,并支持大部分MySQL最新版本的功能,包括触发器、存储过程、函数、事件、检索、权限管理等等。
它提供了类似Mysql的用户管理界面工具,它的出现讲解放J2EE程序员以及数据库设计者、管理者的大脑,降低了开发成本,从而减小了前期的资金投入,为用户带来了更高的开发效率。
Mysql和Navicat for Mysql结合能够很好地为用户的数据操作提供了保障。
3.1.2相关技术概述
(1)Java语言概述
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun 公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称[5]。
Java语言的诞生对传统的计算机模式提出了挑战,它的出现重新布局了软件行业,使得软件行业得到了空前发展,java对时代的重要性,未来还会不断扩展,因为java是面向生活的一门语言,从长远来看,我们的生活中处处可以体会到java让我们的生活变的简单、快捷。
Java是一种面向对象的语言,在开发系统的过程中可以灵活运用。
Java具有移植性高,安全性强,能够执行多线程任务,支持可视化图形界面[7],其中多线程的运用,能够满足多个用户同时运行此软件,节约了成本,提高了效率。
Java 语言的可移植性强,也使得用java语言开发项目,可以处处运行,而且在软件运行时稳定性较强。
在另一方面,java提供了功能强大的语言库,在设计上没有了C语言和C++的指针的概念,这也使得编程变的简单,而在JVM中增加了垃圾回收机制,让系统能自动释放内存,提高了电脑的运行效率。
(2)HTML、JSP技术概述
HTML是超文本标记语言,是用于描述网页文档的一款标记语言。
HTML是可以实现简单的静态页面[8]。
JSP是由Sun公司倡导、许多公司参与一起建立的一种动态网页技术标准,是WEB项目,经常要用到的一种语言[9]。
3.2 系统运行环境
在软件方面:
操作系统是Windows 2003以上版本;数据库使用MySQL8.5或以上版本,JDK1.5或以上版本,Tomcat5.0或以上版本。
IE为IE8.0。
在硬件方面:
内存至少为128MHZ;CPU要求为Inter Pentium 800MHZ或以上更高频率的CPU。
第四章系统详细设计
4.1 数据库设计
数据库设计是系统开发过程中的重要组成部分[10],只有准确地分析各个表组成的字段,才能为以后的开发打下坚实的基础。
4.1.1数据库表的设计
本系统采用MySQL作为后台数据库。
根据对系统的详细分析,设计出了以下数据库表。
现将各个表说明如下。
(1)管理员表
该表保存了系统管理员的基本信息,包括管理员的账号、管理员名称、管理员的密码,其中管理员的账号作为主键,它是管理员用户唯一的标识。
如下表1所示。
(2)用户表
该表保存了系统用户的基本信息,包括读者用户的账号、读者用户的名称、读者用户的身份证号,其中读者用户的账号作为主键,它是用户的唯一标识。
如下表2所示。
(3)用户借阅表
该表保存了系统用户和期刊关系的基本信息,包括表Id、借阅时间、是否归
还、用户账号、期刊书号、归还时间,其中该表的lrId作为主键,它是该表的唯一标识。
如下表3所示。
(4)期刊表
该表保存了系统期刊的基本信息,包括期刊的序号、期刊的名称、期刊的作者、期刊的价格、期刊的出版社,其中期刊的序号作为主键,它作为本表的唯一标识。
如下表4所示。
(5)留言表
该表保存了本系统用户留言的基础信息,包括留言序号、留言内容、用户名字、留言时间,其中留言的序号作为主键,它作为本表的唯一标识。
如下表5所示。
4.1.2数据库连接
数据库在开发过程中起着重要的作用[11],在本系统中它主要是保存期刊的信息、管理员与用户的信息。
数据库与本系统的连接,其代码将附在附录中。
4.2 系统结构设计
本系统在大体上分为管理员模块和用户模块,管理员模块主要是对期刊信
息和读者信息的增删改查,用户模块主要是对期刊信息和用户信息的查询,两大模块之间是通过留言功能联系在一起的。
整个系统的框架图如下图8所示。
图8 系统结构框架图
期刊文章管理系统
用户 管理员
期刊信息查看 借阅状态查询
在线阅读 用户信息管理
期刊信息管理
查看留言
用户留言
第五章系统测试
打开Myeclipse8.5,启动tomcat6.0,使期刊文章管理系统能正常运行。
5.1 管理员功能模块测试
在地址栏中输入:http://localhost:80/magazinemanager2/index.jsp,系统会自动跳到该系统的管理员页面首页。
图9 期刊文章系统管理员登陆界面
管理员在输入信息过程中,如果输入的用户名或密码不正确,系统会自动弹出如下对话框。
在管理员操作过程中,如果管理员的操作不符合规范,也会弹出类似下图10对话框。
图10管理员登陆失败提示
管理员输入正确的用户名和密码后,系统会自动跳到图11页面:
图11管理员业务页面
在管理员主菜单界面,有“添加借阅者记录”、“查询借阅者记录”、“添加期刊信息”、“查询期刊信息”、“添加借阅者”、“修改密码”、“返回登录界面”、“查看用户留言”九个基本业务。
用户可以选择相应的业务进行办理。
现将管理员主菜单上的功能一一说明,具体如下:
(1).在管理员主菜单上点击“添加借阅者记录”选项,系统会自动跳转到图12页面,管理员需要输入期刊书号和借阅者号,点击“添加”按钮后,系统跳转到图13界面,表明添加借阅者记录成功。
图12添加借阅者记录界面
图13添加借阅者记录成功界面
(2).在管理员主菜单上点击“查询借阅者记录”选项,系统会自动跳转到图14页面,管理员可以根据自己的需求选择相应的操作。
现将查询所有借阅者记录演示结果如图15。
图14查询借阅者记录界面
图15查询借阅者记录成功界面
(3).在管理员主菜单上点击“添加期刊信息”选项,系统会自动跳转图16页面。
添加成功系统则跳转到图17界面。
图16添加期刊信息界面
图17添加期刊信息成功界面
(4).在管理员主菜单上点击“查询期刊信息”选项,系统会把所有期刊信息显示出来,管理员可以根据自己的需要选择相应的操作。
图18查询期刊信息界面
图19查询期刊信息成功界面
(5).在管理员主菜单上选择“添加借阅者”选项,动跳转到图20页面。
图20添加借阅者资料界面
图21添加借阅者资料成功界面
(6).在管理员主菜单上选择“查询借阅者信息”选项,系统跳转到图22页面。
查询成功系统则跳转到图23界面。
图22查询借阅者信息界面
图23查询借阅者信息成功界面
(7).在管理员主菜单上点击“修改密码”选项,系统则跳转到图24页面。
管理员需要输入原来的密码,再连续输入两次相同的新设置密码,点击“修改”按钮后,数据会被系统自动保存,修改密码成功。
图24修改密码界面
(8).在管理员主菜单上点击“返回登录页面”选项,系统会自动跳转到图1页面。
(9).在管理员主菜单上点击“查看用户留言”选项,系统会自动跳转到图25页面。
图25读者用户主界面
5.2 用户功能模块测试
用户在地址栏中输入:http://localhost:80/magazinemanager2/login.jsp 即可进入用户页面:
图26期刊文章管理系统用户界面
如果用户还没有账号,可以点击立即注册,则系统跳转到如下页面:
图27期刊文章管理系统用户注册界面
当用户输入了正确的账号和密码后,则可进入用户的主页面:
图28期刊文章管理系统用主界面
现将用户功能模块演示如下:
(1).在用户页面主菜单上选择“点击查看所有期刊信息”选项,系统则会自动跳转到图19界面。
(2).在用户页面主菜单上选择“点击查看用户借阅情况”选项,系统会显示图29界面。
图29用户借阅信息界面
(3).在用户页面主菜单上选择“输入关键字查询”选项,系统会自动跳转到图30页面。
现以按出版社查询方式,输入“甘肃”,则系统显示的是图31页面。
图30输入关键字查询界面
图31输入关键字查询成功界面
(4).在用户页面主菜单上选择“点击留言”选项,系统会自动跳转到图32界面,当点击“点击提交”后,跳转到图33界面,则表明留言成功。
图32用户留言界面
图33用户留言成功界面
(5).如果用户想要在线阅读,以阅读读者为例,只需要点击“读者”,即可进入读者官网。
如下图34所示。
图34用户在线阅读界面
5.3 系统的维护
为了能使期刊文章管理系统能时时适应社会的需要,满足新提出的要求,需
要对本系统进行更新和维护,当有新的功能出现时,用户或者管理员可以时时联系开发人员,以便做出改善。