期刊稿件在线采编系统的设计与实现(陈增智)

更新时间:2023-04-19 10:00:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

期刊稿件在线采编系统的设计与实现

摘要

基于Web的期刊稿件在线采编系统作为一种办公系统具有非常重要的意义。以前的编辑部信息化不足、计算机使用率低、大量的日常工作皆是手工处理,因此工作效率低。随着网络技术的发展,投稿不再是将厚厚的稿件邮寄到编辑部,然后等待回音;编辑部的工作人员也不必在一大堆的稿件中查找和分类稿件。对编辑部来说,需要一个系统来帮助他们管理好稿件,以提高工作效率,实现办公的自动化;对投稿人员来说,需要一个系统来简化投稿的过程。投稿系统就是要解决了以上的问题。

鉴于以上原因,本文设计了一个基于JSP的期刊稿件在线采编系统。以Internet 为桥梁,突破了传统投稿的诸多限制与不便,可通过计算机网络实现稿件的投递。实现了作者投稿,编辑安排评审员,评审员审稿,编辑根据评审结果决定文章是否录用,通知作者文章是否被录用等功能。

关键词:JSP; 网络编程; JDBC; 在线投稿

I

Abstract

It is very significant for developing Journal Online Contributing Software (JOCS) based on web. On account of low informatization, unilization ratio of computer and manuscript examined by manual, work efficiency is low. With the development of network technology, submission is no longer wait for a reply after mailing papery manuscript to newsroom; the editors also don’t have to search and classify manuscripts. JOCS can help editors manage manuscript, raise working efficiency, and the work automation comes true.

JOCS is designed with JSP on web, breaking the limitation of traditional contributing. These functions are implemented in the system: submission, selection of reader of electronical manuscript, proof by expert, final result of manuscript, distributing employment credencial.

Keywords: JSP; network programming; JDBC; contributing online

II

目录

第一章引言 (1)

1.1 选题的背景和意义 (1)

1.2 当前状况概述 (1)

1.3 开发目的 (2)

1.4 课题研究的基本思路 (2)

1.5 环境配置 (3)

1.5.1安装JDK并配置环境变量 (3)

1.5.2安装JCreator (3)

1.5.3安装Apache Tomcat 5.0 (3)

1.6 本章小结 (4)

第二章背景知识介绍 (5)

2.1 JSP技术介绍 (5)

2.2 JDBC常用接口简介 (5)

2.3 JDBC使用步骤 (6)

2.4 MySql数据库简介 (7)

2.5 数据存取技术 (7)

2.6 本章小结 (7)

第三章期刊稿件在线采编系统的总体设计 (8)

3.1系统的三层体系结构 (8)

3.2 需求分析 (9)

3.2.1系统性能需求 (10)

3.2.2 数据库E-R图 (10)

3.4 系统功能模块分析 (10)

3.5 系统结构框图 (12)

3.6 数据库设计 (12)

3.7 本章小结 (14)

第四章期刊稿件在线采编系统的详细设计 (15)

4.1 文件结构 (15)

4.2 连接数据库操作 (15)

4.3公共模块 (16)

4.3.1用户登录和退出 (16)

4.3.2 用户注册 (17)

4.3.3 获取密码 (19)

4.3.4 修改密码 (20)

4.3.5 修改用户信息 (21)

III

4.3.6 短消息管理 (21)

4.4 作者模块 (24)

4.4.1 查看操作日志 (24)

4.4.2 提交文章 (25)

4.4.3 修改文章 (26)

4.4.4 删除文章 (27)

4.5 评审员模块............................................................................ 错误!未定义书签。

4.5.1查看操作日志 .............................................................. 错误!未定义书签。

4.5.2 评审文章 ..................................................................... 错误!未定义书签。

4.5.3 修改评审 ..................................................................... 错误!未定义书签。

4.5.4 删除评审 ..................................................................... 错误!未定义书签。

4.6 管理员模块............................................................................ 错误!未定义书签。

4.6.1 用户管理 ..................................................................... 错误!未定义书签。

4.6.2 文章管理 ..................................................................... 错误!未定义书签。

4.6.3 文章主题管理 ............................................................. 错误!未定义书签。

4.7 本章小结 (27)

第五章总结 (28)

谢辞 (29)

参考文献 (30)

附录一:发送邮件的算法 (31)

附录二:文件上传的算法 (34)

IV

第一章引言

1.1 选题的背景和意义

随着计算机网络的不断发展,全球信息化已成为世界发展的大趋势。为了跟上时代的步伐,越来越多的企业和公司都建立了各自的WWW网站,企业或公司通过网站可以展示产品,发布最新动态,与用户进行交流和沟通,与合作伙伴建立联系,以及开展电子商务等。生活在高速发展的社会,人们应不断学习新知识以跟上社会发展的需要。Internet正逐渐渗透人么工作、生活中的每个角落。个人要生存,企业要发展,就必须采取新的生活方式、竞争手段去适应。这就引起了一场知识传播的改革,以前只能通过邮递书刊,现在可以在线阅读,下载等。知识更新越来越快,文化传播的速度不断提高,因此作为知识传承的传统工具——期刊也因为计算机网络的发展而有了新的背景和意义。书籍、报刊、期刊、杂志等能快速为人们提供最新知识。因此,在网络信息化、全球化的当今世界,担负着更为重要的角色。

期刊投稿管理系统是基于此社会发展需要而产生的,它担负着三层作用:为人们提供最新的业内前沿思想;也为人们提供了一个发表论文,展现思想的平台;为专家审稿提供了一个快速通道。这种现代化的期刊投稿管理系统相对于过去的期刊投稿方式,是一种便利快捷的投稿方式,更有利于人们发表论文,更有利于人们获得最新前沿动态,更有利于人们节约资源。

基于Web的编辑部投稿系统以Internet为桥梁,突破了传统投稿的诸多限制与不便,可通过计算机网络实现稿件的投递。通过互联网可以覆盖全球的任何地方,只要存在有互联网的地方就可以对该编辑部投递稿件,并且可以保证稿件准确、快速的传递。而且计算机能够高效率的接收和分类稿件,从而使编辑部的工作人员摆脱繁重的接收和分类稿件的工作,而且可以避免因人为疏忽而造成的工作上的失误。

1.2 当前状况概述

计算机在编辑部主要用于稿件的编辑,现有的编辑部管理系统,大多采用VisualFoxpro、VisualBasic和Power Builder等初级的、简单的开发平台,开发出基于客户/服务器模式的系统,不能满足广大投稿者的希望,所投出的稿件能尽快到达编辑部、尽快得到审稿意见和随时了解稿件所处状态等需求。随着计算机的普及和数据库、网络技术的日趋成熟,各个编辑部都希望能够利用先进的计算机及网络技术实现现代化办公。从目前的情况看,虽然大部分的编辑部购置了计算机及其附加设备,都已连接到互联网,实现了人手一机,并建立了单位内部的局域网。但是编辑部只是具备

1

了实现现代化办公的硬件条件,却没有相应的、配套的软件支持,大多数编辑出版部门仍然停留在通过计算机、互联网收发电子邮件,使用通用的办公软件(如WORD等)进行简单的文字处理上,不能充分发挥网络、计算机的优势,实现真正意义上的现代化“办公”,甚至是坐在家里的“异地办公”或“远程办公”。分析原因,归根结底是缺少针对编辑部本身的、专业性的管理软件。

现在的许多编辑部仍然采用的是传统的办公方式,即通过邮件投递的方式来接收稿件,这显然是不符合办公自动化和现代化要求的。随着Internet在全世界范围的覆盖,网络技术的不断发展,基于Web的编辑部投稿系统可以借助于覆盖全球的Internet进行,可以同时处理来自不同地区的稿件。目前,在办公管理方面,特别是编辑部投稿等方面都普遍采用了网络化的管理技术。基于Web的编辑部投稿系统有多种实现技术,如C/S架构,即Clinet/Server(客户机/服务器)结构,降低了系统的通讯开销。但是这种结构需要在客户端和服务器上都安装应用软件,比较的烦琐;B/S 模式,即Browser/Server(浏览器/服务端)结构,它是Web技术和数据库技术相结合的一种技术,可以实现数据库应用系统开发环境和应用环境的分离,即在用户机上不需要安装任何应用程序,应用程序可以安装在Web服务器上。考虑到投稿者与编辑部是一种双向选择的关系,以及投稿系统需要动态的管理,故采用B/S模式进行开发。B/S模式解决了应用与网络过分依赖的关系,使得管理系统的实现更加容易,更能适应运行环境的发展。高度信息化后的编辑部工作流程都融入了Internet,极大地运用了Internet 功能,将Internet的作用发挥到了极限。从作者稿件的投递、编辑部对稿件的整理,无一不是通过Internet来完成。

1.3 开发目的

根据以上情况,设计开发了基于web的网络编辑部投稿系统,该系统投入使用后将方便作者、编辑人员,审稿专家之间的沟通;该系统能为编辑部引入灵魂机制,使编辑部的工作既可以在本地进行,也可在异地进行。同时,编辑部的许多工作可通过计算机自动完成,这就极大的减轻了编辑人员的劳动强度,缩短了稿件的流通周期。

1.4 课题研究的基本思路

本文在对现在编辑部的普遍现状和工作特点进行调查分析之后,开始了“期刊稿件在线采编系统”的设计。结合目前软件工程、Web数据库应用程序设计等学科领域的技术,通过JSP、MySql数据库,实现该系统。本系统的设计分为以下4个主要阶段:

1.系统需求分析与功能设计。收集各种关于系统功能设计的要求,确定系统的功能。

2

2.数据库设计。确定数据库结构,设计数据库的各种参数、创建数据库表等对象。

3.程序模块划分和实现。根据系统的使用对象划分不同的功能,对系统进行模块划分,分别编写代码,逐一实现系统的功能。

4.权限设计。根据系统的使用对象划分不同使用权限的用户。

通过上述工作之后,完成的系统具有以下的功能:

1.实现了稿件的投递。通过注册后的用户可以在登录系统之后,实现稿件的投递功能。

2.实现了用户的管理。所有的作者必须按照要求填写注册信息,系统也会将这些信息保存到数据库中,用户可以登录系统,投递稿件,修改资料等操作。

3.实现了管理员对稿件的管理,对注册用户的管理,可以添加稿件的类别等功能。

1.5 环境配置

1.5.1 安装JDK并配置环境变量

首先下载安装JDK,本人用的是JDK 1.5。下载后运行安装就可

以了。

JDK安装成功后,需要设置相应的系统变量和环境变量。在“我的电脑”的“属性”中找到环境变量对话框,编辑PATH变量,如此变量不存在,需添加一个PATH,并添加路径“C:\Program Files\Java\jdk1.5\bin;”。编辑classpath变量,添加“.”。接着可以写一个简单的JAVA程序来测试J2SDK 是否已安装成功:

public class Test{

public static void main(String args[]){

System.out.println("This is a test program."); } }

将上面的这段程序保存为文件名为Test.java的文件。然后打开命令提示符窗口,cd到你的Test.java所在目录,然后键入下面的命令:

javac Test.java

java Test

此时如果看到打印出来This is a test program.的话说明安装成功了,如果没有打印出这句话,你需要仔细检查一下你的配置情况。

1.5.2 安装JCreator

JCreator是众多Java开发工具中的一种,好处在于占资源最小,功能比较全,本人用的是汉化版,按提示安装好就可以编写和运行java程序了。

1.5.3安装Apache Tomcat 5.0

安装Tomcat后,在我的电脑->属性->高级->环境变量->系统变量中添

3

加以下环境变量(假定你的tomcat安装在c:\tomcat):

CATALINA_HOME=c:\tomcat

CATALINA_BASE=c:\tomcat

接着可以启动tomcat,在IE中访问http://localhost:8080,如果看到tomcat的欢迎页面的话说明安装成功了。

1.6 本章小结

本章主要介绍了课题的意义,然后分析了课题的当前状况,明确了此次开发的目的,总结了研究的基本思路。

4

第二章背景知识介绍

2.1 JSP技术介绍

JSP全称Java Server Pages是由Sun Microsystems公司倡导、多家公司参与建立的一种动态网页技术标准。它是以成熟的、强大的、易扩充的Java 语言为脚本的。Java语言其设汁目的是使构造基于web的应用程序更加容易和快捷。由于JSP实现了Web动态内容与显示的分离,脱离了硬件平台的束缚,并且编译后大大提高了运行速度,因此,JSP成为因特网上的主流开发工具。

JSP是一种较新的技术,在国外JSP已是非常流行的一种技术,尤其是电子商务类的网站,多采用JSP。相对于ASP的主要依附于单一平台,JSP 是基于平台和服务器的相互独立的,并且JSP标签可扩展性和JSP跨平台组件的重用性将使得JSP为web数据库应用提出更具竞争力的解决方案。

JSP网页为整个服务器端的JAVA库单元提供了—了个接口来服务于HTTP的应用程序。它在传统的网页HTML文件中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页.Web服务器在遇到访问JSP 网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户,所有程序的操作都在服务器端执行。网绍上传送给客户端的仅是得到的结果,对客户浏览器的要求最低。

JSP的特点:①由于JSP使用Java语言作为其脚本语言,因此它可以充分利用Java语言的强大功能和跨平台性。JSP几乎可以运行于所有平台,JSP 和JavaBean甚至不用重新编译,因为Java字节码都是标准的、与平台无关的。②实现了生成和显示的相互分离。即使用JSP来实现显示功能,而将应用的逻辑封装在Java Bean中。③生成可重用的组件。JSP页面依赖于可重用的跨平台的组件Java Bean来执行应用程序所需要的复杂处理。④强大的数据库支持。JSP可以和任何与JDBC兼容的数据库相连,访问数据库,而且还可以使用JDBC—ODBC Bridge访问基于ODBC的数据库。

2.2 JDBC常用接口简介

在Java.sql包中,包含了JDBC的核心接口和类,JDBC中常用的接口有下面四个:

DriverManager接口:主要作用是选取数据库的驱动程序的装载并对新的数据库提供支持。

Connection接口:在已经加载的Driver和数据库之间建立连接。

Statement接口:提供在基层连接上运行SQL语句,并且访问结果。

ResultSet接口:在Statement执行SQL后,返回ResulSet结果集。

5

2.3 JDBC使用步骤

数据库的开发是JSP开发的重点和难点,几乎所有的JSP项目都要使用数据库。数据库系统的好坏直接关系到整个JSP系统的的稳定性、易用性和是否便于管理员维护,但无论JSP开发人员是采用怎样的方式来开发数据库,是采用常用的JavaBean来封装数据库的操作,或是采用Servlet开发数据库,JSP数据库编程都要通过JDBC来实现,并且都要经过装载驱动程序,然后通过DriverManager获得连接,创建Statement执行SQL操作,获得ResultSet结果集,最后关闭数据库连接释放资源这样几个步骤。由于本书是以MySQL数据库操作的,下面以连接MySQL数据库为例讲解。

1.加载驱动程序

加载MySQL JDBC驱动:Class.forName(“com.mysql.jdbc.Driver”)

2.建立连接

Connection con=DriverManager.getConnection(“jdbc.mysql .mysql DSN”),括号里的部分是—个JDBC的URL,这个URL可以分为三个部分jdbc:,它的语法意义如下:协议:jdbc表示协议,它是唯一的。子协议:主要用于识别数据库驱动程序,不同的数据库驱动程序的子协议不同。子名:它属于专门的驱动程序,不同的专有驱动程序采用不同的实现。MySQL数据库中url为

jdbc:mysql:datebase,user,password

3. 创建语句对象Statement stmt=con.creatStatement()。

Statement对象代表—个语句,这个语句是创建在刚刚建立的连接之上。需要强调java处理数据库的方式和microsoft不同,例如VB、ASP对数据库的操作是建立在连接之上,在java中对数据库的操作是建立在语句之上的,对数据库的操作必须要用语句对象来执行,所以用JDBC来访问数据库必须要创建语句对象。执行查询语句:

ResultSet rs=stmt.executeQuery (“select * from tablename”)

ResultSet表示返回的结果集。语句对象stmt通过调用executeQuery()方法来执行查询,语句“select * from tablena me”是写在方法内作为参数出现。查询的结果放在对象rs中。

查询结果处理以及关闭结果集对象对结果集的处理可以通过结果对象的一系列方法来实现,处理完毕后必须通过关闭对象来释放资源。关闭语句对象stmt.close()关闭对象释放资源。关闭连接对象con.Close()在JDBC 中对数据库的访问都要经过打开、使用、关闭这个过程,并且顺序不能改变。

6

2.4 MySql数据库简介

MySQL是完全网络化的跨平台关系型数据库系统,一个真正的多用户、多线程SQL数据库服务器,同时是具有客户机/服务器体系结构的分布式数据库管理系统。它具有功能强、使用简便、管理方便、运行速度快、安全、可靠性强等优点,用户可利用许多语言编写访问MySQL数据库的程序,对于中、小型应用系统是非常理想的。除了支持标准的ANSI SQL语句,更重要的是,它还支持多种平台,而在Unix系统上该软件支持多线程运行方式,从而能获得相当好的性能。

2.5 数据存取技术

数据库是系统的核心内容。目前,Web与数据库接口技术有很多,其中JDBC是Java程序连接和存取数据库的应用程序接口,由一组用Java 语言编写的类与接口组成,是执行SQL语句的Java API。本文介绍的系统中,在数据的存取方面,采用了JSP/Javabean+JDBC的技术,即客户端不产生数据库查询命令,客户端上的浏览器通过URL和中间层的Web服务器建立连接。Web服务器主要负责接收本地或远程浏览器的HTTP数据请求,然后中间层收到请求后,通过执行程序中的SQL语句,利用JDBC提供的标准API对数据库进行访问和相应的操作处理。再将查询的数据传给JSP,最后生成标准的JSP页面将结果返回给提出请求的浏览器。这样,不仅将客户端与数据库服务器端分开,同时提高了数据库的访问效率。

2.6 本章小结

本章是进行相关技术和理论分析,介绍了系统设计中将要用的的相关知识和背景。简单的介绍了MySql数据库和对JSP技术的认识,更多的是讲解了JSP访问Web数据库的原理和步骤。

7

第三章期刊稿件在线采编系统的总体设计

3.1系统的三层体系结构

三层B/S结构即客户端浏览器(表示层)/Web服务器(逻辑层)/数据库(数据层)(Browser/Server/Database)三层结构,在传统两层模式的基础上增加了应用服务这一级。三层结构的划分,使逻辑上更加独立,每个功能模块的任务更加清晰。在表示层客户通过Web浏览器向中间Web应用服务器发出HTTP请求,Web应用服务器通过对客户端的请求进行身份验证然后对于合法的用户请求进行处理并与数据库进行连接进而获取或保存数据并将从数据库获得的数据返回到客户端浏览器。表示层是前端用户的接口,它通过用户界面与用户进行人机对话,由于客户端使用Web浏览器与应用服务器进行对话而无其他特殊要求,所以客户端是真正的“瘦客户端”,而且通过与Web网络相连接使其具有跨区域跨部门的特点。中间应用层是三层B/S结构的核心,它主要完成对业务规则的控制和对数据库的访问等工作。数据库服务器中安装的数据库应用程序负责数据的定义、查询、更新和删除等操作并维护数据库的安全性和完整性。三层体系结构如图3.1所示。

图3.1基于Java技术的Web应用体系结构

整个稿件在线采编系统采用Browser/Web/DataBase的三层体系结构。Web服务器接受请求,通过应用程序服务器执行一个Java服务器端小程序Servlet并返回其输出,从而实现与客户机进行信息资源的交互。数据库服务器用来存储系统中所用到的各种数据,数据由数据库管理程序直接录入。系统的客户端只需要一个浏览器即可。相关人员通过浏览器来查询、增加、修改、删除数据,对信息进行管理。

三层结构利于模块化设计,用户端不必进行大量的数据计算处理,这些工作将集中于应用服务层进行处理,开发人员只需对应用服务层进行维护而不需对每个客户端进行逐一管理。另外,三层B/S结构各层独立管理,

8

能严格地控制信息访问,信息传递中采用数据加密技术,可减低信息失密的风险,有效地提高系统安全性。因此将三层B/S结构应用于期刊稿件在线投稿具有以下优点:

1.易维护性可扩展

基于三层B/S结构每层相互独立,将处理功能全部移植给服务器端,用户只需要将请求发送给服务器,服务器将会对用户的请求发出反应。基于三层B/S结构软件系统的部署、升级维护和数据备份只需在服务器完成,客户端无需做应用软件的安装和调试,100%实现了客户端的“零维护”,极大地降低了系统总体维护成本。而且对于人员的分工更加明确。客户端用户只是获取或请求信息,系统管理员负责应用服务器的管理,而数据库管理员只需对数据库进行维护即可。这样不仅具有较高的效率而且节省人力物力,使每一位员工可以更加专心与本职工作。

2.信息共享

由于所有的客户端的信息请求操作都是针对于同一个数据库服务器的,所有用户的信息数据都会保存在数据库服务器上。这样一个客户端通过向服务器发出请求,经过身份验证以后就可以获得它本身能力之外的数据信息,实现了真正的数据共享。

3.信息数据安全可靠

所有信息数据都保存在服务器端,只有通过身份验证的客户端才有对数据进行访问的权利,确保了数据的安全性。

4.跨区域跨部门

三层B/S模式其基本思想是:利用Internet的Web模型作为标准平台,采用TCP/IP作为通信协议,所以无论客户身处何地只要通过客户端浏览器向服务器发出HTTP请求即可获得数据信息。这对于期刊在线采编是十分重要的。可以实现遥控指挥操作:无论操作或支持决策人员身在何处,只要通过Web浏览器就可以发出命令或请求,在当今信息社会这种快速反应策略无疑会给企业带来巨大的经济效益。

5.瘦客户端

所有客户端只需装上操作系统、网络协议、浏览器,用户就可通过浏览器向服务器发送HTTP请求,服务器处理完毕后再把结果传送给用户,因而对客户端没有什么特殊要求真正做到了“瘦客户端”。

因此在设计时充分考虑各种体系结构的优缺点,选择三层B/S Web模式进行开发实现是可行的。

3.2 需求分析

系统的开发主要是为了提高编辑部的工作效率,解决投递稿件的烦琐、编辑部稿件管理的混乱,实现办公的现代化。基于Web的期刊稿件在线采

9

编系统,立足于覆盖所有互联网上的计算机,满足所有投稿者的需求。系统设计的目标是:管理功能齐、信息传递方便快捷和投稿方便。结合编辑部工作的特点,实现稿件的网上投递、管理,稿件的修改,为工作人员和投稿者提供便利。

3.2.1系统性能需求

1.实用性:为网上的投稿提供方便,有效进行稿件的管理,最大限度降低工作人员的日常工作量,提高办公效率,优化资源,实现效益最大化。

2.操作简单:本系统面向的是不同的使用人群,包括普通的投稿者和编辑部的工作人员,所以系统不应太复杂和烦琐,要求系统的操作尽可能简单易行。

3.安装使用简便:服务器端的安装简洁明了,客户机无需再装任何软件,通过浏览器就可以直接访问,无论您身在何处,只要连接到互联网就可以使用本系统。

4.适应性:应该能广泛应用于不同类型的编辑部。系统采用模块化设计,可以自行组合,以满足不同的需要。并且能够很好的与编辑部的其他子系统链接。

5.代码可读性好:文中的代码将尽可能简洁,易懂。

3.2.2 数据库E-R图

):

(如图3.2所示

3.4 系统功能模块分析

在现实操作中,刊物文章的发表主要包括几个过程:作者投稿、管理员安排评审员、评审员审稿、管理员根据评审结果决定文章是否录用、通知作者文章是否被录用。主要操作对象都是作者提交的文章,而作者、评审员、管理员对文章进行不同的操作。整个过程可以用图3.3来描述。

10

图3.3 稿件发表过程

在系统设计过程中,充分考虑到各种功能的实现,而且也考虑到操作的简单性和界面的友好性。按照各类用户的不同功能,该系统将用户分为作者、评审员和管理员3类。每类用户对应相应的功能模块,分别有各自的功能。整个系统设计为以下三个模块。

1.作者模块:

该模块的主要用户是各类投稿用户,用户注册后即可获得作者用户身份,该模块主要实现作者投稿,查看自己文章录用情况以及其他相关的操作功能。该模块具有以下的功能:

1)文章管理:提交文章,修改文章,删除文章

2)邮件管理:发送邮件和接受邮件

3)个人信息管理:修改密码和修改其他信息

2.评审员模块

这类用户必须由管理员添加。该模块主要实现文章评审的功能,评审员登陆后可以对分配给自己的文章进行评审,其评审结果作为编辑录用文章的参考。该模块具有以下功能:

1)评审管理:评审文章,修改评审,删除评审

2)邮件管理:发送邮件和接受邮件

3)个人信息管理:修改密码和修改其他信息

3.管理员模块

管理员相当于编辑身份,但为了维护整个系统的完整性,将编辑的功能扩大到管理整个系统。在系统中,管理员不仅有管理文章的功能,而且还可以管理系统的其他事务,管理员拥有整个系统最大的权限。该模块具有以下功能:

1)用户管理:添加,修改,删除,查找用户(包括作者和评审员)

2)文章管理:浏览文章,查找文章,修改文章,删除文章

3)评审管理:分配评审员,录用/拒录文章

11

12

4) 邮件管理:发送邮件和接受邮件

5) 文章主题管理:添加,修改,删除文章主题 6) 个人信息管理:修改密码和修改其他信息 3.5 系统结构框图

(如图3.4所示

)

图3.4 系统结构框图

3.6 数据库设计

期刊稿件在线采编系统所要的管理数据量不是非常大,本书使用了MySQL 数据库,她完全能够满足系统的需要。而且MySQL 数据库具有跨平台性,所以该系统可以在Windows 或者Linux 平台上使用。

为了满足系统需要,本系统建立了6个数据表,它们分别是文章基本信息表、评审信息表、短消息信息表、文章主题信心表、操作日志信息表和用户基本信息表。下面是各个数据表的结构以及相关说明。

1.评审信息表

评审信息表(articlesaudit )主要用来存储评审员对文章的评审结果,该表主要是用来存储评审员对文章的评审信息(见表3.1)。

表3.1 articlesaudit 表

2.文章基本信息表:

文章基本信息表(articles)主要用来存储作者提交的文章信息以及鱼文章信息以及与文章相关的其他信息,所有对文章的操作都会影响该表(见表3.2)。

3.短消息信息表

短消息信息表(email)主要存储用户的短消息,包括接收的信息和已发送的消息(见表3.3)。

操作日志信息表(operatelog)主要存储作者和评审员的操作日志信息,他们的每次操作都会在表中有记录(见表3.4)。

文章主题信息表(workgroup)主要存储文章所属的主题信息,由管理员对主题内容进行管理(见表3.5)。

13

用户基本信息表(users)存储所有用户的资料信息,包括管理员、评审员和作者。对用户信息的修改和删除操作也是针对该表进行的(见表3.6)。

3.7 本章小结

本章主要阐述期刊稿件在线采编系统的总体设计思路,包括系统的体系结构、模块设计和数据库的各基本表的设计和系统结构框图,以及每个模块的功能,并对系统的实现做了分析。

14

第四章期刊稿件在线采编系统的详细设计

4.1 文件结构

整个系统的文件结构如图4.1所示:

图4.1 系统的文件结构

系统中所有的代码都放在代号为4的文件夹内,4:\admin文件夹中存放的是与管理员模块相关的页面;4:\audit文件夹中存放的是与评审员模块相关的页面;4:\author文件夹中存放的是与作者模块相关的页面;4:\uploadArticles文件夹中存放作者上传的文章;4:\WEB-INF文件夹中存放所有与系统配置相关的文件以及系统所要用到的类。在本系统中所有编译好的class文家均放在4:\WEB-INF\classes\com\am文件夹中,系统中的一些公共页面都放在4:\文件夹中。

4.2 连接数据库操作

使用JavaBean将数据库访问进行打包,通过内部的JSP页面应用来使用该对象。可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。由于大部分网页都要连接数据库,因此设计了一个JavaBean:OpenDB.class,用于数据库的连接。代码如下:package com.am;

import java.sql.*;

public class OpenDB{

String userName="root";

String userPassword="851200";

private String driverName = "com.mysql.jdbc.Driver";

private String url = "jdbc:mysql://localhost/am?

useUnicode=true&characterEncoding=gb2312";

Connection dbConn;

public OpenDB(){ }

public Connection getConnection(){

try{ Class.forName(driverName);

dbConn=DriverManager.getConnection(url,userName,userPassword);

15

}

catch(Exception ex){

System.out.println(ex.toString());

dbConn = null; }

return dbConn; } }

JavaBean在J2EE的构架里担当处理商业逻辑的角色,而JSP是动态生成HTML的角色,JDBC会整合数据库,下面语句嵌套进JSP文件即可实现通过bean对数据库对象的访问:

<%@ page import="java.sql.*,com.am.*"%>

<% Statement stmt=dbconn.getConnection().createStatement();

strSql="select * from articles ";

ResultSet rs=stmt.executeQuery(strSql);%>

4.3公共模块

该模块主要包括用户登录和退出、用户注册、获取密码、修改密码、修改用户信息和短消息管理等功能,因为系统中所有用户都具有这些功能,所有将它们作为单独的公共模块来设计。

4.3.1用户登录和退出

用户登录界面是所有用户进入系统是遇到的第一个界面,也是进入系统的必经接口。在登录页面(index.jsp)中,不仅提供登录系统的接口,还提供了获取密码和用户注册的功能。index.jap页面是通过简单的HTML代码实现的,该页面的效果如图4.2所示:

图4.2 用户登录界面

用户填写好用户名和密码后,单击“登陆”按钮就会转到验证用户登录页面(userLogin.jsp),该页面主要验证用户所输入的用户名和密码是否正确。在userLogin.jsp页面中将要调用到login类,它是由login.java便以

16

后生成的,而它由继承user这个类。user类是一个和用户信息相关的类,主要操作数据库中用户信息表(users)中的数据,它是由user.java编译后生成。login类继承自user类,主要完成验证用户登录是所输入的用户名和密码的正确性,由login.java编译后生成。

在userLogin.jsp页面中,必须先要调用所要调用到的类,然后获取上个页面中用户填写的用户名、密码和用户类型等参数值,最后判断用户名和密码是否正确。如果正确就根据用户类型转到相应的页面,否则提示用户登录失败。实现代码如下所示:

<% request.setCharacterEncoding("gb2312");

4a7ee508f78a6529647d538derName=request.getParameter("txtloginName");

4a7ee508f78a6529647d538derPassword=request.getParameter("txtpassword");

userlogin.systemRole=request.getParameter("userType");

userlogin.setConnection(dbconn.getConnection());

if (userlogin.isValidUser()){

session.setAttribute("loginType",userlogin.systemRole);

if(0 == 4a7ee508f78a6529647d538dpareTo("0")){

response.sendRedirect("admin/adminManagement.jsp");}

if(0 == 4a7ee508f78a6529647d538dpareTo("1")){

response.sendRedirect("author/articlesManagement.jsp"); }

if(0 == 4a7ee508f78a6529647d538dpareTo("2")) {

response.sendRedirect("audit/auditManagement.jsp"); }}

else{

……//提示用户输入的用户名密码错误} %> 用户登录到系统后,可以通过系统操作界面上提供的“退出”链接退出系统。退出系统(logout.jsp)的功能主要是删除session中保存的登录用户信息,并且跳转到登录界面。

4.3.2 用户注册

根据实际需求,系统只提供作者类型的用户注册的功能,评审员必须由管理员添加。通过登录界面上的“注册”按钮即可进入用户注册页面(userRegister.jsp),该页面的效果如图4.3所示:

17

本文来源:https://www.bwwdw.com/article/el1q.html

Top