课程设计论文-基于Java平台的学报管理系统的设计.doc_第1页
课程设计论文-基于Java平台的学报管理系统的设计.doc_第2页
课程设计论文-基于Java平台的学报管理系统的设计.doc_第3页
课程设计论文-基于Java平台的学报管理系统的设计.doc_第4页
课程设计论文-基于Java平台的学报管理系统的设计.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

基于java平台的学报管理系统的设计 【摘要摘要】 本文介绍了基于 java 平台、利用 mvc 设计模式的 b/s 框架 的学报信息管理系统的开发过程,主要包括需求分析、功能划分、 数据库设计、系统实现等方面。根据稿件的处理过程定义了稿件 在系统中的八种状态和相应处理方法。系统体现了 java 在 web 应用系统设计领域的强大功能。 关键词:关键词:mvc web jsp 学报信息管理系统 目目 录录 摘要要-i-i 目录- 第 1 章 引言-1 第 2 章 mvc设计模式的简介 -2 第 3 章 系统分析与实现-3 3.1 系统分析-3 3.2 后台数据库的设计-6 3.3 系统实现-6 总结-11 致谢-12 参考文献-13 第第1 1章章 引言 当今社会是信息社会,信息化已经深入社会的各个方面。随着科学技术的 发展,全球信息化时代的全面到来,数字化科技将为未来社会建立起“数字世 界新秩序” ,数字化信息将成为人类社会的重要支柱之一。我院学报编辑部正在 逐步加快实现信息化的脚步,为了更加方便投稿作者和编辑部内部工作人员处 理稿件,建立期刊网络管理平台势在必行。本课题分析并设计了学报信息管理 系统,它具备了较完善的信息管理功能,包括用户注册、稿件信息管理、专家 库信息管理等,系统基于java平台,利用sql server 2000作为后台数据库,设 计过程中利用mvc(model-view-control,模型-视图-控制器)的设计模式。 第2章 mvc设计模式的简介 mvc是80年代smlltalk-80出现的一种软件设计模式,现在已经被广泛使用, 它强制性地把应用程序的输入、处理和输出分开。mvc把应用程序分成三个核 心模块:模型、视图和控制器,它们分别担负不同的任务。 (1)、视图 视图是用户看到并与之交互的界面。视图向用户显示相关的数据,并能接 收用户的输入数据,但是并不进行任何实际的业务处理。视图可以向模型查询 业务状态,但不能改变模型。视图还能接受模型发出的数据更新事件,从而对 用户界面进行同步更新。 (2)、模型 模型是应用程序的主体部分。模型表示业务数据和业务逻辑。一个模型能 为多个视图提供数据。由于同一个模型可以被多个视图重用,所以提高了应用 的可重用性。 (3)、控制器 控制器接受用户的输入并调用模型和视图去完成用户的需求。当web用户 单击web页面中的提交按钮来发送html表单时,控制器接收请求并调用相应 的模型组件去处理请求,然后调用相应的视图来显示模型返回的数据。 (4)、mvc处理过程 首先控制器接收用户的请求,并决定调用哪个模型来进行处理,然后模型 根据用户请求进行相应的业务逻辑处理,并返回数据,最后控制器调用相应的 视图来格式化模型返回的数据,并通过视图呈现给用户。 (5)、mvc的优点 多个视图能共享一个模型。在mvc设计模式中,模型响应用户请求并返回 响应数据,视图负责格式化数据并把它们呈现给用户,业务逻辑和表示层分离, 同一个模型可以被不同的视图重用,所以大大提高了代码的可重用性。另外, 模型是自包含的,与控制器和视图保持相对独立,所以可以方便地改变应用程 序的数据层和业务规则。如果把数据库从一个移植到另一个,只需要改变模型 即可。一旦正确地实现了模型,不管数据来自哪个数据库,视图都会正确地显 示它们。由于mvc的三个模块相互独立,改变其中一个不会影响其他两个,所 以依据这种设计思想能构造良好的松耦合的构件。此外,控制器提高了应用程 序的灵活性和可配置性。控制器可以用来连接不同的模型和视图去完成用户的 不同需求。给定一些重用模型和视图,控制器可以根据用户的需求选择适当的 模型进行处理,然后选择适当的视图将处理结果显示给用户1。 第3章 系统分析与实现 3.13.1 系统分析系统分析 本系统包括普通浏览者、注册用户及投稿人、审稿专家、编辑部工作人员 (包括栏目编辑和主编)四角色,各自所需功能说明如下: (1)、普通浏览者,可查看、搜索和下载已经发表的论文。 (2)、注册用户,可进行的操作:a、投稿;b、修改个人信息(密码,个人 基本信息以及研究方向) ;c、查看所投稿件的状态;d、下载需要校对的稿件, 上传校对后的稿件;e、查看稿费。 (3)、审稿专家:必须是编辑部工作人员添加的,可进行的操作:a、下载 审阅编辑部工作人员指定的需要审核的稿件,并给出审稿意见和稿件是否可以 发表的建议;b、修改自己的信息(个人基本信息以及研究方向)但要提交给编 辑部工作人员审核;c、查看自己审阅过的稿件和审稿费用。 (4)、栏目编辑人员,由主编添加,可进行的操作:a、添加审稿专家,查 看专家的信息并审核该专家是否具有审稿资格;b、为未发表的稿件选择合适的 审稿专家,直接决定某篇稿件是否可以发表,但必须给出审稿意见并提交给主 编查看审核;c、修改个人信息(密码和个人基本信息) ;d、搜索人员和稿件信 息。 (5)、主编,可进行的操作:a、添加,删除栏目编辑,以及修改栏目编辑 信息;b、添加审稿专家,查看专家的信息并审核该专家是否具有审稿资格; c、为未发表的稿件选择合适的栏目编辑;d、可直接决定稿件是否可以发表, 如果稿件被退稿要给出退稿理由,同时把退稿理由以电子邮件的形式发送到投 稿人的电子信箱中;e、修改个人信息(密码和个人基本信息);f、搜索人员和 稿件信息。 根据以上分析,本系统有两大主模块:投稿模块和审稿模块,详细模块结 构分析如图1所示,各个模块的功能及其之间的关系说明如下: 信息管理系统 投稿模块审稿模块 注 册 模 块 投 稿 模 块 信 息 搜 索 模 块 邮 件 发 送 模 块 稿 件 信 息 管 理 模 块 人 员 信 息 管 理 模 块 图 1 系统模块示意图 注册模块主要负责把用户的注册信息保存到数据库中,注册完成后自动调 用邮件发送模块把注册用户的用户名和密码发送到注册用户填写的电子邮箱中。 投稿模块主要负责把注册用户的投稿信息保存到数据库中并把稿件上传到 服务器端指定的目录下,该模块包含一个文件上传子模块,使用第三方开发的 javasmartupload.jar包来实现文件的上传2。 信息搜索模块和邮件发送模块被投稿模块和审稿模块共同使用。信息搜索 模块方便普通浏览者,投稿人,审稿专家,编辑部工作人员搜索人员和稿件的 信息。但权限不同搜索到的信息及其类型范围不同。邮件发送模块主要负责把 一些信息发送到指定邮箱中。 稿件信息管理模块主要负责处理稿件在被审核过程中的状态,并来提醒相 应的人员进行处理。 人员信息管理模块只能由编辑部工作人员的使用,包括专家库信息管理和 工作人员信息管理。 稿件作为本系统的处理的核心,其处理过程如图2所示:稿件由系统注册用 户上传到服务器端,首先由主编审核,可以直接决定稿件是否合格,主编根据 稿件的研究方向把稿件发给合适的栏目编辑;栏目编辑审核稿件,系统根据稿 件的研究方向和审稿专家的研究方向,列出符合审稿的专家,栏目编辑把稿件 发送给合适的专家;专家审稿后给出审稿意见和稿件是否可以发表的建议,然 后提交给栏目编辑进行二次审核;栏目编辑根据专家审稿意见填写自己的意见 提交给主编进行二次审核;主编结合栏目编辑和审稿专家的意见来决定稿件是 否通过,不合格需要填写退稿理由以电子邮件的形式发给投稿人,合格稿件进 入校对状态,此时是通过编辑部工作人员来提醒;三次校对后稿件进入发表状 态,由编辑部确定稿件的发表年份和发表期数;稿件发表后,网站的普通浏览 者可以下载查考。 根据稿件的处理过程,定义了稿件在系统中有八种状态: (1)、未审(稿件在主编的手中) (2)、通过主编的审核,并已由主编发给栏目编辑,等待选择审稿专家(稿件 在栏目编辑的手中) (3)、通过栏目编辑的审核,选择合适的审稿专家(稿件在专家的手中) (4)、通过审稿专家的审核,提交给栏目编辑查看(稿件在栏目编辑的手中) (5)、栏目编辑把查看后的稿件提交给主编(稿件在主编的手中) (6)、通过主编审稿查看,稿件进入校对状态(校对状态) (7)、三次校对后进入发表状态(已发表) (8)、未通过审稿 稿件 上传 不合格 不合格 合格 合格 合格(进入校对状态) 可以被普通用户查看 图 2 稿件的处理过程 通知投稿人到 编辑部下载审稿意 见对稿件进行校对, 共需三次校对 栏目编辑 主编 发表,确定稿 件的发表年份和发 表期刊 主编根据稿件的研究方向, 把稿件发给指定的栏目编 辑 专家审稿时给出对 稿件的意见,同时给出 该稿件是否可以发表的 意见 该部分,不是通过 系统来提醒投稿人,而 是编辑部工作人员来提 醒 退稿,并用邮件通知投稿人 主编审核 栏目编辑 审核 专家审核 合格 3.23.2 后台数据库的设计后台数据库的设计 本系统使用sql server2000作为后台数据库,建立了一个名为tougao的数据 库,以下是几个重要表的介绍: user表作用是保存注册用户及投稿人的信息,共包含17个字段:注册用户 名uid必需是唯一的、密码upwd、实姓名uname、年龄uage、所属民族 unation、工作单位uunit、职称uppost、职位upost、学历ulevel、电子邮箱 uemail、通信地址uaddress、邮政编码uzipcode、联系电话utel、一级研究方向 udone、二级研究方向udtwo、三级研究方向udthree以及主键id用来编号。 paper表作用是保存投稿的信息,共包含29个字段:投稿人及该用户的注册 用户名uid、稿件的中文名pcname、稿件的英文名pename、作者pauthor、稿 件的联系人pconnecter、通讯地址paddress、邮政编码pzipcode、联系电话 ptel、稿件的中文摘要pcabstract、英文摘要peabstract、稿件的一级研究方向 pdone、稿件的二级研究方向pdtwo、稿件的三级研究方向pdthree、稿件的项 目基金pfunditem、稿件的所属中国图书分类号pbooktype、所属中国图书分类 的子项名pbookitem、稿件的状态pstate、投稿费用ptbonus、审稿专家的用户 名eid、审稿费用psbonus、专家审稿意见pidea、专家对该稿件是否可以发表的 意见ppass(1:通过0:未通过)、稿件发表的年份pyear、稿件发表的期数pmonth、 负责该稿件审核的栏目编辑wid、记录稿件在服务器中的位置ppath、栏目编辑 的审稿意见pwidea、主编的审稿意见paidea以及主键id用来编号。稿件的一级 研究方向、二级研究方向和三级研究方向三个字段不仅说明所投稿件的研究方 向,更为了方便以后栏目编辑选择合适的审稿专家。 expert表作用是保存审稿专家的信息,共包含18个字段:专家用户名eid必 需是唯一的、密码epwd、真实姓名ename、民族enation、年龄eage、工作单位 eunit、职称eppost、职位epost、学历elevel、电子邮箱eemail、通信地址 eaddress、邮政编码ezipcode、联系电话etel、记录审稿专家是否通过编辑部的 审核epass(1:通过0:未通过)、专家的一级研究方向edone、二级研究方向 edtwo、三级研究方向edthree、以及主键id来编号。专家的用户名必须唯一并 且专家的用户名和密码是由编辑部工作人员添加的,其他的基本信息是由专家 自己填写并提交给编辑部工作人员审核。 worker表作用是保存工作人员的信息,共包含7个字段:用来记录工作人员 的登录用户名wid必需是唯一的、密码wpwd、真实姓名wname、职位wpost、 电子邮箱wemail、联系电话wtel、以及主键id用来编号。主编和栏目编辑都属 于工作人员,但主编的用户名admin开始就存储在数据库中,栏目编辑的信息由 主编负责添加。 上面的四个表是通过paper表来实现连接的,其中的uid、eid和wid分别用 来记录表user、expert和worker中唯一的用户登录名。 3 3.3.3 系统实现系统实现 1、系统开发环境 在众多的网络开发语言中选择了 jsp,因为它具有高可靠性和方便的移植 性,以及优秀的平台开发解决方案。本系统的开发环境如下: (1)、系统开发操作系统:windows2000 server (2)、java 运行环境:jdk_1_5 (3)、服务器引擎:tomcat5.0.19 (4)、系统开发数据库系统:ms sql server 2000 (5)、图形化开发工具: eclipse 系统的主页如图4所示: 图4 主页 登录系统主页的用户可以查阅和搜索已经发表的稿件的基本信息,同时可 以下载稿件参考,以下是几个模块的实现过程的介绍。 2、 mvc模式应用 下面以用户登录的前后处理过程来说明设计系统使用的mvc设计模式。 用户登录类型共三种:注册用户,审稿专家,编辑部工作人员。用户输入 登录信息后,把信息提交给控制器main。main是一个servlet,完全的java类, 担当控制器的功能,在main中得到用户的输入信息,如果用户名,密码和用户 类型任一个为空,则控制器直接选择视图login.jsp返回给用户,提示用户输入有 错误。否则调用模型中的类db.java和类validateuser共同来完成用户的验证,验 证成功后返回相应用户类型的操作界面,不成功则返回登录界面login.jsp,提示 用户操作错误。 总的控制模型图如图3所示1: 3、 数据库连接 类db.java和数据库配置文件perties来共同完成数据库的连接。 存取信息 应 用 服 务 器 和 数 据 库 浏 览 器 选择 实例化调用 选择 控制器 模 型 验 证 视图 输入登陆 请求信息 响应 图 3 控制模型图 类db.java共有七个方法及其核心代码的说明如下5: (1)、public db() 类的构造函数,从文件perties中得到连接数据库的 驱动程序,连接的数据库名,登录用户名和密码 (2)、public void connect() 加载驱动程序,并实现与数据库的 连接 class.forname(dr);/加载驱动程序 cn = drivermanager.getconnection(ur,user,password); /建立与数据库tougao 的连接 (3)、public void createsm() 创建执行sql语句的statement对象 sm = cn.createstatement();/建立statement对象 在默认情况下,同一时间每个statement对象只能打开一个resultset对象。 因此,如果读取一个resultset对象与读取另一个交叉,则这两个对象必须是由 不同的statement对象生成的。因此用这个方法可以避免在同一个页面同时使用 多个resultset对象,当已经存在resultset对象时,为了能够继续得到resultset对 象,必须再创建一个statement对象6。 (4)、public resultset getset(string str) 根据传入的sql语句查询数据库,得到 一个resultset集合 rs = sm.executequery(str);/执行查询语句,返回记录结合 (5)、public boolean updatedb(string str) 根据传入的sql语句更新数据库 sm.executeupdate(str);/执行插入,删除等更新数据库的 操作 (6)、public void closesm() 关闭一个statement对象 sm.close(); (7)、public void close()断开与数据库的连接 cn.close(); 数据库配置文件perties的说明如下: driver=com.microsoft.jdbc.sqlserver.sqlserverdriver /数据库驱动程序 url=jdbc:microsoft:sqlserver:/localhost:1433;databasename=tougao/连接的数 据库 username=sa/用户名 password=sa/密码 db.java读取配置文件中的信息,这种方法可以方便系统在不同类型数据库上 的使用,提高了系统的可移植性。在使用不同的数据库时只要改变数据库驱动 程序,要连接的数据库名,以及用户名和密码.不需要重新编译db.java文件,即可 完成数据库的操作。 4、稿件上传 稿件上传及文件上传,jsp中使用第三方开发的javasmartupload.jar包来实现 文件的上传,运用程序的目录下/user/uploadfile.jsp文件来实现稿件上传,以下 是该页面中的实现稿件上传的过程及其核心代码的说明: /定义目标目录 string destination=“/upload/“; /初始化对象 mysmartupload.initialize(pagecontext); /文件上传 mysmartupload.upload(); string paperpath = null; /文件上传路径 /得到所有上传文件的信息 com.jspsmart.upload.file myfile = mysmartupload.getfiles().getfile(0); if(!myfile.ismissing() /得到文件的上传位置 paperpath = destination + myfile.getfilename(); /把文件保存到服务器端指定的目录中 myfile.saveas(paperpath); 通过以上的步骤即可实现把客户端要投的稿件上传到服务器端指定的目录 中,同时把paperpath保存到数据库的表paper中ppath字段里,这样为了方便以后 稿件的下载。 5、审稿模块 审稿模块是该系统的核心部分,是通过设置稿件的8种状态来把稿件分配给 不同的用户进行审核来完成的。以下通过审稿流程来说明审稿模块是如何实现 的。 (1)、表paper中的字段pstate是用来表示稿件的状态默认值为1,及用户投稿 后稿件的状态;此时的稿件只有主编有权限使用。主编可以查看下载查看稿件 的内容,可以直接退稿并给出退稿理由,同时把退稿理由以电子邮件的形式发 送给投稿人,并把pstate的值设置为8(未通过审稿) 。通过主编的第一次审核后 把稿件发给合适的栏目编辑,此时把pstate的值改为2,并且把该记录中的wid 设置为主编选择的栏目编辑的登录用户名,此时该稿件归该栏目编辑所有。 (2)、栏目编辑可以下载查看稿件的内容,可以退稿并给出退稿理由提交给 主编第二次审核,并把pstate的值设置为5。通过栏目编辑的第一次审核后可为 稿件选择合适的审稿专家,并把pstate的值设置为3,同时设置该记录中的eid的 值为该审稿专家的登录用户名。审稿专家的选择依据稿件的研究方向和审稿专 家的研究方向。系统自动的以电子邮件的方式提醒审稿专家登录编辑部网站下 载审稿审核。 (3)、专家审稿完成后设置pstate的值为4,给出审稿意见,同时给出该稿件 是否可以发表的意见,如果可发表则设置paper表中的ppass的值为1,否则为0, 提交给栏目编辑进行第二次审核。 (4)、栏目编辑进行第二次审核,查看专家的审稿意见,并给出自己的意见 提交给主编第二次审核,同时设置pstate的值为5

温馨提示

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

评论

0/150

提交评论