大学生论文管理系统

上传人:hjk****65 文档编号:178833046 上传时间:2022-12-29 格式:DOC 页数:47 大小:1.38MB
收藏 版权申诉 举报 下载
大学生论文管理系统_第1页
第1页 / 共47页
大学生论文管理系统_第2页
第2页 / 共47页
大学生论文管理系统_第3页
第3页 / 共47页
资源描述:

《大学生论文管理系统》由会员分享,可在线阅读,更多相关《大学生论文管理系统(47页珍藏版)》请在装配图网上搜索。

1、 191 第5章 大学生论文管理系统第5章 大学生论文管理系统大学教育已经普及,大学生的数量也不断扩大,随之而来的是学生论文数量的不断增多。如果按照手工作业来进行论文库的管理工作,不仅工作量大,而且容易出错,更不方便大家查阅。因此,需要为大学生开发一套论文管理系统。大学生论文管理系统是学校等机构在自己的局域网上搭建的B/S结构办公平台,用户打开浏览器即可方便快捷地使用该系统,进行论文的发布、管理和查阅工作。本章根据大学中的实际需求,介绍一个完整的学生论文管理系统从设计到实现的方法。本章采用MySQL作为后台数据库,采用标准MVC三层架构(JSP-JavaBean-Servlet)开发模式。通过

2、这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现,这些组件可以进行交互和重用。5.1 概 述本章讨论的案例是有实际论文管理需求的学校进行论文管理的系统。系统的用户信息和权限由系统管理员进行维护,有身份的用户登录系统进行论文、科技专著、学术报告的发布与管理工作,其他用户都可以进行论文的查阅。要实现的功能包括两个方面,一方面是管理员的管理功能,包括学院维护、系所维护、人员维护和角色权限维护,这一部分是系统管理的基础,至关重要;另一方面是论文管理功能,包括发布论文和进行论文管理、发布科技专著和进行科技专著管理、发布学术报告和进行学术报告管理,这一部分是该系统真正的使用目的所在。下面首先来

3、预览一下本系统的主界面,如图5-1所示。如前面所述,要实现本系统,就要实现系统管理和论文管理两方面的功能。图5-1中为整个系统的工作界面。系统初始化了一个系统管理员用户,用户名为admin,密码为admin,管理员登录该系统后,首先进行系统基础数据的管理,主要是学院、系所、用户、权限的初始化工作,初始化后的用户可以登录系统进行论文的管理功能工作。图5-1 大学生论文管理系统主界面5.2 需 求 分 析开发大学生论文管理系统的第一步是进行需求分析。需求分析的好坏直接决定着系统能否真正满足用户的需要。可以将需求分析分为两个过程:一是理解需求,二是分析需求。5.2.1 理解需求下面是一份典型的大学生

4、论文管理系统的文本需求说明。(1) 根据权限大小分为系统维护管理员、普通大学生管理员,它们的权限如下。 系统维护管理员:为本平台的日常网络维护管理,可以对系统进行修改,排除故障。 普通大学生管理员:可以发布论文、专著和学术报告,进行已发布文章的管理工作。 所有用户:可以进行论文的查询。(2) 使用人员的机构级别设置学院为一级机构,系所为二级机构。可以有多个学院,每一个学院下有多个系所。(3) 系统中的学生用户可以发布的文章类型有科技论文、科技专著、学术报告。(4) 发布论文的学生可以修改和删除已经发布的论文、科技专著和学术报告。(5) 所有用户都可以查阅已有的数据。(6) 系统客户端运行在Wi

5、ndows平台下,服务器端可以运行在Windows平台或者Unix平台下,系统还应该有一个较好的图形用户界面。(7) 系统应该有很好的可扩展性。5.2.2 需求分析分析需求是数据库信息管理系统开发的第一步,也是最重要的一步。理解需求是在问题及其最终解决方案之间架设桥梁的第一步。开发者只有和客户充分理解了需求之后才能开始设计系统,否则,对需求定义的任何改进,设计上都必须大量的返工。本章将要介绍的大学生论文管理系统是根据大学生的实际工作需求进行设计开发的。系统使用的流程是先由管理员进行系统数据的初始化,然后由学生登录系统进行论文发布和管理工作,这些登记在库的论文将作为以后查询的主要对象。因为篇幅所

6、限,这里只列出比较关键的部分。由以上的分析可以得知,大学生论文管理系统的角色可以划分为两类。(1) 系统管理员:负责管理学院、系所、大学生用户和角色权限。(2) 大学生用户:发布、管理论文数据库。这两类用户分别拥有自己的操作功能。每一个操作模块都要实现自身的功能,并且在整个的操作流程中负责承上启下。下面根据这两方面的需求,来分别描述各个模块要实现的功能。(1) 管理员登录:系统初始化好一个系统管理员用户,管理员能够通过该入口进入系统主界面进行管理操作。(2) 管理员管理学院:实现对添加新学院、修改、删除等功能。学院的信息包括学院名称、负责人、电话、学院编号。(3) 管理员管理系所:实现对添加新

7、系所、修改、删除等功能。系所的信息包括系所名称、所属学院、负责人、电话、系所编号。(4) 管理员管理学生用户:实现添加新人、查看、修改、删除和查询人员信息等功能。学生信息包括的字段有工号(登录用户名)、登录密码、姓名、性别、民族、籍贯、出生日期、身份证号、职称、办公电话、手机、家庭电话、Email、备注、所在学院、所在科室、角色。(5) 管理员管理角色权限:实现新增、修改和删除角色等功能。系统初始化有“系统维护管理员”的角色,该角色为系统管理员所有,可以进行所有的操作。每一个角色对应的操作权限是操作模块的名称。(6) 学生登录:大学生用户按照管理员分配的用户名和密码登录系统,其所拥有的权限为系

8、统管理员为其分配的权限集合。(7) 学生进行论文管理:可以发布、管理论文。包括的字段有编号、学院、作者、刊物名称、论文名称、收录情况、影响力、影响因子、引用次数、第几作者、备注。(8) 学生进行科技专著管理:可以发布、管理科技专著。包括的字段有编号、学院、作者、字数(万字)、备注。(9) 学生进行学术报告管理:可以发布、管理学术报告。包括的字段有编号、学院/学校、报告人、职务、报告人单位、报告名称、听众对象、人数、备注。大学生论文管理管理系统首先是系统维护所用到的数据,如学院、系所、人员以及进行权限控制的权限,接下来是根据各个模块的需要对其进行设计。本系统在设计过程中,尽量考虑到各个模块中相似

9、之处,减少表格数量,提高表格的关联程度,以及减少数据库中数据的冗余。系统设置内容包括学院维护、系所维护、人员维护和角色权限维护。以上这些部分的内容和设置项,各个部分之间的关系比较明显,即人员属于系所、系所属于学院的所属关系,如图5-2所示,所以在设计数据表的时候增加外键进行关联即可。因为论文管理、科技专著、学术报告3个模块主要涉及的功能是信息的发布和维护,而这些模块的操作对象是系统的学生用户。这些学生用户是系统管理员建立的,并且必须被分配了这些模块的操作权限后才可以进行论文的发布和管理工作。图5-3描述了学生用户从分配到使用的流程。 图5-2 学院-系所-人员关系 图5-3 学生使用流程图5.

10、3 UML系统建模需求分析后,就可以使用Rational Rose对系统进行UML建模了。下面分别讲解大学生论文管理系统的UML建模过程。5.3.1 系统用例分析在需求分析中列出了大学生论文管理系统的全部用例,使用Rose软件进行UML建模,系统总用例图如图5-4所示,而其他用例同理,由于篇幅关系,这里不再赘述,请读者参照前面的章节自行完成。图5-4 大学生论文管理系统用例图该用例图标记了所有的用例,从中可以得知,大学生论文管理系统的角色可以划分为两类。 管理员:管理论文、管理系所、管理学生用户、管理角色权限等。 学生用户:进行论文管理、科技专著管理、学术报告等。5.3.2 系统域类分析UML

11、建模的第二步就是域类分析。实际开发大学生论文管理系统时,域类分析是建立在用例分析基础上的。要了解系统要处理的概念,这时最好将公司的有关人员组织起来开一个讨论会,了解概念和概念之间的关系。大学生论文管理系统中的域类主要包括:数据库连接(DataBase)、字符串处理(DealString)、参数配置(ConfigReader)等。可以在域类图中将上面这些类以及它们之间的关系表示出来,如图5-5所示。图5-5 大学生论文管理系统域类图5.3.3 系统活动图活动图(Activity Diagram)反映系统中从一个活动到另一个活动的流程,强调对象间的控制流程,如图5-6所示,描述了系统学生管理、论文

12、管理、论文查阅的活动执行顺序。活动图是一种特殊的状态图,描述需要做的活动、执行这些活动的顺序(多为并行的)以及工作流(完成工作所需要的步骤)。它对于系统的功能建模特别重要,强调对象间的控制流程。图5-6 系统活动图这之后就可以进行详细设计了。考虑到篇幅限制,这里就不再赘述了,读者可参阅本书光盘中的范例。至此,UML系统建模完成。5.4 系 统 配 置一个好的大学生论文管理系统必然有一个相对最优的系统配置方案。下面讨论如何根据用户的实际情况设计系统的配置,包括软件配置、硬件配置和网络配置。5.4.1 软件配置软件配置主要包括数据库的选择和操作系统的选择。大学生论文管理系统的软件配置要根据用户对系

13、统的稳定性要求、系统的容量以及用户的维护水平来确定。(1) 数据库的选择可以根据数据量的大小选择不同的数据库,如表5-1所示。表5-1 大学生论文管理系统数据库的选择用 户(人)每秒数据库并发数据访问记录数稳定性要求维护水平备选数据库社区大学5005000低差Access,MySQL专业型大学500050 000中一般SQL Server,MySQL综合型大学50 000200 000较高较好SQL Server,Oracle在本章中选择MySQL数据库。(2) 操作系统的选择可以根据用户量的大小选择不同的操作系统。当然,一般情况下,用户对Microsoft公司的Windows操作系统界面比较

14、熟悉,因此,建议客户端使用Windows 2000或者Windows XP操作系统。服务器端操作系统的选择如表5-2所示。表5-2 大学生论文管理系统服务器端操作系统的选择用 户(人)每秒数据库并发数据访问记录数稳定性要求维护水平备选操作系统社区大学50500中一般Windows NT,Windows 2000 Server,Windows XP专业型大学5002000较高较好Windows NT,Windows 2000 Server,Windows XP,Linux,UNIX综合型大学5002000较高较好Windows XP,UNIX在本章中选择Windows XP操作系统作为服务器端操

15、作系统。5.4.2 硬件配置硬件配置主要包括客户端硬件的选择和服务器端硬件的选择。大学生论文管理系统的硬件配置要根据用户对系统的稳定性要求、系统的容量、系统的吞吐量,以及用户的维护水平来确定。这里只给出参考配置的范围,具体的配置需要根据用户的需求精确计算。(1) 客户端硬件的选择根据稳定性要求选择不同的客户端硬件,客户端硬件的选择如表5-3所示。表5-3 大学生论文管理系统客户端硬件的选择用 户稳定性要求备选客户端学生客户端中Pentium /256MB/20GB(2) 服务器端硬件的选择根据数据量和吞吐量的大小选择不同的服务器硬件,服务器端硬件的选择如表5-4所示。表5-4 大学生论文管理系

16、统服务器端硬件的选择用 户(人)每秒数据库并发数据访问记录数稳定性要求维护水平备选服务器社区大学50500中一般Xeon双CPU/1GB/RAID5 372GB专业型大学50500中一般Xeon双CPU/1GB/RAID5 372GB综合型大学5002000较高较好小型计算机/双机热备或者Xeon 4 CPU/4GB/RAID5 672GB5.4.3 网络配置大学生论文管理系统的网络配置一般有如下几种类型。(1) 单机模式:即服务器和客户端在一台计算机上。(2) 百兆模式:计算机网络的速度为百兆,如图5-7所示。图5-7 大学生论文管理系统网络百兆配置(3) 千兆模式:计算机网络的速度为千兆。

17、实际上,没有必要给每个节点都配备千兆网络接口,只需要给服务器端配备千兆接口即可,如图5-8所示。图5-8 大学生论文管理系统网络千兆配置可以根据用户情况选择不同的网络配置,如表5-5所示。表5-5 大学生论文管理系统网络配置的选择用 户(人)每秒数据库并发数据访问记录数稳定性要求维护水平备选网络方案社区大学50500中一般百兆模式专业型大学5002000较高较好百兆模式综合型大学2000以上高好千兆模式5.5 数据库分析数据库分析是整个大学生论文管理系统开发过程中一个重要环节,它具体可分为两个部分:一是概念模型的分析,即E-R图的分析;二是逻辑模型的分析,即表与字段的分析。本节将使用Power

18、Designer完成E-R图的分析和数据库建模。5.5.1 系统E-R图根据UML系统模型,可以确定系统中的各种实体以及它们之间的关系。本系统根据上面的设计规划出的实体包括:学生用户数据实体(kjc_people)、学院数据实体(kjc_college)、系所数据实体(kjc_department)、角色数据实体(kjc_role)、权限数据实体(kjc_right)、论文字典数据实体(kjc_code)、论文数据实体(kjc_paper)、科技专著数据实体(kjc_bookstatistic)、学术报告数据实体(kjc_report)等。通过对实体联系的分析,在本系统中使用PowerDesi

19、gner设计E-R模型。PowerDesigner的概念数据模型(CDM)把现实的信息简化为实体与实体之间的联系,它与DBMS无关。CDM的建立是一个比较复杂的过程,实体关系图的分析结果也非常复杂,一般情况下使用自底向上的方法,首先对局部视图进行分析设计,然后再实现视图集成。这里不再对局部视图进行设计,直接给出视图集成后的E-R图,如图5-9所示。在进行详细的实体关系图设计时,使用用户信息进行系统用户基本信息的管理以及登录系统时用户名、密码和权限的设定;在设计时,论文管理、科技专著、学术报告3个模块主要涉及的功能是信息的发布和维护,而这些模块的操作对象是系统的学生用户,所以可以通过相似性,来减

20、小系统开发难度;在这里通过学生用户使用系统进行发布的过程来记录系统动态操作的过程。其实,以上E-R图只是大学生论文管理系统最基本元素的实体关系图,读者可以在此基础上根据用户的不同需要进行扩展。图5-9 大学生论文管理系统实体关系图5.5.2 表与字段分析表与字段分析是建立在如图5-9所示的大学生论文管理系统E-R图的基础上,可以通过该E-R图确定系统中所有的表及其字段。表与字段分析后就可以使用PowerDesigner建立数据库模型了。PowerDesigner提供了工具产生表和字段并建立数据库模型,所以可以根据上面的E-R图直接生成数据库模型。对于复杂数据库,使用PowerDesigner可

21、以有效减轻工作量并提高设计质量。建立的数据库模型如图5-10所示。图5-10 大学生论文管理系统的数据库模型5.6 数据库设计在大学生论文管理系统的数据库设计中,首先要创建系统数据库,然后在数据库中创建需要的表和字段。5.6.1 数据库结构设计管理员进行基础信息的管理包括学院、系所、学生、角色管理,因此要包括4个数据实体。根据前面的分析可知,这4个实体要描述的信息分别如下。 学院数据实体:学院名称、负责人、电话、学院编号。 系所数据实体:系所名称、所属学院、负责人、电话、系所编号。 学生数据实体:工号(登录用户名)、登录密码、姓名、性别、民族、籍贯、出生日期、身份证号、职称、办公电话、手机、家

22、庭电话、E-mail、备注、所在学院、所在科室、角色。 角色数据实体:角色编号、权限集合名称。由于权限对应的是操作模块按钮的名称,在程序初始化时,这些数据都应该具有了,因此应用有如下的数据实体。 权限数据实体:权限编号、操作权限名称。以上的5个实体都是基本的数据实体。大学生论文管理系统的目的是进行论文管理,因此要包括如下的几个数据实体。 论文数据实体:编号、学院、作者、刊物名称、论文名称、收录情况、影响力、影响因子、引用次数、第几作者、备注。 论文字典数据实体:论文字典的类型、编号、名称。 科技专著数据实体:编号、学院、作者、字数(万字)、备注。 学术报告数据实体:编号、学院/学校、报告人、职

23、务、报告人单位、报告名称、听众对象、人数、备注。5.6.2 创建数据表在这个数据库管理系统中要建立9张数据表。 学院数据表(kjc_college):用于存放学院数据。 系所数据表(kjc_department):用于存放系所数据。 学生数据表(kjc_people):用于存放学生数据。 角色数据表(kjc_role):用于存放角色数据。 权限数据表(kjc_right):用于存放权限数据。 论文数据表(kjc2_paper):用于存放论文数据。 论文字典数据表(kjc2_code):用于存放论文字典数据。 科技专著数据表(kjc2_bookstatistic):用于存放科技专著数据。 学术报

24、告数据表(kjc2_report):用于存放学术报告数据。这9张数据表的字段说明如表5-65-14所示。表5-6 学院数据表(kjc_college)编 号字 段 名 称字 段 类 型说 明1IdInt(10)惟一编号2NameVarchar2(50)学院名称3TelVarchar2(15)办公电话4ManVarchar2(10)负责人表5-7 系所数据表(kjc_department) 编 号字 段 名 称字 段 类 型说 明1IdInt(10)惟一编号2NameVarchar2(50)系所名称3TelVarchar2(15)办公电话4ManVarchar2(10)负责人5collegeIn

25、t(10)所属学院表5-8 学生数据表(kjc_people) 编 号字 段 名 称字 段 类 型说 明1IdInt(20)惟一编号2workidVarchar2(20)工号,登录用户名3passwordVarchar2(20)登录密码4NameVarchar2(20)姓名5SexVarchar2(2)性别6NationVarchar2(50)民族7AddrVarchar2(100)籍贯8Birthdate出生日期9CertidVarchar2(18)身份证号10PostVarchar2(50)职称11OfficetelVarchar2(15)办公电话12MobileVarchar2(15)手

26、机13HometelVarchar2(15)家庭电话14E-mailVarchar2(100)电子邮件15descsVarchar2(200)备注16collegeidInt(10)所在学院(续表) 编 号字 段 名 称字 段 类 型说 明17departmentidInt(10)所在科室18roleidInt(10)角色表5-9 角色数据表(kjc_role) 编 号字 段 名 称字 段 类 型说 明1IdInt(10)惟一编号2NameVarchar2(50)权限名称表5-10 权限数据表(kjc_right) 编 号字 段 名 称字 段 类 型说 明1IdInt(10)惟一编号2Name

27、Varchar2(50)角色名称3TelVarchar2(100)权限集合表5-11 论文数据表(kjc2_paper)编 号字 段 名 称字 段 类 型说 明1IdInt(10)惟一字段2BhVarchar2(20)编号3XyVarchar2(50)学院4ZzVarchar2(20)作者5KwmcVarchar2(50)刊物名称6LwmcVarchar2(100)论文名称7SlqkInt(10)收录情况8Slqk_nameVarchar(100)收录情况9yxlVarchar2(10)影响力10YxyzVarchar2(5)影响因子11YycsInt(5)引用次数12DjzzInt(5)第几

28、作者13bzVarcahr2(200)备注表5-12 论文字典数据表(kjc2_code) 编 号字 段 名 称字 段 类 型说 明1IdInt(10)数据表的惟一字段2codeidVarchar2(20)查询字典的惟一字段3typeVarchar2(20)字典类别4nameVarchar2(20)字典描述5valueVarchar2(20)字典值列表表5-13 科技专著数据表(kjc2_bookstatistic) 编 号字 段 名 称字 段 类 型说 明1IdInt(10)惟一字段2BhVarchar2(20)编号3XyVarchar2(50)学院4ZzVarchar2(20)作者5cbs

29、Varchar2(50)出版社名称6ZsVarchar2(5)字数(万字)7bzVarchar2(200)备注表5-14 学术报告数据表(kjc2_report) 编 号字 段 名 称字 段 类 型说 明1IdInt(10)惟一字段2BhVarchar2(20)编号3XyVarchar2(50)学院/学校4BgrVarchar2(20)报告人5ZwVarchar2(20)职务6BgrdwVarchar2(20)报告人单位7BgmcVarchar2(20)报告名称8TzdxVarchar2(20)听众对象9RsVarchar2(10)人数10bzVarchar2(200)备注5.6.3 快速创建

30、数据库为了快速正确搭建系统,读者可以使用光盘中提供的本案例的数据文件来建立数据库。在建立数据库之前,应正确安装完成MySQL的数据库软件,并启动MySQL数据库服务。安装步骤为:解压缩本案例的程序压缩文件,找到database目录,将article目录复制到%MySQL_HOME%;data目录下,重新启动MySQL服务。此时数据库就可以供程序使用了。数据库名为article,默认存在一个用户root,密码为空。5.7 系 统 准 备接下来要进行代码编写了,在进行编写之前,需要搭建系统的环境。最基础的就是从目录的建立开始,建立系统的基础应用模块和站点配置环境,并进行数据库的正常连接。5.7.1

31、 目录结构在进行程序设计和开发之前要设计系统的目录结构,一般这个结构对任何的B/S系统都是通用的。本系统的目录结构如图5-11所示。图5-11 目录结构在该目录结构中,article代表本站点的根目录,它包含4个子目录:database用于存放数据库备份文件,doc用于存放系统的文档,web用于存放系统的JSP等的源文件,WEB-INF用于存放系统所使用的类包。其中web和WEB-INF是主要开发的目录。Web包含5个主要的子目录:kjc2_edit用于存放论文等的发布代码,kjc2_manage用于存放论文等的管理代码,main用于存放系统主框架程序代码,org用于存放管理员进行学院等的维护

32、的代码,uer用于存放用户管理代码,其他的目录为图片等文件的目录。WEB-INF包含两个子目录:classes用于存放类文件,lib用于存放类包文件,同时该目录下还包括站点的配置文件web.xml。这个目录结构是通用的目录结构,读者可以根据需要进行相应的修改。5.7.2 通用模块本系统采用数据库连接池进行数据库的统一管理,同时在数据库操作上进行了封装,方便程序开发时与数据库的交互,接下来详细看一下这两个方面。(1) 数据库连接池在实现某一个功能时,首先要连接数据库。如果在每一次需要进行数据库操作前都来加载驱动、创建连接,那么在连接的入口参数处理上将是十分零散,不好管理和维护。一旦系统移植,数据

33、库参数改变,将需要重新修改所有的连接代码,重新编译,这项工作复杂,是不必要的,也是可以省去的。可以采用DBConnectionManager类来创建连接池,创建代码如下:private void createPools()String poolName = Configuration.ConnectionPoolName;String url = Configuration.DB_URL;if(url = null)Logger.log(没有为连接池 + poolName + 指定URL);return ;String user = Configuration.DB_USERNAME;Stri

34、ng password = Configuration.DB_PASSWORD;String maxconn = Configuration.DB_MAXCONNNUM;int max;trymax = Integer.valueOf(maxconn).intValue();catch(NumberFormatException e)Logger.log(错误的最大连接数限制: + maxconn + .连接池: + poolName);max = 0;DBConnectionPool pool =new DBConnectionPool(poolName, url, user, passwo

35、rd, max);pools.put(poolName, pool);Logger.log(成功创建连接池 + poolName);在此类中,有4个参数:即数据库的驱动、连接地址、用户名和密码,这4个参数存储在WEB-INFconf.xml文件中。这样,在数据库移植或系统环境改变时,只须修改这个配置文件就可以了,十分方便。文件confi.xml的配置参数如下所示:jdbc:MySQL:/localhost:3306/article org.gjt.mm.MySQL.Driver root500分别表示的参数为连接的地址、驱动名、数据库用户名、密码、连接池数量。如果读者创建的数据库参数与这里不同

36、,直接修改此文件即可。(2) 数据库封装数据库已经进行连接,那么根据第1章的学习知道,在每一次需要进行数据库的某种操作时,只须调用对应的JDBC的函数就可以了。但是,在实际的开发中发现,直接使用JDBC函数将使代码的编写工作十分浪费。为了提高编写代码的效率,可以封装DataBase。该类封装了基本的操作函数。如下代码表示执行查询语句的函数:public ResultSet QuerySQL(String sql)ResultSet rs = null;trypstm = conn.prepareStatement(sql);rs = pstm.executeQuery();catch(SQLE

37、xception sqle)return rs;如下的代码封装了执行更新SQL语句的函数:public int ExecuteSQL(String sql)trypstm = conn.prepareStatement(sql);pstm.executeUpdate();mit();catch(SQLException sqle)return 0;该类封装了数据库操作的基本函数,用于作为JavaBean的父类,便于统一管理。该类的一个重要作用是从连接池里取得一个连接,在使用结束时关闭连接。统一处理了这些额外的工作和异常的抛出,使设计者能够放心编写JavaBean。5.7.3 配置站点与数据库连

38、接在讲解代码实现之前,先按照如下步骤搭建好站点的环境,以便直观学习。(1) 安装JDK1.4.0下载JDK1.4.0版本安装程序,连续单击“下一步”按钮,安装过程中均采用默认选择,直至安装结束。安装结束后,在桌面“我的电脑”图标上右击,在弹出的快捷菜单中选择“属性”命令,弹出“系统特性”对话框,在“高级”选项卡中单击“环境变量”按钮,在弹出的对话框中新建环境变量JAVA_HOME,值为C:j2sdk1.4.0。(2) 安装Tomcat 4.1.24连续单击“下一步”按钮,直至安装结束,在选择安装路径时推荐安装在根目录,例如C:Tomcat 4.1。 设置环境变量:在“我的电脑”属性中设置环境变

39、量为TOMCAT_HOME= C:Tomcat 4.1。 建立站点:修改C:Tomcat 4.1confserver.xml,在上一行添加如下代码来建立站点。此步骤应该对应程序安装的目录。 部署源程序:解压缩复制目录article,例如D:,解压后的目录应该满足D: article WEB-INF。(3) 访问系统启动MySQL,Tomcat,输入地址http:/localhost:port/article/即可访问,用户admin,密码初始化为admin。至此,软件环境安装完成。5.8 界面设计及代码实现从上面系统的设计可知,本系统的界面共分为如下两大部分。(1) 管理员管理模块,用于管理员

40、进行系统初始化和系统管理,它包括如下几个部分。 学院管理:包括列表页面、新增页面、修改页面。 系所管理:包括列表页面、新增页面、修改页面。 人员管理:包括列表页面、新增页面、修改页面。 角色管理:包括列表页面、新增页面、修改页面。(2) 学生论文管理模块,用于大学生进行论文、科技专著、学术报告发布和管理,包括如下几个部分。 论文管理:包括列表页面、新增页面、修改页面。 科技专著管理:包括列表页面、新增页面、修改页面。 学术报告管理:包括列表页面、新增页面、修改页面。根据这些整体关系的设计,下面对每一个部分给出主要界面的设计及其设计思路。5.8.1 登录模块设计和实现用户要进行论文管理,就要拥有

41、自己的登录入口,这是任何一个系统管理功能保密性的需要。根据数据库部分的设计知道,用户信息存放在数据表kjc_people中,初始化填入了一个系统管理员用户记录,用户为admin,密码为admin。在用户登录界面中,也包括用户名和密码的输入文本框,还要包括提交登录的按钮。登录界面如图5-12所示。图5-12 登录界面设计此界面除了用户管理员登录以外,还可以用于学生登录,凡是管理员新增的用户都可以通过它来进入系统。在登录界面上需要提供工作证号和密码的输入文本框作为身份验证的依据。登录界面的JSP程序都可以在所附光盘的webmain目录下找到。上面登录窗口的JSP代码可以查看所附光盘代码文件teac

42、herwebmainlogin.jsp。下面是其中的部分程序段。学生办公管理系统 工作证号: 密码: 上面程序段中表示表单提交之后,根据文件teacherWEB-INFweb.xml中的配置被映射,下面就是相关的程序段。 servletctl Base.ServletCtl.servlet debug 2 servletctl *.cgi 程序段中“*.cgi”表示先把servlet的类文件Base.ServletCtl.servlet映射为名字servletctl,然后把cgi为后缀的路径都自动转向servletctl进行监听处理,即当servletctl监视到后缀为cgi的提交数据时,会根

43、据teacherWEB-INFservlet-config.xml中的配置来进行处理,这也是基于标准MVC架构的开发模式控制的关键。5.8.2 学院配置模块设计与实现管理员登录系统后,首先要做的工作就是系统基础数据的初始化。根据前面的逻辑设计可知,学院是人员存在的机构,因此应该首先进行学院的管理。单击学院配置按钮,进入学院列表页面。该页面显示的信息是学院的编号和学院名称。此页面提供添加、修改和删除的链接,是学院管理的总页面。页面设计的结果如图5-13所示。图5-13 学院配置主界面设计在新增页面中,需要填写学院名称、学院代号、联系电话和负责人。其中学院代号是表示学院的惟一编号,在显示界面中进行

44、排序显示。界面设计的结果如图5-14所示。图5-14 新增学院界面设计单击学院配置界面中的“修改”按钮时,跳转的页面与此界面相似,因此不再介绍。在新增或修改学院信息的界面中,需要选择负责人。单击“选人”按钮打开如图5-15所示的选择人员的界面。因为本系统中的人员结构为学院-系所制,因此机构的选择采用了属性结构的方式,当单击某一个学院或系所时,提取该机构的人员列表。通过单击事件进行人员选择。图5-15 选择人员界面设计学院维护的JSP页面代码在附光盘的weborgcollege目录下。当单击“学院维护”按钮时,间接调用,因为所调用路径带后缀cgi,所以与登录系统的用户名密码验证具有相同的跳页方式

45、,具体配置如下面的程序段所示。 select * from kjc_college order by mark /web/org/college/main.jsp /web/main/err.htm配置文件中同样先打开数据库的连接、合法性检验,然后根据配置的SQL语句进行学院信息的查询、关闭数据库的连接,最后根据查询结果进行页面的跳转。表示根据所提供的SQL语句查询出来的信息放在college的对象中,以备在页面中显示。与之相对应的代码为学院维护代码相应目录下的文件main.jsp,下面抽取其中的主要代码进行讲解。% /循环显示学院列表信息for(int i=0;i a href=modify

46、.cgi?id=修改 a href=deletecollege.cgi?id=删除 db.getCount(college)表示取得对象名为college的对象的个数,即系统数据库中一共有多少条学院的记录信息。 db.getAttributeStr(college.mark,i)表示第i个college对象的mark属性,即学院编号;db.getAttributeStr(college.name,i)则表示取得学院的名称。 a href=modify.cgi?id=修改表示单击“修改”按钮后,则带参数id跳转到modify.cgi进行处理。 a href=deletecollege.cgi?i

47、d=删除表示单击“删除”按钮后,则带参数id跳转到deletecollege.cgi进行处理。关于修改和删除详细处理后面会逐步介绍。当然,实现完学院信息的列表显示之后,首先会先想到如何新增一个学院。可以看到,学院信息列表页的“新增”按钮处代码是添加新学院,下面是其中的部分程序段。 select id,name from kjc_people /web/org/college/newcollege.jsp/web/main/err.jsp根据以上程序段可知,首先打开数据库的连接、进行合法性检验,然后根据配置的SQL语句进查询、关闭数据库的连接,最后根据查询结果等进行页面的跳转。新增学院界面的js

48、p代码为newcollege.jsp文件,此页面代码比较容易理解,读者可以查看代码文件。此处就详细介绍一下“选人”操作,选人的页面分为两个区域:左边为树形结构,显示学校的所有机构;右边为显示人员的界面。选中左边的机构之后,右边上面的列表框中会显示出选中机构的所有人员,然后根据需要把所要选择的人员选到下面的列表框中。选人界面的相关jsp代码,在目录webSelectMan下,被封装成一个组件。具体调用方法如下面称序段所示。程序段中window.open()的第一个参数:././SelectMan/stepMem.jsp?count=1&txt_rybh=txt_rybh&txt_rymc=txt_rymc以上代码表示打开选人界面。参数count=1表示所要选择的人员个数为1,参数txt_rybh =txt_rybh表示选择人员后把人员编号返回到name=txt_rybh的隐藏框中,参数txt_rymc= txt_rymc表示选择人员后把人员名称返回到name=txt_rybh的文本框中。因此只要调用选人组件的时候根据要求设置参数count、txt_rybh和txt_rymc即可。修改学院的代码与添加相似,这里不再重复介绍了,读者可以查阅光盘进行学习。最后剩下的就是删除操作了,删除操作对新增和修改来说,相对要简单一些。在学院信息的列

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!