软件工程课程设计在线答疑系统样本.doc
《软件工程课程设计在线答疑系统样本.doc》由会员分享,可在线阅读,更多相关《软件工程课程设计在线答疑系统样本.doc(36页珍藏版)》请在咨信网上搜索。
在线答疑系统 项目名称: 在线答疑系统 班 级: 学 号: 姓 名: 小构成员: 6月12日 目录 1系统分析……………………………………………………………………………………………………………… 1.1需求分析………………………………………………………………………………………………………… 1.1.1 功能性需求分析………………………………………………………………………………………… 1.1.2 非功能性需求分析…………………………………………………………………………………… 1.1.3 系统流程图……………………………………………………………………………………………….. 1.1.4 系统数据流图…………………………………………………………………………………………… 1.2可行性分析……………………………………………………………………………………………….. 2系统总体设计…………………………………………………………………………………………………… 2.1 项目规划…………………………………………………………………………………………………… 2.2 系统总体构造……………………………………………………………………………………………… 2.3 系统功能模块……………………………………………………………………………………………… 2.3.1学生模块功能定义……………………………………………………………………… 2.3.2 教师模块功能定义……………………………………………………………………… 2.3.3 管理员功能模块定义……………………………………………………………………… 3数据库设计………………………………………………………………………………… 3.1 数据库分析………………………………………………………………………………… 3.2 项目E-R图………………………………………………………………………………… 3.3 数据库表设计………………………………………………………………………………… 4系统详细设计与实现………………………………………………………………………………… 4.1 界面设计………………………………………………………………………………… 4.2 系统分层实现………………………………………………………………………………… 4.2.1 体现层设计………………………………………………………………………………… 4.2.2 控制层设计………………………………………………………………………………… 4.3 数据连接与操作实现………………………………………………………………………………… 4.3.1 数据源配备………………………………………………………………………………… 4.3.2 数据库操作实现………………………………………………………………………………… 4.4 各个功能模块设计与实现 4.4.1 顾客登录和注册………………………………………………………………………………… 4.4.2 学生顾客模块………………………………………………………………………………… 4.4.3 教师顾客模块………………………………………………………………………………… 4.4.4 管理员模块………………………………………………………………………………… 5 系统测试………………………………………………………………………………… 5.1 测试目………………………………………………………………………………… 5.2 系统核心某些测试分析………………………………………………………………………………… 5.2.1 注册顾客名唯一性验证 5.2.2 分页实现………………………………………………………………………………… 6结论………………………………………………………………………………… 6.1 系统功能总结………………………………………………………………………………… 6.2 系统特色之处………………………………………………………………………………… 6.3体会与总结………………………………………………………………………………… 7小组分工………………………………………………………………………………… 第一章 系统分析 1.1需求分析 在开发任何一种系统之前,进行必须系统分析是非常有必要,重要是依照对客户需求和本系统某些特点和模块分析等来拟定如何有效地进行实际开发。需求分析是软件设计一种重要构成某些。为了拟定系统目的,应在本阶段对系统应用状况进行全面调查 1.1.1 功能性需求分析 本系统包括学生、教师和后台管理员这3类顾客,其各顾客详细功能如下。 l 学生顾客功能 • 注册和登录,学生不但可以很以便地进行顾客注册,也可以登录在线答疑系统。 • 资料修改,注册后学生可以修改自己注册资料。 • 查看提问,学生发起问题后,可以查看该问题回答状况。 • 申请课程,如果学生还不能修某课程,可提交该课程申请表。 • 查询课程,搜索自己感兴趣课程,支持模糊检索。 • 查看参加提问,学生不但可以对自己参加课程下问题进行讨论,并且还可以查看这些问题。 l 教师顾客功能 • 顾客登录,教师可自由地登录在线答疑系统。 • 资料修改,教师可以修改自己资料。 • 查看未回答提问,教师登录后,可以查看待回答问题列表。 • 查看已回答提问,对于已经回答问题,教师不但可查看,并且还可以继续回答解说。 • 添加学生,教师可以将学生添加到自己所专家某门课程。 • 删除学生,教师可以删除自己所教课程下学生。 l 管理员功能 • 课程管理,管理员可以对课程信息进行维护。 • 内容管理,管理员可以对提问内容和回答内容进行管理。 • 顾客管理,管理员可以对学生顾客和教师顾客进行管理。 • 管理员管理,重要是超级管理员对普通管理员管理。 1.1.2 非功能性需求分析 (1)系统安全性需求 在软件使用方面,学生顾客和教师顾客通过系统主界面登录进入系统,但必要通过必要身份验证。管理员则通过专门登录页面来进入系统,一旦管理员登录成功就可以对系统进行常规管理。顾客登录角色不同,从系统获得操作权限也不同。 (2)系统开发运营环境需求 JDK:作为整个Java核心包括了Java基本类库、运营环境和Java工具,是 Java 语言软件开发工具包。 MyEclipse:是一种非常杰出Java开发工具,对各种开源产品支持非常好。它不但功能非常强大,并且具备非常广泛支持性能。 Tomcat服务器:合用于中小型系统开发web应用服务器,开放源代码且免费。其性能稳定、技术先进,因而不但博得了Java 开发人员爱慕,并且也得到了某些软件开发商必定,是当今较流行Web 应用服务器。 MySQL数据库:是当前小型应用开发中比较流行数据库,且从MySQL5.0版本开始支持事务,保证了数据库完整性和安全性。 1.1.3 系统流程图 顾客进入系统主界面后,会显示所有课程列表,成功登录后才干查看课程提问以及进行其他操作。如果是学生顾客,则可以查看个人资料、自己课程、提问、参加问题和申请解决状况,还可以进行课程申请,修改资料和登录密码。如果是教师顾客,则可以查看个人资料、自己课程和申请列表,并能对学生进行管理(添加或删除学生),修改资料和登录密码,系统会提示教师未回答问题和未解决申请个数。 管理员经由后台登录界面进入系统,成功地登录后来,系统会依照管理员角色(超级管理员和普通管理员)不同来显示相应操作权限列表。管理员可以对课程、提问和回答、学生和教师顾客以及管理员顾客进行管理。 本系统流程图如下页图1.1所示 在线答疑系统 系统首页 后台登录界面 顾客登录 否 否 顾客登录 登录成功? 登录成功? 是 是 教师顾客 学生顾客 管理员 修改资料 管理员顾客管理 学生和教师顾客管理 提问和回答管理 课程管理 查看教师课程 添加和删除学生 回答问题和解决申请 查看申请解决状况 修改资料 搜索课程和申请课程 查看自己课程和提问 提出问题和参加讨论 图1.1 系统流程图 1.1.4 系统数据流图 本系统数据流设计重要涉及在线答疑信息管理、课程管理和顾客管理等实现,其相应数据流图分别如下图1.2所示。 图1.2 系统顶层数据流图 管理员管理某些重要实现了课程管理、提问和回答管理以及学生和教师顾客管理,其数据流图如图1.3所示。 图1.3 第一层数据流图—管理员管理 教师管理某些重要实现了学生管理、回答问题、解决申请以及查看课程信息,其数据流图如图1.4所示。 图1.4 第一层数据流图—教师管理 学生管理某些重要实现了搜索课程和申请课程、提出问题和参加讨论、查看自己课程和提问以及产看申请解决状况,其数据流图如图1.5所示。 图1.5 第一层数据流图—学生管理 1.2可行性分析 可行性分析(Feasibility Analysis),即可行性研究,它是针对新系统开发是不是具备必也许性和必要性并基于对系统调查,对新系统开发从技术、社会和经济等方面开展分析和研究工作,以避免投资失误,从而保障新系统开发成功。可行性研究目的是用最小代价在尽量短时间内拟定问题与否可以得到解决。其实质上是要进行一次大大压缩简化了系统分析和设计过程,即以较抽象方式在较高层次上进行系统分析和设计过程。 1.2.1 技术可行性分析 技术可行性不但要考虑使用既有技术可否完毕系统开发,并且还要考虑软件和硬件配备可否可以满足开发需要等。 本系统开发是一种较具代表性Java Web项目,采用Java程序语言,如今计算机硬件配备已经完全可以满足开发过程需求。从软件方面来看,系统使用Java Web技术进行开发,前端界面使用是DIV+CSS技术,所需软件环境如下:JDK、MyEclipse、Web应用服务器以及MySQL数据库。这些软件都已有了功能全面、稳定版本,故软件开发平台成熟可行,它们不但可靠性高并且稳定,因而完全可以满足系统需求。 1.2.2 经济可行性分析 系统所需要硬件环境,即计算机及其有关硬件,从市场上可以很容易地购买到。所需软件环境(JDK+MyEclipse+Tomcat+MySQL)可以从网上免费下载,从而减少了开发成本。本系统重要开发与维护成本也不会导致太大经济压力。此系统正式投入使用后,学校教学质量可以得到大幅度提高,答疑工作也能更顺利开展,并且师生之间在线互动也可以更加以便地进行。同步对于学校学生来说,有问题可以及时登入系统进行提问,只要是该课程下学生顾客都可以参加讨论。对于教师来说,可以很以便地查看学生提出问题并回答,理解学生对知识掌握限度,从而把握教学重点,这样学校教学质量便得到了提高。 1.2.3 操作可行性分析 本系统重要是为了以便教师与学生之间答疑工作开展,提高学生学习效率。学生将所学习课程疑问通过系统呈现给教师,待教师解答后,可查看到问题回答。 第二章 系统总体设计 总体设计,也可以称为概要设计或者初步设计,其基本目便是回答“概括地说,应当如何实现系统”这个问题。通过这个阶段,将划分出构成系统物理元素(数据库、程序、文献、文档和人工过程等),然而所有物理元素仍旧处在黑盒子级,这些黑盒子里详细内容将在之后进行详细设计。总体设计阶段此外一项重要任务是拟定系统中每一种程序由哪些模块构成以及这些模块互相之间关系,即设计软件构造。 2.1 项目规划 总体规划:在线答疑系统是一种非常典型Java Web项目,它由系统前台展示模块和后台数据管理模块等两大模块构成。 前台展示模块重要提供身份登录验证,提出问题与回答、参加讨论,查看课程和提问,申请课程和解决申请、修改资料以及添加/删除学生等功能模块。 后台管理模块:该模块重要进行数据库管理和维护,包括对学生和教师顾客管理、课程管理、提问和回答管理、管理员顾客管理等。 2.2 系统总体构造 系统总体构造是系统总体设计核心某些,通过系统构造图可以很清晰地看出整个系统构造。依照各个构造模块分别进行分析,从而为将来设计和实现打下良好基本。依照前面对系统所做出分析,本系统总体上涉及3类顾客,即学生顾客、教师顾客和后台管理员顾客。系统总体构造如图2.1所示。 图2.1 系统构造图 2.3 系统功能模块 在线答疑系统根据顾客类别共提成三个模块:学生模块、教师模块和管理员模块。 2.3.1学生模块功能定义 表2.1 学生模块功能列表 功能名称 定义 学生注册 用于注册学生信息 学生登录 用于学生登录系统身份验证 修改资料 用于学生修改个人资料 搜索课程 用于学生搜索所有可提问课程 申请课程 用于学生申请感兴趣课程 提问问题 用于学生提出对课程内浮现疑问 参加讨论 顾客学生之间针对问题进行交流讨论 我提问 用于学生查看自己所提出问题回答状况 我课程 用于学生查看自己已经申请课程 我申请 用于学生查看自己申请解决状况 退出 学生退出系统登录 2.3.2 教师模块功能定义 表2.2 教师模块功能列表 功能名称 定义 教师注册 用于注册教师信息 教师登录 用于教师登录系统身份验证 修改资料 用于教师修改个人资料 回答问题 用于教师回答学生所提出问题 申请解决 用于教师解决学生课程申请 添加学生 用于教师为自己课程添加学生 删除学生 用于教师删除自己课程下学生 查看课程 用于教师查看自己课程 退出 教师退出系统登录 2.3.3 管理员功能模块定义 定义 表2.3 管理员模块功能列表 功能名称 定义 管理员登录 用于管理员登录系统身份验证 课程管理 用于对课程信息进行添加、修改和删除 提问管理 用于问题信息维护,对过时答疑信息删除 回答管理 用于回答信息维护,对不良回答信息删除 学生管理 用于对学生顾客信息进行修改和删除 教师管理 用于教师顾客信息修改和删除 管理员管理 用于管理顾客信息修改、添加和删除 退出 管理员退出系统登录 第三章 数据库设计 数据库技术是管理信息资源最佳方式。数据库设计是针对一种特定应用环境构造出最优数据库模式来创立数据库及其应用系统,从而实现对数据有效存储,以满足顾客对信息和解决规定。数据库构造设计将直接影响到应用系统效率和实现效果。因而,合理数据库设计不但可以提高数据存储效率,并且可以有效保证数据完整性和一致性。 拟定了系统需要开发功能之后,接下来应当进行数据库设计工作,分析该系统各个实体之间关系,做好数据库设计对后期开发有着非常重要作用。 3.1 数据库分析 由于本系统规模不是很大,因而选用MySQL数据库,该数据库为开源免费产品,可以直接通过网上下载得到,从而大大节约了开发成本。MySQL数据库是现今小型应用开发中比较流行数据库,且从其5.0版本开始支持事务,可以保证数据完整性和安全性。 3.2 项目E-R图 在线答疑系统作为学生和教师之间针对于学生所提出问题进行沟通和交流桥梁,所包括实体有提问信息、回答信息、课程、顾客、申请信息和关系。下面将依次简介各个实体所相应E-R图。 l 顾客E-R图重要涉及顾客编号、顾客名、密码和电子邮件等信息,详细如图3.1所示。 图3.1 顾客E-R图 l 课程实体包括课程名、课程编号和课程描述,详细如下图3.2所示。 图3.2 课程E-R图 l 提问信息实体重要涉及提问编号、提问顾客ID、提问标题等信息,详细如图3.3所示。 图3.3 提问信息E-R图 l 回答信息实体重要涉及所回答问题编号、回答标题和内容等信息,其E-R图如图3.4所示。 图3.4 回答信息E-R图 l 申请信息实体重要包括申请人编号、所申请课程编号、与否解决以及申请理由等某些标志信息,其E-R图如图3.5所示。 图3.5 申请信息E-R图 l 学生和课程之间存在学习关系,该关系记录了学生ID和课程ID信息,详细如图3.6所示。 图3.6 关系信息E-R图 l 实体之间存在着一定关系,如一种教师能专家多门课程,并且一门课程也能被各种学生学习,详细关系如图3.7所示。 3.3 数据库表设计 系统数据库设计好坏不但对此后网站连接数据库速度有着非常重要影响,并且也对查询更新复杂度有着非常重要影响。本节简介对本系统数据库表进行设计,是在完毕系统功能分析基本上依照系统需求目的而进行设计。依照前面所简介实体所拥有属性以及实体之间关系描述,下面将简介数据库中这些实体相应表设计,分别是课程表、提问表、回答表、顾客表、申请表和关系表,详细设计如下所示。 (1)顾客表:重要包括顾客名、顾客ID、登录密码、电子邮件和其他有关信息,表中各字段详细信息如下表3.1所示。 表3.1 顾客信息表DY_User 字段名称 数据类型 字段大小 与否主/外键 字段阐明 备注 UID int N/A 主键 顾客编号 非空 UName varchar 20 否 顾客名 唯一且非空 UPwd varchar 20 否 登录密码 非空 UGender char 2 否 顾客性别 无 UEmail varchar 40 否 电子邮件 无 URole int N/A 否 顾客角色 默认值 UHead varchar 50 否 图像URL 默认值 URegDate date N/A 否 注册日期 无 ULastLogin datetime N/A 否 最后登录时间 无 ULastEmit datetime N/A 否 最后刊登时间 无 UPermit int N/A 否 顾客权限 默认值 (2)课程信息表:包括课程名、课程ID以及课程描述信息,表中各字段详细信息如下表3.2所 表3.2 课程信息表DY_Topic_Group 字段名称 数据类型 字段大小 与否主/外键 字段阐明 备注 TGID int N/A 主键 课程编号 非空 TGName varchar 50 否 课程名 非空 TDetail varchar 200 否 课程描述 非空 (3)提问信息表:该表重要涉及提问标题、内容和所属课程等提问信息,表中各字段详细信息如下表3.3所示。 表3.3 提问信息表DY_Topic 字段名称 数据类型 字段大小 与否主/外键 字段阐明 备注 TID int N/A 主键 提问编号 非空 UID int N/A 外键 提问人ID 无 TGID int N/A 外键 所属课程ID 无 TTitle varchar 200 否 提问标题 非空 TContent text N/A 否 提问内容 非空 TDate datetime N/A 否 提问时间 非空 TReadCount int N/A 否 阅读次数 默认值 (4)回答信息表:该表重要包括所回答问题ID、回答标题、回答ID以及回答内容等信息,各字段详细信息如下表3.4所示。 表3.4 回答信息表DY_Revert 字段名称 数据类型 字段大小 与否主/外键 字段阐明 备注 RID int N/A 主键 回答编号 非空 TID int N/A 外键 所回答提问ID 无 UID int N/A 外键 回答人ID 无 RTitle varchar 200 否 回答标题 无 RContent text N/A 否 回答内容 非空 RDate datetime N/A 否 回答时间 非空 (5)申请信息表:该表重要包括申请编号、申请人编号和所申请课程编号等,表中各字段详细信息如下表3.5所示。 表3.5 申请信息表DY_Apply 字段名称 数据类型 字段大小 与否主/外键 字段阐明 备注 AID int N/A 主键 申请编号 非空 UID int N/A 外键 申请人ID 无 TGID int N/A 外键 所申请课程ID 无 AReason varchar 200 否 申请理由 非空 AFlag int N/A 否 申请解决标志 默认值 AStatus char 10 否 申请解决状态 默认值 (6)顾客-课程关系表:用于记录存在于顾客和课程之间关系,包括顾客编号、课程编号和关系编号等信息,表中各字段详细信息如下表3.6所示。 表3.6 顾客-课程关系表DY_TU 字段名称 数据类型 字段大小 与否主/外键 字段阐明 备注 TUID int N/A 主键 关系ID 非空 UID int N/A 外键 顾客ID 无 TGID int N/A 外键 课程ID 无 第四章 系统详细设计与实现 通过这一阶段工作进行了详细设计,咱们将会确切地描述所要开发目的系统,其基本任务是要拟定可以详细地实现所规定系统办法途径。 4.1 界面设计 对于任何系统来讲,设计顾客界面都是相称重要。由于一种交互良好界面不但可以使浏览者对系统印象更深刻,并且可觉得与客户进行沟通提供以便。 本系统界面使用JSP页面来实现,并采用DIV+CSS技术对界面进行美化。 在页面实现过程中,重要遵循了如下两个原则: (1)统一连贯。页面整体风格要与自己所要表达内容相符,本系统是在线答疑系统,采用草绿色为界面颜色基调,能凸显学生活力和知识学习生机勃勃景象。 (2)布局合理、和谐。整个页面要符合大众人群审美观念。布局是一种页面显示主体框架,一种设计良好布局,能给顾客较好使用效果和深刻浏览记忆。 本系统主界面如下图4.1所示。 图4.1 系统主界面 4.2 系统分层实现 依照MVC设计思想,本系统以Struts2框架为控制器,用来管理各页面传过来祈求,从而发给相应action解决;各JSP页面作为动态页面表达层来进行显示;DBUtil和各个Action等均作为Spring当中受管Bean。 4.2.1 体现层设计 JSP技术可以将普通静态HTML技术和动态HTML技术相结合起来进行编码。它具备运营效率高、跨平台性等长处。依照系统分层状况,表达层选用是JSP动态页面技术。 4.2.2 控制层设计 <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> 控制层采用是Struts2框架。由于可以使用Struts2控件上传文献,并且其拦截器机制也可以对特定信息进行拦截。该系统中Struts2工作原理体现如下:当顾客从前台JSP页面选取操作后,通过Struts2控制器转发给相应action进行解决,各action通过Spring依赖注入DBUtil来实现对数据库各项操作,最后将得到数据传到JSP页面进行显示。本系统在项目构造中WEB-INF文献夹下web.xml文献中对Struts2进行配备如下: 4.3 数据连接与操作实现 4.3.1 数据源配备 由于系统采用数据库连接池技术访问数据库,因此在连接数据库之前要对数据源进行配备,本系统在项目构造中WEB-INF文献夹下web.xml文献中对其进行配备如下: <resource-ref> <description>DB Connection</description> <res-ref-name>jdbc/zxdy</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> 4.3.2 数据库操作实现 public class DBUtil{ private JdbcTemplate jt; //声明JdbcTemplate对象引用 private List rl = null; //声明List对象引用 private String sql = null; //声明SQL字符串引用 private DataSource ds; //声明DataSource引用 private DataSourceTransactionManager dtm; //声明数据源事务管理类引用 private DefaultTransactionDefinition dtd; //声明DefaultTransactionDefinition引用 public void setJt(JdbcTemplate jt){ //jt成员setter办法 this.jt = jt; //设立jt属性值 } public void setDs(DataSource ds){ this.ds=ds; } …… //对数据库进行操作各个办法 } 本项目中DBUtil类包括所有要用到数据库办法,需要将DBUtil类资源注入到项目中开发Action,并将Action配备成为Spring框架中受管Bean。DBUtil类详细实当代码见附录1,其大体构造如下: 4.4 各个功能模块设计与实现 依照系统分析和系统总体设计,基本拟定了该系统所包括模块,下面详细简介各个模块基本功能设计与实现。 4.4.1 顾客登录和注册 根据系统分析和功能需求,顾客在没有登录情形下,除了对系统首页进行浏览外无法执行其他操作。只有在登陆成功状况下,才可以刊登疑问和回答并执行其他操作。学生和教师顾客通过系统首页登录系统,而管理员则通过后台登录界面进入系统。 在运用Struts2框架进行开发过程中,有时一种动作要与一种Action相应,可是这些Action中有些属性或办法是通用,倘若在每一种Action里面重复书写相似属性或办法就会导致代码看起来不但冗长并且枯燥。因而,一方面要定义一种可以让之后所有Action继承一种包括通用属性和办法基类Action,即BaseAction类。其详细实现类是DYBaseAction,DYBaseAction类重要源代码如下。 public class DYBaseAction extends ActionSupport{ public String execute()throws Exception{ String result = SUCCESS; if("logout".equals(actionStr)){ String role = (String)getSession().get("role"); getSession().clear(); System.out.println("role:=="+role); if("0".equals(role)||"1".equals(role)){ url = "IndexAction.action"; message = "退出成功,当前将跳转到主页"; } else{ url = "adminLogin.jsp"; message = "退出成功,当前将要跳转到登陆页"; result = LOGIN; }} return result;}} (1)顾客注册 顾客通过系统首页进入注册页面, 由于注册顾客有诸多,本模块使用了Ajax技术,在客户端尚未提交注册表之前可以对信息进行验证,倘若注册信息不符合规定则禁止提交,这样不但使得网络流量在很大限度上得到减少,并且也使得服务器承担得到极大减轻。 采用Ajax技术向服务器发送异步祈求,在创立好XmlHttpRequest对象后要获取顾客注册时所填写顾客名,而后再把验证祈求发送到服务器端。 (2)顾客登录 l 学生和教师顾客通过系统主页登录。 l 管理员通过后台登录页面进入系统。 4.4.2 学生顾客模块 学生顾客成功登录系统后,主页面显示了所有课程列表,学生可以搜索课程并查看自己课程下所有提问,但无法查看未申请课程提问。学生顾客主界面显示了所有课程,实现了分页功能,项目中FenYeAction类是所要用到全某些页类基类,单击顾客名,可以进入学生个人控制页面。 4.4.3 教师顾客模块 教师顾客成功登录系统后,主页面显示了自己课程列表,详细页面与学生顾客主页面类似,单击顾客名,可以进入教师个人控制页面 4.4.4 管理员模块 管理员分为普通管理员和超级管理员,普通管理与与超级管理员相比只是少了对管理员进行管理权限。接下来以超级管理员为例来描述管理员模块详细设计与实现。管理员成功登录系统后进入系统在线管理中心 第五章 系统测试 5.1 测试目 软件测试不但要对软件与否完毕了你所盼望那些事情进行确认,还要对软件与否使用了对的方式来完毕这个事情进行确认,其目之一便是确认软件质量。软件测试不但要测试软件产品自身,同步也包括对软件开发过程测试。 本系统在开发过程中通过了各项测试,测试工作与编码工作同步进行,每完毕一种功能我都做了有关测试工作,并且一一通过。在测试过程中,会发现系统不少问题,但是通过翻阅资料、上网查询以及向同窗请教,成功地解决了测试中发现问题。在系统开发过程中不浮现错误是不正常也是不也许,通过这个项目开发,我深刻体会到测试重要性。下面我将对开发过程中核心某些进行阐述。 5.2 系统核心某些测试分析 5.2.1 注册顾客名唯一性验证 本系统使用Ajax技术向服务器发送异步祈求来进行验证,当输入焦点离开顾客名输入框时便自动触发注册顾客名唯一性验证祈求 5.2.2 分页实现 系统中诸多页面都要实现分页效果,因而在项目中开发了一种所有分页类基类Action来实现分页 5.2.3 运用拦截器实现权限控制 public class MyInterceptor extends AbstractInterceptor { @Override public String intercept(ActionInvocation invocation) throws Exception{ Map session = ActionContext.getContext().getSession(); //得到session String result = "LOGIN"; //返回成果字符串 if(session.get("uid")!=null){ //如果从session里得到uid不为null return invocation.invoke(); //调用下一种Action得到返回成果并返回 } return result; //返回成果result }} 通过前面分析得到,如果顾客没有登录该在线答疑系统,是不容许进入提问列表和提问详情页面,项目运用Struts2拦截器编写了自己拦截器,很以便地实现了顾客权限控制。详细实当代码如下。 该拦截器类作为AbstractInterceptor类子类重写了基类intercept办法以鉴别顾客是不是登录了,倘若是则接着调用下一种Action,否则返回一种LOGIN视图来提<package name="zxdyQT" extends="struts-default"> <interceptors> <interceptor name="mi" class="hnust.MyInterceptor"/> <interceptor-stack name="zxdydefault"> <interceptor-ref name="defaultStack"/> <interceptor-ref name="mi"/> </interceptor-stack> </interceptors> <default-interceptor-ref name="zxdydefault"/> <global-results><result name="LOGIN">/login.jsp</result></global-results> <package/> 上述struts配备文献配备了一种自定义拦截器mi,并将其和系统默认拦截器一起组织成一种拦截器栈,而后再将这个拦截器栈配备成该包默认拦截器,最后定义了一种LOGIN全局视图,一旦该包里Action返回是LOGIN视图就跳转到登录页面。 醒顾客尚未登录。在struts.xml中对其进行配备如下。 第六章 开发筹划 6.1 成本筹划 购买计算机4台:2万;购买开发工具:;购买域名:;开发调研费用- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 课程设计 在线 答疑 系统 样本
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文