毕业设计(论文)-在线期刊投稿系统的设计与实现.docx_第1页
毕业设计(论文)-在线期刊投稿系统的设计与实现.docx_第2页
毕业设计(论文)-在线期刊投稿系统的设计与实现.docx_第3页
毕业设计(论文)-在线期刊投稿系统的设计与实现.docx_第4页
毕业设计(论文)-在线期刊投稿系统的设计与实现.docx_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

盐 城 师 范 学 院毕业设计 在线期刊投稿系统的设计与实现学生姓名 学 院 信息工程学院 专 业 软件工程 班 级 学 号 指导教师 2016年5月16日盐城师范学院毕业设计在线期刊投稿系统的设计与实现摘 要随着计算机技术在现代管理中的应用越来越广泛,计算机逐渐成为管理人员和领导者应用现代技术的重要工具。随着信息技术的飞速发展,大数据是现在面临的一大热点问题,人工的管理方式已经不能满足如此庞大的数据。计算机辅助期刊在线投稿管理,可以使管理者采集、处理信息的能力极大地增强,使管理者更加便于及时决策。该系统基于Spring、Struts2与Mybatis,运用了JSP、JQuery、Ajax等开发技术和MyEclipse、Dreamweaver等开发工具。系统功能模块包括前台和后台两部分。其中,前台除了有简单的浏览网站功能还有注册登录用户的投稿、修改个人信息、查看投稿状态等功能。后台包括了编辑的人员管理功能、稿件审核功能和统计功能、留言和公告管理功能,还有专家的审稿功能。实现了一个将原始数据、资料等进行加工、保存,管理人员科学化的期刊在线投稿信息管理系统。【关键词】 期刊;投稿系统;Spring;Struts2;Mybatis全套设计加扣 3012250582The Design and implementation of Journal online submission system AbstractThe application of computer technology in modern management has made the computer become an important tool for leaders and managers to apply modern technology.With the rapid development of information technology, big data is now facing a big hot issue, and artificial management has been unable to meet such a huge data. Computer aided Journal online submission management, can greatly enhance the ability of managers to collect and process information, which is conducive to the timely decision of managers.The system is based on Spring Struts2 and Mybatis. The system used JSP, JQuery, Ajax and other development technologies and MyEclipse, Dreamweaver and other development tools. The system function module includes two parts, the foreground and the background. Among them, in addition to the simple web browsing function and registered user login, modify personal information, view the submission submission status and other functions. The background includes the editors personnel management function, manuscript audit function and statistical function, message and announcement management function, and the experts review function.The system realized a raw data processing, storage, scientific management of journals online submission information management system. 【Keywords】periodical;Submission System;Spring;Struts2;Mybatis目 录1前言11.1研究背景及意义11.2研究目的及主要内容12 开发工具和开发技术简介12.1 开发工具介绍12.1.1 开发工具MyElipse介绍12.1.2 服务器Tomcat介绍22.1.3 数据库SQL Server 2008介绍22.2相关开发技术22.2.1 JSP介绍22.2.2 Mybatis介绍23 需求分析33.1 功能需求分析33.2 性能需求分析54 系统概要设计64.1 系统模块图64.2 功能模块介绍64.2.1 用户子系统功能模块64.2.2 编辑子系统功能模块74.2.3 专家子系统功能模块74.3 系统架构设计84.3.1 系统架构设84.3.2 系统实现方案85 数据库设计95.1 数据库需求分析95.2 数据库逻辑设计106 系统实现126.1 主页实现126.2 用户注册登录模块实现136.3 用户投稿模块实现176.4 数据统计模块实现186.5 编辑人员管理模块实现196.6 稿件审核管理模块实现206.7 专家审稿模块实现237 总结24参考文献25致 谢261前言1.1研究背景及意义 设计在线期刊投稿管理系统主要是为方便对期刊投稿的一系列相关工作进行管理,该系统的建立使期刊在线投稿管理,更加规范化、系统化,查询手段更加便捷化。同时,在线期刊投稿管理系统也是实现投稿管理系统信息化和现代化的重要内容。近年来,随着投稿人数和稿件数量的逐渐增加,人工管理的方式已经不能满足实际需要。且人工管理存在以下几个弊端:对象范围广,数据存储不易;数据量大,且数据容易冗余;成千上万的信息不易存档。为了更好地适应信息时代的高效性,利用计算机来实现期刊在线投稿管理工作非常有必要。基于这一点,设计一个在线期刊投稿管理系统,用来对期刊进行在线投稿管理,以便节约人力物力。在线期刊投稿管理系统能根据管理过程的变化情况,将原始数据、资料等进行加工、保存,管理人员可以进行动态管理,在解决具体问题需要信息资料时,随时进行检索查询,了解整个期刊在线投稿管理系统系统的动态情况,从而有效的处理期刊在线投稿管理系统的管理工作,实现期刊在线投稿管理系统信息管理的自动化,提高效率1。1.2研究目的及主要内容随着信息技术的不断发展,期刊的管理将越来越依赖于信息化的管理。系统开发将围绕期刊在线投稿管理系统工作的实际情况,使之能迅速适应用户和管理人员的需要。在调研过期刊投稿的实际情况之后,进行了详细的需求分析,对现有的管理模式进行改进,开发出一套新型的管理系统,从中领悟系统开发的思想,掌握系统开发的流程和方法。2 开发工具和开发技术简介2.1 开发工具介绍2.1.1 开发工具MyEclipse介绍MyEclipse是企业级开发平台,也是Eclipse IDE的扩展,通过它可以释放和服务器整合,大大减少数据库和JavaEE的开发时间,也为我们有效地提高了工作效率。它完善了集成JavaEE的企业环境,包括功能代码和测试项目等。支持Hibernate、HTML、CSS、Struts、JSP、Spring、MyBatis等框架。MyEclipse也支持JDBC数据库和Java、 servlet、 Ajax JSF的连接功能2。MyEclipse是目前比较好的主流的开源框架包含开发工具。2.1.2 服务器Tomcat介绍Tomcat是阿帕奇公司的一个开源项目,由Sun公司和其他公司以及个人共同研发。Tomcat服务器运行稳定、开源,得到了许多软件开发人员及软件开发商的肯定,在Web服务器中也是目前最为流行的一种。Tomcat是一个免费的开源的Web应用服务器,属于轻量级的应用程序服务器,被用来当访问量较少或访问压力比较小的项目的服务器。当计算机配置了Apache服务器后,可用于响应HTML页面的访问请求3。2.1.3 数据库SQL Server 2008介绍SQL Server 2008可以组织数据并管理任何数据,信息工作者可以直接使用日常工具访问数据。它可以查询、搜索、同步、数据报告和分析操作,可以将非结构化、结构化和半结构化文档数据存储在数据库中。数据可以存储在各种设备中,包括最大的服务器台式电脑和移动设备,无论数据存储在哪里,它们都可以控制数据。SQL Server 2008数据仓库中的数据容量随着操作系统数目的快速增加而在持续增长。内嵌在SQL Server 2008中的数据压缩使得用户更有效的存储数据4,因为降低了I/O 要求,同时还提高了性能。2.2相关开发技术2.2.1 JSP介绍与ASP技术相类似,JSP是一种动态网页技术标准。它把JSP标记和Java程序段插入到HTML传统文件中并形成JSP文件。(1)JSP标签通常以结束,主要用于实现Java Web应用程序的用户界面部分。(2)JSP技术开发Web程序,Java代码写的JSP页面,JSP页面服务器,运行在Java代码上进行数据的动态访问5,并生成HTML代码,最后出现在客户端浏览器。(3)JSP的作用是在动态网页的基础上,实现与用户的交互扩展。 2.2.2 Mybatis介绍MyBatis 是目前最流行的SQL 映射框架,其功能架构分为三层:API接口层、数据处理层、和基础支撑层6。API层负责提供外部使用的接口,数据层负责调用的请求完成一次性数据库操作,基础层负责最基础的功能支持。有以下几个优点: (1)易于上手和掌握。(2)SQL写在XML里,便于统一管理和优化。(3)解除SQL与程序代码的耦合。(4)支持映射标签,支持持久化类与数据库的ORM字段关系映射。(5)支持对象关系映射标签,提供对象关系组建维护服务。(6)支持XML标签,支持编写动态SQL。3 需求分析3.1 功能需求分析在线期刊投稿系统为用户提供了从投稿到稿件审核完毕的所有流程,该平台要为未注册用户提供浏览网站风采,查看投稿流程等有限功能,以保护已注册用户的隐私,投稿人提供修改个人资料、投稿、查看本人投稿状态等功能,要为编辑提供稿件初审及终审、专家及投稿人管理、留言管理、网站期刊栏目文章管理和公告管理等功能,为审稿专家用户提供个人资料修改,审稿及已审稿件查看等功能。系统的角色分为三类:普通用户、编辑管理员和专家用户。(1)普通用户普通用户是网站中最主要用户之一,其主要功能如下,用例图如3-1所示:1)用户可浏览网站的基本信息,可以注册使用;2) 已注册用户可进行投稿,以及查看自己已投稿件的状态;3)用户可修改自己的基本信息及密码;4) 用户可以在本网站下载投稿模板,使用模板;5)用户可以对本网站的意见或有的疑惑进行留言,与编辑沟通。图3-1 用户用例图(2)专家用户专家的操作较简单,其主要功能有三点。经编辑授权之后,登录使用修改个人资料、审核待审核稿件和查看自己已审核稿件,用例图如3-2所示。图3-2 专家用例图(3)编辑用户编辑是最高权限人,也起到维护和授权的作用,其主要职责如下,用例图如3-3所示: 1)编辑修改个人密码需验证原密码,原密码正确则可设置新密码;2)编辑进行各种人员管理。专家人员管理包括录入专家的基本信息,对专家人员进行添加或删除。普通用户管理可以对恶意用户进行删除;3)编辑对各种期刊栏目及栏目文章进行查看、增加、修改和删除;4)编辑对期刊栏目文章进行添加、删除及编辑;5)编辑对已投稿件进行一审、退稿、送审专家和最终确定审核的操作;6)编辑在网站中发布和删除一些公告;7)编辑对用户的留言进行回复,如用户留言有不妥之处可以删除。图3-2 编辑用例图3.2 性能需求分析 (1)可使用性操作界面简单明了,易于操作,对格式和数据类型限制的数据,进行验证,包括客户端验证和服务器验证,并采用错误提醒机制,提示用户输入正确数据并进行正确的操作。(2)时间特性系统响应时间应在人的感觉和视觉范围内(1s),系统响应时间足够迅速(5s),能够满足用户要求。(3)安全保密性只有合法用户才能登录使用系统,对每个用户都有权限设置。对注册用户的密码进行了加密保护,保证账号信息的安全。(4)可维护性系统采用的B/S模式,结构清晰,可实现多用户的访问与操作,交互性较强便于维护人员进行维护。4 系统概要设计4.1 系统模块图根据需求分析得出:期刊在线投稿系统根据用户角色分为三个子系统,分别为用户子系统,编辑子系统,专家子系统。用户子系统分为登录注销模块、用户投稿模块、用户留言模块、信息修改模块。 编辑子系统分为登录注销模块、个人信息模块、人员管理模块、稿件审核模块、栏目管理模块、留言管理模块、公告管理模块。专家子系统分为登录注销模块、稿件审核模块、已审稿件查阅模块。系统整体功能模块图如图4-1所示 :图4-1 系统功能模块图4.2 功能模块介绍4.2.1 用户子系统功能模块 (1)用户投稿模块用户子系统中最重要的功能模是用户投稿模块。在用户登录成功之后,在投稿界面,系统自动填充投稿人以及投稿人工作单位,其他的信息由用户自行填写,用户也可以修改自己的姓名和工作单位,在所有资料填写完成并选择要上传的稿件之后,用户上传进行投稿。投稿成功之后,用户可转到状态查询中对自己已投稿件进行下载和状态查询,稿件的状态有:待审核、已送审、正在审核、审核失败和审核通过。 (2)用户留言模块期刊在线投稿系统要提供用户与编辑进行交流的功能,也就是用户留言功能。用户登录成功之后可以在留言板中写下要留言的内容,提交后留言成功。系统会自动将留言提交到编辑处,由编辑进行统一回复。在留言板下方会显示自己的留言时间、留言内容、回复留言内容、回复编辑的姓名以及回复时间等信息。4.2.2 编辑子系统功能模块(1)人员管理模块在人员管理模块,编辑可以浏览专家列表,查看每个专家的详细信息。对专家进行删除操作。在专家添加界面中,在录入专家界面中,输入专家的详细信息进行添加,专家信息则保存到数据库中。在用户管理界面,编辑可以查看用户信息删除用户。(2)栏目管理模块在栏目管理模块,编辑可以查看已编辑的栏目信息,并对栏目做添加、删除操作。在该模块编辑也可查看已刊登文章的标题,所属栏目,及文章信息中的文章的作者、关键字、内容并可以进行修改,也可以对文章进行删除操作。在添加文章信息界面,选择所属栏目,输入文章名称、作者姓名、关键字、摘要、内容等信息,保存之后用户就可以在期刊栏目中查看该文章。同样,编辑也可以对文章进行删除操作。(3)稿件审核模块稿件审核模块是整个编辑子系统中功能最多,也是最重要的操作,整个系统的核心都围绕这这一模块进行操作。稿件审核模块中,编辑可以查看待审稿件的投稿时间,稿件名称,投稿人等信息。点击查看信息可以显示文章的关键字、摘要,编辑可根据这些基本信息决定退稿或者送审。点击退稿之后,稿件就会变为审核未通过状态。点击送审会弹出专家列表,显示专家信息,选择某个专家之后,稿件就会送给该专家进行审核。在专家已审稿件中,编辑可以查看已经被专家审核过的稿件信息,如稿件名称投稿人,投稿时间,审核专家,专家给出的意见等,编辑根据专家意见决定通过审核退稿。编辑还可以通过柱形图、折线图根据年份来查询该年中每个月的投稿量以及稿件通过量,使稿件的统计更加的直观。编辑还可以查询到每个月所有专家的审稿量,并以此进行专家审稿费用的发放。4.2.3 专家子系统功能模块(1)专家信息模块专家在登录之后可以查看自己的姓名,账号,工作单位,电话等个人信息,还可以对自己的跟人信息以及账户密码进行修改。(2)专家审稿模块专家可以查看编辑送审的稿件信息,对稿件文档进行下载、查看,查看完成之后可以给出审核意见并保存。专家在已审稿件页面可以查看自己已审核的稿件信息,和自己给出的审核意见。4.3 系统架构设计4.3.1 系统架构设系统设计垂直分为三层分别为:应用服务、基础框架、数据服务,总体架构图如图4-2所示。此系统采用Struts2 + Spring 3 + MyBatis 3轻量级开源集成框架,Sql Server 2008 R2作为数据库,Tomcat 作为其Web应用服务器。图4-2 总架构图4.3.2 系统实现方案(1)表现层技术实现方案表现层分为前台页面和后台管理系统,采用Windows平台上的MyEclipse和DreamWeaver作为开发工具,使用了轻量级客户端框架BootStrap作为面向用户的展示方式,界面简洁美观而且功能丰富。同时采用AJAX与系统进行交互,减轻服务器压力,满足高访客要求。(2)数据层技术实现方案数据库访问主要有JDBC访问和利用ORM工具两种方式。JDBC访问可以避免复杂的OR映射关系7,便于数据库的存储,提高数据库访问效率;利用ORM工具,可以使数据访问过程透明化,使数据访问与数据库管理系统无关,与数据库的具体数据结构无关,并且符合面向对象的设计思想。在线期刊投稿系统具有数据结构复杂,数据量大等缺点,需要把ORM对象映射和SQL操作存储过程结合使用,所以选择数据持久层的开源框架MyBatis。MyBatis是“半自动化”的OR Mapping的工具。这些特性保证MyBatis能够满足TouchBook智能系统的业务需求。(3)数据持久层优化策略MyBatis缓存机制如图4-3所示,如果数据被一次导入,则下一次就直接可以从SQLClientMap中获取数据对象,不用再次请求数据库,避免多次的数据库连接操作。应用程序只是在数据对象未被导入的时候进行数据库读取,同时也避免了数据操作造成的数据不一致性。图4-3 MyBatis 缓存机制时序图5 数据库设计5.1 数据库需求分析创建ER图,如图5-1所示。ER图中每个实体都能转化为一个相应的关系,这个关系包含实体的所有属性。根据不同的联系方式,采取不同的手段使被它联系的实体所对应的关系彼此间产生联系。从图中可以看出表与表之间的关联关系,主要有文章表、栏目表、编辑表、专家表、用户表、稿件表、留言表、公告表。编辑可对所有表进行操作。图5-1 在线期刊投稿E-R图5.2 数据库逻辑设计数据库设计用SQL Server 2008 R2进行设计8,总共包含用户表、编辑表、专家表、文章表、栏目表、稿件表、留言表和公告表八张表:(1)articles(文章表),用于存储期刊栏目中的文章信息,主要包含文章名称、作者名、关键字和文章内容等,如表5-1所示。表5-1文章表名称类型空备注artIdintno文章主键authNamevarcharno用户名artNamevarcharno文章名artTypevarcharno文章类型artKeysvarcharno关键字artContentvarcharno文章内容 (2)editors(编辑表),用于存放编辑的用户名、密码及姓名,如表5-2所示。表5-2编辑表名称类型空备注editorNamevarcharno编辑用户名editorpassvarcharno密码realnamevarcharno姓名 (3)columns(栏目表),用于存放栏目的名称,如表5-3所示。表5-3 栏目表名称类型空备注columnIdintno主键columnNamevarcharno栏目名columnContentvarcharno栏目描述(4)users(用户表),用于存储用户信息,包括有用户名、密码、邮箱、头像及一些基本信息,如表5-4所示。表5-4 用户表名称类型空备注userNamevarcharno用户名userPassvarcharno密码realNamevarcharno姓名addressvarcharno地址emailvarcharno邮箱sexvarcharno性别phonevarcharno手机qqvarcharnoQQportraitvarcharno头像regdatevarcharno注册日期(5)messages(留言表),用于存储用户及编辑的留言和回复内容及日期,如表5-5所示。表5-5 留言表名称类型空备注msgIdvarcharno主键writernamevarcharno留言人resNamevarcharyes回复人msgContentvarcharno留言内容rescontentvarcharyes回复内容msgDatevarcharno留言日期resDatevarcharno回复日期(6)notices(公告表),用于存储网站公告的内容,如表5-6所示。表5-6 公告表名称类型空备注noticeIdvarcharno主键noticeContentvarcharno公告内容(7)experts(专家表),用于存储专家的基本信息,包括用户名、姓名、密码、工作单位及专长,联系电话等,如图5-7所示。表5-7 专家表名称类型空备注expNamevarcharno专家用户名exppassvarcharno密码realNamevarcharno姓名workunitvarcharno工作单位entertisevarcharno专长phonevarcharno联系电话(8)manuscripts(稿件表),用于存储稿件信息,包括稿件的名称、摘要、内容,审稿专家、审核状态和其他信息,如表5-8所示。表5-8 稿件表名称类型空备注manuIdintno主键userIdvarcharno外键ExpIdvarcharyes外键Authorvarcharno作者expNamevarcharyes审核专家conNamevarcharno稿件名keyWordsvarcharno关键词excerptsvarcharno摘要statevarcharno审核状态expStatevarcharyes专家审核状态conTypevarcharno稿件类型opinionvarcharyes专家意见conDatevarcharno投稿日期conPathvarcharno稿件路径6 系统实现6.1 主页实现设计的主页如图6-1所示,可以浏览网站的一些信息,查看本站公告,进行登录注册等操作。比如在投稿指南界面我们可以了解对于投稿相关的一些信息,熟悉投稿流程。在稿费说明界面,用户可以了解稿费的相关规定。在联系我们界面中,表明了联系本刊的联系方式包括电话,邮箱等。图6-1 主页展示图6.2 用户注册登录模块实现在注册界面中,用户需要输入注册信息,上传头像。系统会对用户名进行重复性验证,如果该用户名已被注册,页面会出现提示信息。其他用户数据也会进行格式判断并给出提示,如图6-2所示:图6-2 注册展示图对用户名进行重复性验证,当输入框输入焦点时,将用户输入的用户名通过Ajax发送给服务器进行异步验证,用户名异步验证代码如下所示:function validateUserName() var parameter=userName:this.value;var userName_value=this.value;validate( name:userName,value:userName_value,reg:/0-9A-Za-z6,12$/,null_err:用户名不能为空,input_err:612位的字母和数字);if(validate_flag.userName_flag=true) $.ajax( url:/poss/user/judgeUserName, type:POST, data:parameter, success: function(data) var message = $.parseJSON(data);if(message.msg=error)$(#userName_input_err).html( 该用户已被注册);else $(#userName_input_err).html( + 已通过验证); )服务器接收到客户端传来的参数之后调用service方法查询该用户是否存在,并将结果封装到JSON中返回给客户端【9】,代码如下所示:public String judgeUserName() throws Exception HttpServletRequest request = ServletActionContext.getRequest();HttpServletResponse response = ServletActionContext.getResponse();response.setHeader(content-type, text/html;charset=utf-8);response.setHeader(Access-Control-Allow-Origin, *);/ String userName = request.getParameter(userName);System.out.println(userName);System.out.println(user + user);User user = userService.queryUser(userName);JSONObject json = new JSONObject();if (user = null) json.put(msg, success); else json.put(msg, error);result = json.toString();return SUCCESS;用户上传的图片格式通过正则表达式进行验证,规定只能上传常见格式的图片,格式通过之后通过Ajax文件异步文件上传,传输头像。后台接收到图片之后将图片保存在服务器的文件夹之中,Struts2配置文件MaxSize修改为10M,可以接受大文件信息,格式限制代码如下所示:$(#file).blur(function() var protrait_value = this.value; validate( name:file, value:protrait_value, reg:/.(jpg|gif|jpeg|png|JPG|PNG|JPEG|GIF)+$/, null_err:请上传图片, input_err:请上传正确的图片 ););通过对发送回来的值进行判断,提示用户是否被注册。用户注册成功之后跳转到提示界面,点击立即体验后进入主页面。在主界面上的登陆框输入信息并进行简单验证码校对后登陆成功,如图6-3所示。图6-3 登录界面图验证码是防止某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试的一种有效措施。先在后台生成验证码,在前台放置img标签接受验证码,并设置点击事件,通过点击验证码可以刷新验证码。int width = 60;int height = 25;int num = 0;int temp;BufferedImage image = new BufferedImage(width, height,BufferedImage.TYPE_INT_RGB); / 创建一副内存图像:BufferedImageGraphics g = image.getGraphics();/ 得到属于该图片的画笔:Graphicsg.setColor(Color.BLUE); / 画边框g.drawRect(0, 0, width, height); / 填充背景色g.setColor(Color.YELLOW);g.fillRect(1, 1, width - 2, height - 2);g.setColor(Color.GRAY);Random r = new Random();for (int i = 0; i 10; i+)g.drawLine(r.nextInt(width), r.nextInt(height), r.nextInt(width),r.nextInt(height); / 画干扰线session.setAttribute(code, String.valueOf(num); / 随机数字System.out.println(session.getAttribute(code);/ 输出到浏览器的页面上:ImageIOImageIO.write(image, jpg, response.getOutputStream();6.3 用户投稿模块实现网站为用户提供了文档模板,用户可点击模板下载稿件模板,根据模板填写好稿件后可在期刊投稿中填写信息进行投稿,如图6-4所示:图6-4 投稿展示图通过ajaxFileUpload.js插件实现文件进行异步上传,上传用户的稿件以及头像等文件。要使用ajaxFileUpload,需要在页面中引入相关的插件。script type=”text/javascript” scr=”resources/js/jquery-1.2.1.js”script type=”text/javascript” scr=”resources/js/ajaxfileupload.js”url先向文件上传的服务器端请求地址,再申请文件上传空间,后台判断文件夹是否存在,不存在则创建一个新文件夹,后台接收上传的文件,并保存到服务器的文件夹下。上传并提交稿件之后投稿成功,实现上传功能的主要代码如下所示:/后台代码public String fileUpload() throws Exception HttpServletRequest request = ServletActionContext.getRequest();String path = ServletActionContext.getServletContext()getRealPath(/portrait); JSONObject json = new JSONObject(); File file = new File(path); / 判断文件夹是否存在,如果不存在则创建文件夹 if (!file.exists() file.mkdir(); if (this.file != null) File f = this.getFile(); String fileName = java.util.UUID.randomUUID().toString(); / 采用时间+UUID的方式随即命名 String name = fileId+ .jpg/*fileFileName.substring(fileFileName.lastIndexOf(.)*/; / 保存在硬盘中的文件名 FileInputStream inputStream = new FileInputStream(f); FileOutputStream outputStream = new FileOutputStream(path+ + name); 6.4 数据统计模块实现编辑根据年份对一年中每个月的投稿量还有稿件通过量、每个月最大投稿量、最大通过量、投稿平均值、稿件通过量平均值等进行统计,并能进行柱形图、折线图,另存为图片等功能的切换,如图6-5所示。图6-5 稿件统计图图表显示,运用JQuery的ECharts插件,在页面中引入JS文件,并异步获取数据库中稿件的年份9,代码如下所示:/action方法public String getYears() throws ExceptionHttpServletRequest request = ServletActionContext.getRequest();HttpServletResponse response = ServletActionContext.getResponse();response.setHeader(content-type, text/html;charset=utf-8);response.setHeader(Access-Control-Allow-Origin, *);ListMap lists = manuService.getYears();JSONArray jsonArray = JSONArray.fromObject(lists);response.getWriter().write(jsonArray.toString();return null;/service方法public ListMap getYears() return manuDao.getYears();/dao方法public ListMap getYears() return this.getSqlSession().selectList(com.yctu.domain.Manuscript.getYears);/sql语句 select year(conDate) year from manuscripts group by YEAR(conDate)根据年份查询该年中稿件的数据,服务器根据年份查询出对应月份的投稿量以及通过量并返回给客户端。6.5 编辑人员管理模块实现在后台管理端编辑可以对用户和专家进行管理,对恶意用户可删除其账号,对专家可进行添加和删除操作。添加专家如图6-6所示:图6-6 添加专家展示图在专家管理界面,可以查看已经添加的专家列表,也删除对已添专家,如图6-7所示。其中简介中包含专家的的姓名、工作单位、专长、联系方式等信息,其中密码经过加密处理。图6-7 专家管理列表图在用户管理界面可以查看用户信息,对用户进行删除操作。6.6 稿件审核管理模块实现在编辑待审稿件中,可以查看未开始审核的用户稿件的基本信息,如图6-8所示。图6-8 待审稿件列表图详细信息中是稿件的具体信息,包括投稿分类、稿件的名称、关键字及摘要内容,如图6-9所示,运用了Bootstrap模态框技术10。图6-9 稿件详情展示图Bootstrap Modals(模态框)是使用定制的 JQuery 插件创建的,用来创建模态窗口丰富用户体验,或者为用户添加实用功能。在 Modals(模态框)中使用了 Tooltip(工具提示插件)和Popover(弹出框)。首先引入bootstrap.min.css和bootsrap.min.js.query.min.js标签,后给标签设置data-toggle和data-targe,通过点击显示模态框,代码如下所示:/模态框代码×Modal titleOne fine body… CloseSave changes/给标签设置data-toggle和data-targe,通过点击显示模态框点击编辑对稿件可进行退稿或者送审操作,在送审时可根据专家专长送审指定专家。确定送审和专家及时收到相应稿件,送审专家列表如图6-10所示。图6-10 送审专家列表图在专家已审稿件中查看专家已审核的稿件和专家意见,并决定是否通过最终审核,专家已审稿件列表如图6-11所示,终审通过稿件列表如同6-12所示。图6-11专家已审稿件列表 图6-12 终审通过稿件列表6.7 专家审稿模块实现专家对稿件进行二审操作,编辑送审的所有稿件一一陈列并显示主要信息,如图6-13所示:图6-13 专家待审稿件列表图稿件下载后可将稿件存储到指定路径,以便查找和审稿,如图6-14所示:图6-14 稿件保存图下载查看后,专家审核通过或不通过稿件都需给出意见以便编辑参考。并在已审核稿件中可以查看本人已经审核的稿件信息。7 总结经过三个多月的努力,终于完成了基于SSI框架的期刊在线投稿系统,期间用到了MyEcli

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论