施工组织设计-软件工程 毕业设计 成绩管理系统

上传人:无*** 文档编号:52096181 上传时间:2022-02-07 格式:DOCX 页数:70 大小:5.02MB
收藏 版权申诉 举报 下载
施工组织设计-软件工程 毕业设计 成绩管理系统_第1页
第1页 / 共70页
施工组织设计-软件工程 毕业设计 成绩管理系统_第2页
第2页 / 共70页
施工组织设计-软件工程 毕业设计 成绩管理系统_第3页
第3页 / 共70页
资源描述:

《施工组织设计-软件工程 毕业设计 成绩管理系统》由会员分享,可在线阅读,更多相关《施工组织设计-软件工程 毕业设计 成绩管理系统(70页珍藏版)》请在装配图网上搜索。

1、 题目:基于.net的汽车租赁管理信息系统分析、设计与实现 成绩: 总计 大作业 67页 表格 22表 插图 56 目 录 第一章 成绩管理系统需求分析 1 1.导言 1 2.系统定义 2 3.应用环境 2 4.功能规格 5 5.性能需求 14 6.产品提交 16 7.实现约束 16 第二章 成绩管理系统概要设计 17 1.系统分析 17

2、 2. 界面设计 18 3. 体系结构 20 4. 数据模型 26 5. 模块 32 第三章 成绩管理系统详细设计 34 1.系统设计概述 34 2. 详细设计概述 34 3. 登录模块的详细设计(该模块可复用) 35 4. 复用的模块 39 5. 配置文件 40 第四章 成绩管理系统编码实现 45 1.编码格式规范 45 2.命名规范 45 3.声明规范 46 4.目录规范 47 第五章 成绩管理系统测试计划 48 1. 测试项目 48 2. 测试方法 61 第六章 部署运行维护 63 第七章 总结与展望 64 1.本程序的总结和展望 64 2.感

3、想 65 参考文献 66 第一章 成绩管理系统需求分析 1.导言 1.1 目的 该文档是关于用户对于成绩管理系统的功能和性能的要求,重点描述了成绩管理系统的功能需求,是概要设计阶段的重要输入。 本文档的预期读者是: · 设计人员; · 开发人员; · 项目管理人员; · 测试人员; · 用户。 1.2 范围 该文档是借助于当前系统的逻辑模型导出目标系统的逻辑模型的,解决整个项目系统的“做什么”的问题。在这里,没有涉及开发技术,而主要是通过建立模型的方式来描述用户的需求,为客户、用户、开发方等不同参与方提供一个交流的平台。 1.3 编写说明 JSP,Java S

4、erver Page(Java服务器页面)的缩写,一个脚本化的语言。 UML,Unified Modeling Language(统一建模语言)的缩写,是一个标准的建模语言。 1.4 术语定义 加权分数:权值*等价分数 2.系统定义 我们分别阐述一下项目的来源、背景,项目的用户特点和项目的目标。 2.1 项目来源及背景 本项目是为一家汽车租赁公司开发的汽车租赁管理系统,传统的汽车租赁管理系统在数据处理方面比较繁琐,管理人员需要花费很多的时间和精力去处理它。计算机的存储与查询功能不能满足于用户的基本需求而且租赁的基本信息管理的精确度也不够高出现了不少的漏洞,这也很浪费人力和时间

5、。为此汽车租赁公司希望有一个对车辆的基本信息、租赁结算、租还时间等进行了综合统计和管理,使顾客和管理人员能够更快的得到自己想要的信息。 为了把管理人员从繁琐的数据处理中解脱出来,使顾客更快捷的找到自己想租的车辆,我们开发了汽车租赁管理信息系统。管理人员通过这个管理系统对车辆信息、租赁信息、顾客信息进行系统的管理,而且顾客可以直接登陆系统查看所有车辆信息,也可以根据自己的需要搜索相关车辆的信息。 2.2 用户的特点 本系统的用户都是本地用户 “管理员”,他们是租赁公司的工作人员,对租赁业务很熟悉,可以完成汽车租赁、归还、结算等业务。 2.3 项目目标 本项目设定的目标如下: · 系

6、统能够提供友好的用户界面,使管理人员人员工作量最大限度减少; · 系统具有良好的运行效率,能够达到提高生产率的目的; · 系统应有良好的可扩充性,可以容易地加入其他系统的应用; · 平台的设计具有一定的超前性,灵活性,能够适应企业生产配置的变化; · 通过这个项目可以锻炼队伍,提高团队的开发能力和项目管理能力。 3.应用环境 管理端的功能提供“车辆管理”、“合同管理”、“租金管理”、“客户管理”等四大功能。它们的关系如图1-1所示、。 图1-1 汽车租赁管理系统流程图 3.1 系统运行的硬件环境 本系统的硬件环境如下: 客户机:普通PC · CPU:P41.8G

7、Hz以上 · 内存:256MB以上 · 分辨率:推荐使用1024×768像素 数据库服务器 · CPU:P42.0GHz · 内存:1GB以上 ·硬盘:80GB以上 图1-2 网络拓扑结构图 系统运行软件环境 本系统的软件环境如下: · 操作系统:UNIX/Linux/Windows2000或以上版本 · 数据库:SQL server 2000 · 开发工具包:JDK Version 1.5 4.功能规格 我们采用面向对象分析作为主要的系统建模方法,使用UML(Unified Modeling Language)作为建模语言。UML为建模活动提供了从不同角

8、度观察和展示系统的各种特征的方法。在UML中,从任何一个角度对系统所作的抽象都可能需要几种模型来描述,而这些来自不同角度的模型图最终组成了系统的映像。 用例描述角色(用户、外部系统以及系统处理)是如何与系统交互来完成工作的。用例模型提供了一个非常重要的方式来界定系统边界以及定义系统功能,同时,该模型将来可以派生出动态对象模型。 设计用例时,我们遵循下列步骤: 1)识别出系统的角色。角色可以是用户、外部系统,甚至是外部处理,通过某种途径与系统交互。重要的是着重从系统外部执行者的角度来描述系统需要提供哪些功能,并指明这些功能的执行者(角色)是谁。尽可能地确保所有角色都被完全识别出来。 2)

9、描述主要的用例。可以采取不断地问自已“这个角色究竟想过系统做什么?”来准确地描述用例。 3)重新审视每个用例,为它们下个详尽的定义。 4.1 角色定义 角色或者执行者指与系统产生交互的外部用户或者外部系统。 4.1.1 导师 导师是指在负责一个专业某个班级的一位老师,它可以管理多个班级。使用以下功能:“学期科目管理”、“学期学生管理”、“成绩录入”,“成绩查看”、“统计查看”。 管理用户 管理用户可以是教学管理部的人员,主要功能是管理端的功能提供“导师管理”、“部门管理”、“科目管理”、“学期管理”、“学年管理”、“专业学期激活”等六大功能。 对于这些管理,没有具体细分,有一个

10、人来完成。 4.1.3 数据库 数据库是一个与系统产生交互的外部系统,这个角色负责系统的数据查询、增加、删除和修改等操作。 4.2 系统主用例图 成绩管理系统可以分为两个主要的组成部分,一个是客户端子系统。一个是管理端子系统。客户端子系统功能主要是指导师通过登录招聘网站进行操作的功能,即应聘功能。管理端子系统功能是招聘公司的管理人员发布招聘职位,整理导师简历,面试等功能。系统的主用例如图1-4所示。 图1-3 系统的主用例图 4.3 客户端子系统 导师通过通过成绩系统对成绩进行管理。图1-4是它的活动图。 客户端的功能主要包括“学期科目管理”、“学期学生管理”、“成绩

11、录入”,“成绩查看”、“统计查看”。图1-5是它的用例图。 图1-4 客户端的活动图 图1-5 客户端的功能用例图 客户端管理的这些用例描述如下: 1.1:获取对班级的管理权限。 1.2:添加学期的课程。 1.3:添加学生。 1.4:成绩录入。 1.5:成绩查看。 4.3.1获取对班级的管理权限。 用例描述:获取对班级的管理权限,从而可以对班级进行管理; 执行者:导师; 前置条件:该专业学年已被激活; 后置条件:无 基本路径: a)选择院系 b)选择专业、班级、学期、学年 4.3.2添加学期的课程。

12、 用例描述:添加学期的课程; 执行者:导师; 前置条件:已获得管理权限、管理员端已将需要添加的课程添加入数据库; 后置条件:无 基本路径: a)选择院系 b)选择专业、学期、学年 4.3.3添加学生。 用例描述:添加学生。 执行者:导师; 前置条件:已获得管理权限 后置条件:无 基本路径: a)选择院系 b)选择专业、班级、学期、学年 4.3.4成绩录入。 用例描述:成绩录入。 执行者:导师; 前置条件:已获得管理权限、课程已添加、学生已添加; 后置条件:无 基本路径: a)选择院系 b)选择专业、学期、学年 4.3.5成绩查看。 用例描述

13、:成绩查看 执行者:导师; 前置条件:已获得管理权限、课程已添加、学生已添加、成绩以录入; 后置条件:无 基本路径: a)选择院系 b)选择专业、学期、学年 4.4 管理端子系统 导师通过通过成绩系统对成绩进行管理。图1-6是它的活动图。 管理端的功能提供“导师管理”、“部门管理”、“科目管理”、“学期管理”、“学年管理”、“专业学期激活”等六大功能。图1-7是它的用例图。 图1-6管理员的功能活动图 图1-7 管理端用例图 2.1导师管理 2.2部门管理 2.3学年管理 2.4学期管理 2.5管理课程 2.6专业学期激活 4.4

14、.1导师管理。 用例描述:添加添加导师 执行者:管理员; 前置条件:该专业学年已被激活; 后置条件:无 基本路径:无 4.4.2部门管理 用例描述:添加学校的部门; 执行者:管理员; 4.4.2.1院系管理 用例描述:添加学校的院系; 执行者:管理员; 前置条件:管理员登录系统; 后置条件:无 基本路径:无 4.4.2.2专业管理 用例描述:添加院系中的专业; 执行者:管理员; 前置条件:管理员登录系统、院系已经添加; 后置条件:无 基本路径:院系选择 4.4.3学年管理 用例描述:学年管理 执行者:管理员; 前置条件:管理员登录系统; 后置

15、条件:无 基本路径:无 4.4.4学期管理 用例描述:学期管理 执行者:管理员; 前置条件:管理员登录系统; 后置条件:无 基本路径:无 4.4.5管理课程 用例描述:管理课程 ,添加课程信息 执行者:管理员; 前置条件:管理员登录系统; 后置条件:无 基本路径:无 4.4.6专业学期激活 用例描述:专业学期激活,激活后才可使用 执行者:管理员; 前置条件:管理员登录系统、院系、专业、学期、学年等相关信息都已添加; 后置条件:无 基本路径: a)选择院系 b)选择专业、学期、学年 4.5 登录子系统 所有用户都要登录才能使用系统,管理员登

16、录后进入管理员界面,导师登录后进入导师的管理界面。 5.性能需求 本系统对于教师的管理权限有很好的限定,导师不能随便操作不属于他管理的专业班级。 但是在计算和统计成绩的时候,会比较慢,因为算法不是很好。 由于时间问题,目前系统只是完成了对表的增加操作。 5.1 界面需求 系统的界面要求如下。 1)页面内容:主题突出,站点定义、术语和行文格式统一、规范、明确、栏目、菜单设置和布局合理,传递的信息准确、及时。内容丰富,文字准确,语句通顺,专用术语规范,行文格式统一规范。 2)导航结构:页面具有明确的导航指示,且便于理解,方便用户使用。 3)技术环境:页面大小适当,能用各种常用浏览

17、器以不同分辨率浏览,无错误链接和空链接;采用CSS处理,控制字体大小和版面布局。 4)艺术风格:界面、版面形象清晰悦目、布局合理,字号大小适宜、字体选择合理,前后一致,美观大方,动与静搭配恰当,动静效果好;色彩和谐自然,与主题内容相协调。 5.2 响应时间需求 无论是客户端还是管理端,当用户登录,进行任何操作的时候,系统应该及时地进行反应,反应的时间在30秒以内。系统应能监测出各种非正常情况,如与设备的通信中断,无法连接数据库服务器等,以避免出现长时间等待甚至无响应。 在计算成绩时,请耐心等待······ 5.3 可靠性需求 系统应保证7×24小时内不宕机,保证15人可以同时在客户

18、端登录,此时系统能正常运行,正确提示相关内容。 5.4 开放性需求 系统应具有较强的灵活性,以适应将来功能扩展的需求。 5.5 可扩展性需求 还有很多功能可以添加:如: 1使用简便方法录入成绩; 2如果已有一个学期使用了改系统,那么再次使用时可以快速添加学生 3、即使是第一次使用,也有简便方法添加学生 4统计功能 5与基本信息系统链接获取学期的学生 6完善CURD操作 以上功能均可实现,时间有限,尚未完成 5.6 系统安全性需求 1应该使用过滤器(Filter)或拦截器,对非法进入页面进行拦截 2许多session对象使用后没有释放,很占资源,如果多人使用容易使系统

19、崩溃,真正使用时,必须释放。 6.产品提交 提交产品为: a)应用系统软件包; b)数据库中有一些测试是的数据 c)系统开发过程文档; d)系统使用、维护说明文档,提交方式为CD介质。 7.实现约束 系统的实现约束如下: a)操作系统为WindowsXP b)开发平台为:MyEclipse7.1 c)数据库为MySQL6.0 第二章 成绩管理系统概要设计 1.系统分析 本系统可以实现成绩的管理,导师可以通过次系统进行成绩的计算 客户端主要功能是“学期科目管理”、“学期学生管理”、“成绩录入”,“

20、成绩查看”、“统计查看”。 管理端的功能提供“导师管理”、“部门管理”、“科目管理”、“学期管理”、“学年管理”、“专业学期激活”等六大功能。 图2-1为客户端和管理端的组成构图。 图2-1 管理端客户端子系统 2. 界面设计 本系统的用户界面按功能分为客户端界面和管理端界面。 图2-2 登录页面 2.1 管理端界面设计 管理端的功能提供“导师管理”、“部门管理”、“科目管理”、“学期管理”、“学年管理”、“专业学期激活”等六大功能。 主要界面设计如下: ·登录界面:通过输入用户各和密码,并且选择权限(管理员)实现用

21、户登录,; ·管理首页:链接到六大功能 ·导师管理:包括“导师列表”、“添加导师”、“修改导师信息”、“增加导师” 和“删除导师”等页面; ·部门管理:(基本同上) ·科目管理:(基本同上) ·学期管理:(基本同上) ·学年管理:(基本同上) ·专业学期激活:激活选择页面 图2-3 管理员登录后页面 2.2 客户端界面设计 导师是指在负责一个专业某个班级的一位老师,它可以管理多个班级。使用以下功能:“学期科目管理”、“学期学生管理”、“成绩录入”,“成绩查看”、“统计查看”。 主要界面设计如下: ·登录界面:通过输入用户各和密码,并且选择权限(教师

22、)实现用户登录,; ·管理首页:链接到五大大功能 ·学期科目管理: ·学期学生管理: ·成绩录入 ·成绩查看: ·统计查看: 图2-4 导师登录后页面 3. 体系结构 系统的总体结构设计遵循如下原则。 1)系统应具有良好的适应性:能适应用户对系统的软件环境、管理内容、模式和界面的要求; 2)系统应具有可靠性:采用成熟的技术方法和软件开发平台,以保证系统在以后的实际应用中安全、可靠; 3)系统应具有较好的安全性:应提高安全机制和用户权限限制机制的完善程度,确保数据的受限访问; 4)系统应具有良好的可维护性:系统应易于维护、安装; 5)系统应具有良好的可扩展性

23、:系统应适应未来信息化建设的要求,能方便地进行功能扩展,以建立完善的信息集成管理体系。 本系统采用体系结构,struct是一个基于模型(Model)一视图(View)一控制器(Controller),即MVC模式的应用架构的开源框架。 3.1 体系结构 目前软件项目中有很多体系结构,其中struct是比较流行的一种。 3.1.1 struct体系结构 对于开发Web应用,要从头设计并开发出一个可靠、稳定的框架不是一件容易的事情。随着Web开发技术的日趋成熟,在Web开发领域出现了一些现成的优秀的框架、开发者可以直接使用它们,struct就是一个很好的框架结构,它是在JSP Model

24、2基础上实现的一个MVC框架,在struct框架在模型由实现业务逻辑的JavaBean或者EJB组件构成,控制器由ActionServlet和Action来实现,视图由一组JSP文件组成,图2-5显示了Struct实现的MVC框架。 同时只得一题的是,使用的SwitchAction,是程序模块化,更易维护和后期管理。 图2-5 管理端的页面流程 图2-6 客户端的页面流程 ·视图,就是一组JSP文件,这些JSP文件没有业务逻辑,也没有模型信息,只有标签,这些标签可以是标准的JSP标签或者是客户化标签,如struct标签库的标签。此外,通常将struct框架中的Action

25、Form Bean也划为视图模块,ActionForm Bean是一种JavaBean,除了具有一些JavaBean的常规方法外,还包含了一些特殊的方法,用于验证HTML表单数据以及将其属性重新设置为默认值。Struct框架利用ActionForm Bean来进行视图和控制器之间表单数据的传递。Strcut框架将用户输入的表单数据保存在ActionForm Bean中,将它传递给控制器,控制器可以对ActionForm Bean中的数据进行修改,JSP文件使用struct标签读取修改后的ActionForm Bean的信息,然后重新设置HTML表单。 控制器ActionServlet 视图

26、 JSP Struct-config.xml 模型 JavaBean EJB Action Action Action 浏览器 Web 服务器 图2-7 struct实现的MVC框架 ·控制器,控制器由ActionServlet类和Action类实现,ActionServlet类是struct框架中的核心组件,是这个MVC的中央控制器的角色。ActionServlet主要负责接收HTTP请求的信息,根据配置文件struct-config.xml的配置信息,将请求转发给适当的Action对象,如果该Action对象不存在,ActionServlet会先创建这个Ac

27、tion对象.Action类负责调用模型的方法,更新模型的状态,并帮助控制应用程序的流程,对于小型简单的应用,Action类本身也可以完成一些实际的业务逻辑。 ·模型,模型表示应用程序的状态和业务逻辑,业务逻辑常常由JavaBean或者EJB组件实现。 如果在Web应用开发中套用现成的struct框架,就可以简化每个开发阶段的工作,开发人员可以更加有针对性地分析应用需求,不必重新设计框架,只需在struct框架的基础上,设计MVC各个模块包含的具体组件,在编码过程中,可以充分利用struct提供的各种实用类和标签库,简化编码工作。 Struct框架可以方便迅速地将一个复杂的应用划分成模型

28、、视图和控制器组件,而struct的配置文件struct-config.xml可以灵活地组装这些组件,以简化开发过程。 3.1.2 系统体系结构 根据系统分析结果,该系统从结构上应满足: ·基于游览器进行显示以方便用户使用; ·采用MVC的三层体系结构,分化各个功能组件; ·采用JDBC技术与数据库通信以便于数据库的转换; ·采用标签技术完成动态页面的简单逻辑。 本系统的体系结构如图2-6所示,它基本遵循了struct体系的MVC框架规范。 视图(V)层:用户界面(浏览器) HTML,CSS,DHTML,JavaScript,XML 视图(V)层:服务器端脚本 Conn

29、ects UI to Business Objects, Java Server Pages,Java Servlets 控制(C)层:分布式组件 JavaBean 图2-8 系统的体系结构 其中: ·表示层,用于与用户进行交互并显示结果。包括所有的JSP,提供用户界面,接受用户输入,还包括相应的ActionFrom Bean,用来存放表单数据,并进行表单数据验证; ·控制层,包括所有的Action类,它完成三项任务,一是进行业务逻辑验证,二是调用模型组件,三是决定将合适的视图组件返回给用户; ·模型,包括进行逻辑处理的JavaBean等,数据库采用ODBC技术以提供数

30、据库的可移植性。 1)客户层:用于与企业信息系统的用户进行交互以及显示根据特定业务规则进行计算后的结果。本系统将完全采用基于Web的(B/S架构)客户端,即用户可以直接通过浏览器来访问和使用本系统。 2)中间层:这相当于三层标准架构中的Web应用服务层,支持诸如响应客户请求以及查询等功能。并且由中间层进行逻辑处理,再将处理的结果反馈给客户或者发送到数据库中。 3)服务层:主要是数据库系统,这里的数据库系统主要是关系数据库系统(RDMS)。 3.2 系统进行环境 下面讲述系统运行的网络结构,硬件、软件环境。 3.2.1 网络结构 主要是希望在局域网内使用。 3.2.

31、2 硬件环境 本系统的硬件环境如下。 1)客户机:普通PC ·CPU:P41.8GHz以上 ·内存:256MB以上 ·能够运行IE5.0以上或者Netscape4.0以上版本的机器 ·分辨率:推荐使用1024×768像素 2)Web服务器 ·CPU:P42.0GHz ·内存:1GB以上 ·硬盘:80GB以上 ·网卡:KMb/s速度网卡 3)数据库服务器 ·CPU:P42.0GHz ·内存:1GB以上 ·硬盘:80GB以上 32.3 软件环境 本系统的软件环境如下: ·操作系统:windows XP ·数据库:MySQL6.0 ·开发工具包:JDK Ve

32、rsion1.5 ·开发环境:Myeclipse7.1 ·Web服务器:Tomcat6.02 ·浏览器:IE5.0以上 1) 数据库及操作系统:使用免费的开源项目MySQL 2)Web服务软件:同样使用免费的开源项目Tomcat 4. 数据模型 本系统的数据模型设计内容主要是进行数据库的设计。 4.1 数据库的概念结构模型设计 概念设计用来反映现实世界中的实体、属性和它们之间的关系等的原始数据形式,建立数据库的每一幅用户视图。图2-8是系统E-R图。 客户端主要功能是“学期科目管理”、“学期学生管理”、“成绩录入”,“成绩查看”、“统计查看”。 管理端的功能提供“导师

33、管理”、“部门管理”、“科目管理”、“学期管理”、“学年管理”、“专业学期激活”等六大功能。它们的关系如图1-1所示、。 4.2 数据库的逻辑结构模型设计 数据库的逻辑设计是将各局部的E-R图进行分解、合并后重新组织起来形成数据库全局逻辑结构,包括所确定的关键字和属性、重新确定的记录结构、所建立的各个数据之间的相互关系。根据本系统需求分析,系统管理员的数据库包括了院系信息、专业信息、学年信息、学期信息、导师信息、课程信息,导师的数据库有学生,注册专业学期管理信息,专业学期课程、学生成绩。 4.2.1登录模块包括的库表: 登录表 (scoreLogin) 4.2.2管理员模块包括的库表

34、: 院系表 (collage) 专业表(professional) 学期表(semester) 学年表(schoolyear) 课程表(course) 登录表 (scoreLogin) 4.2.3院系选择模块 院系表 (collage) 专业表(professional) 学期表(semester) 学年表(schoolyear) 4.2.4导师模块 专业学期成绩表(semesterResults) 专业学期学生表(semesterStudent) 专业学期教师表(semesterTeacher) 专业学期表(proSemester) 图2-9数据

35、库ER图 ***系统数据库设计物理模型*** ****登录表 (scoreLogin)----------------1.1 字段名 字段代码 字段类型 主(外)键 是否为空 备注(代码字典表) 用户登录ID  sl_num char(6) Y N 用户姓名 sl_name char(10) N N 用户密码 sl_pass char(16) N N 权限 sl_permession Integer N N 2为老师3为管理员 ****院系表 (collage)------------------------

36、1.2 字段名 字段代码 字段类型 主(外)键 是否为空 备注(代码字典表) 院系编号 coll_id Ingeter Y N 自动增长 院系名 coll_name varchar(30) Y N ****专业表(professional)--------------------1.3 字段名 字段代码 字段类型 主外键 是否为空 备注(代码字典表) 专业编号 pro_id Integer Y N 自动增长 专业名 pro_name varchar N N 院系编号 coll_id Integer N

37、N ****学期表(semester)--------------------1.4 字段名 字段代码 字段类型 主(外)键 是否为空 备注(代码字典表) 学期Id semesterId Integer Y N 自动增长 学期  semester char(26) N N 填写时有固定的格式 ****学年表(schoolyear)---------------1.5 字段名 字段代码 字段类型 主(外)键 是否为空 自动增长 学年Id  schoolyearId Integer Y N 填写时有固定的格式 学

38、年  schoolyear char(4) N N 填写时有固定的格式 ****课程表(course)---------------------1.6 字段名 字段代码 字段类型 主(外)键 是否为空 备注(代码字典表) 课程号  courseId char(6) Y N 课程名 courseName char(4) N N 权值 courseRight Integer N N 计算等价分数时使用 课程类型 courseType Integer N N 统计优秀率时,PF类课程不列入计算 ****专业学期

39、表(proSemester)---------------1.7 字段名 字段代码 字段类型 主(外)键 是否为空 备注(代码字典表) 专业学期ID  proSemId Integer Y N 通过激活操作产生,产生后才可使用 院系Id proSemCollName Integer Y N 专业Id proSemProName Integer Y N 学期Id proSemSemesterId Integer Y N 学年Id proSemSchoolyearId Integer Y N ****专业

40、学期教师表(semesterTeacher)-----------------------1.8 字段名 字段代码 字段类型 主(外)键 是否为空 备注(代码字典表) 专业学期教师ID  semTea_Id Integer Y N 自动增长 专业学期Id semTea_ProSem_Id Integer Y N 教师的Id semTea_TeacherNum char(6) Y N 管理的班级 semTea_Class char(4) N N ****专业学期课程表(semesterCourse)-----------

41、---------------1.9 字段名 字段代码 字段类型 主(外)键 是否为空 备注(代码字典表) 专业学期Id semCour_ProSem_Id Integer Y N 课程号 semCour_CourseId char(6) Y N ****专业学期学生表(semesterStudent)--------------------------1.10 字段名 字段代码 字段类型 主(外)键 是否为空 备注(代码字典表) 专业学期Id  semStu_proSem_Id Integer Y N 学生学号 se

42、mStu_stuNum char(9) Y N 学生姓名 semStu_stuName varchar(8) N N 学生班级 semStu_stuClass char(4) N N 学生状态 semStu_stuSta Integer N N ****专业学期成绩表(semesterResults)----------------------1.11 字段名 字段代码 字段类型 主(外)键 是否为空 备注(代码字典表) 专业学期教师ID semRes_SemTea_Id Integer

43、Y N 此功能是为了老师将来能修改成绩,但是目前程序插入数据库的是专业学期Id 专业学期Id semRes_proSem_Id Integer Y N 学生班级 semRes_StuClass char(4) N N 学生学号 semRes_StuNum char(9) Y N 课程号 semRes_CourseId char char(6) Y N 学生成绩 semRes_semResScore char(1) N N 5. 模块 系统分为4个模块: 5.1登录模块 5.2管理员模块 5.3院系选择模块 5

44、.4导师模块 此项目为逆向工程,由于代码量太多,页面太多,下面只给出登录模块的设计。 5.1登录模块 5.1.1表示层设计 根据上述功能介绍,总结出客户端的页面设计如表2-1所列。 表2-1 登录模块的页面设计 界面 JSP 功能描述 主页面 lonin.jsp 客户端的主页面 5.1.2 控制层 控制层主要是设计Action组件,Action负责单位事件的流程控制,Action映射决定了Action与其他Web组件之间的关联关系。根据权限选择管理员界面还是导师页面。 表2-5 客户端应用的Action映射 事件 Action 入口 ActionForm

45、 出口 登录 PreLoginAction LoginActon login.jsp login.jsp LoginForm admin/main/main.jsp Teacher/teacher/main.jsp 5.1.3 模型层 在struct框架中,模型组件负责完成业务逻辑,模型组件可以是JavaBean、EJB和实用类。客户端的业务逻辑主要是完成数据库的操作,提交用户的简历信息和问卷回答信息到数据库中。具体的模型组件如表2-6所示。 表2-6 客户端的模型组件 模型组件 描述 loginValue 登人员这信息

46、 第三章 成绩管理系统详细设计 1.系统设计概述 根据《汽车租赁管理信息系统》的概要设计,本系统按照功能分解,如下图。 图3-1 模块设计 2. 详细设计概述 由于本系统采用了基于struct体系结构的设计,即MVC的三层设计模式,并采用面向对象的Java语言以及JSP的脚本语言实现。在整个开发过程中,尽可能采用复用的原则,例如采用标签库,统一数据库的基本操作,统一结果显示等。 本文档的详细设计主要地按照struct的MVC的三个层次分别编制视图层、控制层和模型层模块代码 此项

47、目为逆向工程,由于代码量太多,页面太多,下面只给出登录模块的设计。 3. 登录模块的详细设计(该模块可复用) 登录模块主要实现登录验证功能,登录模块的struct视图层、控制层和模型层三个层次的模块如表3-2所示。 表3-2 登陆模块的三层模块 视图 控制器 模型 JSP组件 ActionFormBean 客户标签 Login LoginForm Struct Html标签 PreLoginAction LoginAction Login’Value 3.1 视图层 视图层主要实现表示层的功能,视图层包括JSP组件、Form组件以及标签库等。 3.1.

48、1 JSP组件 登录模块1个jsp页面 3.1.2 Form组件 其他Form伪代码详见文件WSZP-PD-DD-Position-ViewForm.doc,它有关于每个Form的伪代码的详细描述。 package com.sxzlc.score.login.struts.form; import javax.servlet.http.HttpServletRequest; import org.apache.struts.action.ActionErrors; import org.apache.struts.action.ActionForm; import org.a

49、pache.struts.action.ActionMapping; /** * MyEclipse Struts * Creation date: 06-02-2009 * * XDoclet definition: * @struts.form name="loginForm" */ public class LoginForm extends ActionForm { private String num; private String pass; private Integer permession; private String n

50、ame; public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) { // TODO Auto-generated method stub return null; } public void reset(ActionMapping mapping, HttpServletRequest request) { // TODO Auto-generated method stub } public String getNum() { re

51、turn num; } public void setNum(String num) { this.num = num; } public String getPass() { return pass; } public void setPass(String pass) { this.pass = pass; } public Integer getPermession() { return permession; } public void setPermession(Integer permession) { th

52、is.permession = permession; } public String getName() { return name; } public void setName(String name) { this.name = name; } } 3.1.3标签库 标签库包括Struct Html标签、Struct Bean标签、Struct Logic标签 3.2 控制层 职位发布控制层共有2个Action文件,一个是前发发Action 一个是后分发Action 下面是PreLoginAction的伪代码描述。 package com.s

53、xzlc.score.login.struts.action; import java.io.UnsupportedEncodingException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.Acti

54、onForward; import org.apache.struts.action.ActionMapping; /** * MyEclipse Struts * Creation date: 06-03-2009 * * XDoclet definition: * @struts.action parameter="method" validate="true" * @struts.action-forward name="login" path="/login/login.jsp" */ public class PreLoginAction e

55、xtends Action { public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { try { request.setCharacterEncoding("GBK"); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } return

56、mapping.findForward("login"); } } 3.3 模型层 职位管理模型层1个组件,下面是JobBean的伪代码描述。 package com.sxzlc.score.login.struts.action; /** * MyEclipse Struts * Creation date: 06-02-2009 * * XDoclet definition: * @struts.action path="/login" name="loginForm" input="/login/login.jsp" scope="request"

57、validate="true" */ public class LoginAction extends Action { private ILoginDao loginDao; public ILoginDao getLoginDao() { return loginDao; } public void setLoginDao(ILoginDao loginDao) { this.loginDao = loginDao; } public ActionForward execute(ActionMapping mapping, ActionFor

58、m form, HttpServletRequest request, HttpServletResponse response){ LoginForm loginForm = (LoginForm) form;// TODO Auto-generated method stub String num = loginForm.getNum(); String pass = loginForm.getPass(); int permession = loginForm.getPermession(); // System.out.println(num

59、+"-----"+pass+"-----"+permession+"--------"); try { if(loginDao.readLogin(num, pass, permession)){ // System.out.println("登录成功"); request.getSession().setAttribute("LoginId",num); if(permession==2) return mapping.findForward("teacher"); else if(perme

60、ssion==3) return mapping.findForward("admin"); else return mapping.getInputForward(); } else // System.out.println("登录失败"); return mapping.getInputForward(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace();

61、 return mapping.getInputForward(); } } 4. 复用的模块 许多的系统都需要登录,同时对数据库操作。 所有的模块都需要进行数据库的操作,它们的代码结构大体都是如下结构的 登录表scorelogin 有两个用途, 一个是登录―――――体现登录模块复用; 另一个是教师信息――――体现对数据操作代码的复用; 登录操作 登录时使用 public class LoginDaoImpl extends HibernateDaoSupport implements ILoginDao { public boolean re

62、adLogin(String num, String pass, int permession) throws Exception { boolean b=false; Session session = this.getSession(); Criteria cri = session.createCriteria(LoginValue.class); cri.add(Expression.eq("slNum", num)); cri.add(Expression.eq("slPass", pass)); cri.add(Expression.

63、eq("slPermession", permession)); List list =cri.list(); if(!list.isEmpty()) b=true; session.beginTransaction().commit(); session.close(); return b; } public void alterPassword(String id, String newPassword) throws Exception { // TODO Auto-generated method stub } } 数据库

64、操作 5. 配置文件 1.使用的是j2EE 所以必有web.xml 2.使用使用Struts技术,并且使用分发Action技术,即SwitchAction,所以struts的 配 置文件有5个. struts-config.xml struts-config-admin.xml struts-config-departmentchoose.xml struts-config-login.xml struts-config-teacher.xml 3.使用Spring技术,所以有文件applicationContext.xml 5.1 web.xml配置文件

65、 下面讲述web.xml配置文件的配置步骤和范围。 contextConfigLocation /WEB-INF/classes/applicationContext.xml context org.springframework.web.cont

66、ext.ContextLoaderServlet 1 CharsetConvertFilter com.city.sxzlc.filter.CharsetConvertFilter CharsetConvertFilter /* AuthenticationC

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