版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《UML大作业》设计汇报课程名称:《UML大作业》课程设计设计题目:学生信息管理系统班级:0844131同组人员:谢伊豪王瑛婕张哲成成绩:评语:计算机科学和工程学院12月25日目录一、引言 21.1编写目标 2二、总体设计 32.1需求分析 32.2可行性分析 3三、系统设计 53.1设计目标 53.2项目计划 53.3系统功效模块描述 63.4功效图 7四、基于UML学生信息管理系统分析设计 94.1UML介绍 94.2定义业务步骤 94.2.1参与者之间关系 94.2.2系统用例图 104.3类图 104.4分析业务步骤 144.4.1学生登录查询业务步骤活动图 144.4.2学生登录查询业务步骤时序图 154.5老师录入成绩活动图 154.6添加学生信息活动图 16五、程序功效模块描述 165.1登录模块程序步骤图 165.2添加信息程序步骤图 175.3删除信息程序步骤图 175.4修改信息程序步骤图 185.5查询信息程序步骤图 18六、程序类设计及数据库设计 196.1程序类设计 196.2数据库设计标准 196.3数据库设计 206.4数据流图分析 216.5概念结构分析 23七、系统测试 247.1测试案例 247.2系统测试情况 24八、心得体会 26九、参考文件 29十、程序测试图 29十一、程序关键代码 32一、引言1.1编写目标学生信息管理系统(StudentInformationManagementSystem),以下简称SIMS,是针对学校人事处大量业务处理工作而开发管理软件,是经典管理信息系统(ManagementInformationSystem)。它是一个教育单位不可缺乏部分,它内容对于学校决议者和管理者来说全部至关关键,它能够为用户提供充足信息和快捷查询手段。能有效帮助学校和老师掌握学生情况,为学生提供成绩跟课程方面查询。在传统模式下利用人工进行学生信息管理,存在着较多缺点,如:效率底,保密性差,时间一长将产生大量文件和数据,更不便于查找,更新,维护等。诸如这些情况,令学校管理者对学生信息管理带来了很大困难,严重影响了教育工作者工作效率。伴随科学技术不停提升,计算机科学日渐成熟,使用日趋成熟计算机技术来替换传统人工模式,来实现学生信息现代化管理,其强大功效已为大家深刻认识,它已进入人类社会各个领域并发挥着越来越关键作用。作为计算机应用一部分,使用计算机对学生信息进行管理,含有手工管理所无法比拟优点.比如:检索快速、查找方便、易修改、可靠性高、存放量大、数据处理快捷、保密性好、寿命长、成本低、便于打印等。这些优点能够极大地提升学生信息管理效率,也是学校科学化、正规化管理,和世界接轨关键条件。用计算机制作学生信息管理系统还能够经过功效强大Internet网立即向学生家长传输该生在校最新成绩,有利于学校和家长信息互动,为愈加好地把握学校教育方针一定促进作用!所以,开发这么一套管理软件成为很有必需事情。二、总体设计2.1需求分析二十一世纪以来,人类经济高速发展,大家发生了日新月异改变,尤其是计算机应用及普及到经济和社会生活各个领域。使原本旧管理方法越来越不适应现在社会发展。很多人还停留在以前手工操作。这大大地阻碍了人类经济发展。为了适应该代社会大家高度强烈时间观念,学生信息管理系统软件为学校办公带来了极大方便。(一)教育系统学生管理现实状况分析学校工作步骤分析学校工作总体计划由教务人员在学生信息管理系统中完成对运行教务处所需基础数据维护,包含这些信息增加、修改及对各项信息变动全部将在这进行操作。新年,教务人员首先加入年级信息,然后编排班级,再对来校学生进行基础信息录入,新生入学后由教务人员在学籍系统中完成新学生信息维护。(二)学校具体需求分析学生:对自己各科成绩,选课查询。任课老师:输入并维护所教科目标学生成绩,已经更新自己所教课程及所选教材。教务处:学校全体组员信息管理,并对任课老师,班主任等输入信息进行存库,对学生信息进行必需维护。(三)经过研究调查,本系统有以下功效:第一,综合学生信息、学生成绩和信息查询等信息。第二,方便用户了解和管理学生全方面动态信息。第三,良好界面设计,更人性化设计理念,使用户拥有更轻松使用心情。2.2可行性分析目标:可行性研究目标是用最小代价在尽可能时间内确定问题是否能处理。(1)技术可行性分析在学生管理系统中,我们全方面考虑系统开发过程所包含全部技术问题,尽可能采取成熟技术,使我们系统运行环境更适应大多数系统。我们着眼于具体开发环境和开发人员。在限制条件下,我们项目功效目标能基础达成;利用现有技术,系统性能目标基础能够达成;对开发人员数量和质量要求不是太高,并满足开发人员要求;在要求期限内,我们项目标开发能够完成。(2)经济可行性分析采取学生信息管理信息系统可替换原系统单据手工传输工作,降低人工开支,节省资金,而且可大大提升信息量取得,缩短信息处理周期,计划教学资源,提升学生信息,立即反馈教学信息利用率,使教学质量更上一个台阶。(3)运行环境可行性分析本系统采取Windows7作为操作平台。数据库选择SQLserver,该数据库管理系统在Windows7系统上能运行,并提供数据库之间数据复制功效,可替换现有系统单据数据手工传输工作,降低犯错率,提升数据可用性。本系统应用软件开发平台也选择eclipse。(4)其它可行性分析本系统操作简单,易于了解,只需经过简单熟悉,上手较快,学校教务管理处教职员和相关老师均能进行操作,营运环境要求低。面对于系统设计还应该以“标准性、安全性、兼容性、高效性、保密性、可维护性”为标准,在着眼于目前实用基础上,为未来系统扩展,升级留有余地。软件开发应能在较长时间内满足学校发展需要。经过可行性分析研究,认为系统开发方案切实可行,可进行开发。三、系统设计3.1设计目标本系统能够能降低很多无须要资源,不用象以前那样用冗余纸张式管理。大节省了学校能源。而且计算机存放和快速查询功效大大提升了学籍管理效率,而且还提升了学籍信息管理正确度。方便快速操作,可降低学籍信息管理漏洞,又降低因工作冗余出现错误,而且操作很简单,可降低很多不很必需人员,这不管从物质上还是工作人员工资上全部为学校节省了开支。为学校增加了财富。数据库分析用户需求具体有学籍管理系统提供保留、更新、查询、维护,这就需求数据库结构能充足满足多种信息输入和输出,实现有组织地、动态地存放大量关联数据,方便用户访问系统中数据,它和文件系统关键区分是数据充足共享,交叉访问,和应用程序高度独立性。3.2项目计划学生管理系统是各大中专院校不可缺乏一部分,是一个java+SQL数据库开发应用程序,它关键包含用户登录、学生基础信息、宿舍信息、课程信息、成绩信息、班级信息输入、修改、查询、删除和老师和管理员登录,系统用户管理等多个页面,所以该系统含有较强实用性。系统含有以下用户(1)教务处管理员:学生信息管理(增添,删除,修改,查询)课程信息管理(增添,删除,修改,查询)课程信息管理(查询,显示)学生成绩管理(修改,查询,显示)(2)学生登录:个人信息管理(修改,查看)个人课程管理(选课,查看)个人成绩管理(查看个人成绩)个人帐号管理(查看,修改)(3)老师登录:个人信息管理(修改,查看)学生选课管理(查看自己所教课程,查看自己所教班级)学生成绩管理(查看,修改,录入)个人帐号管理(查看,修改)(4)系统管理员:用户信息管理(添加,修改,查询,删除)3.3系统功效模块描述信息管理系统论文关键功效:学籍信息管理,班级信息管理,课程信息管理,成绩信息管理,用户信息管理。具体系统功效需求描述以下:(一)学籍信息管理每十二个月大量新生入学,老生毕业全部需要处理大量信息管理系统论文。经过这一模块,能够实现学生基础情况添加、删除、更新。还能查询各个学生情况,姓名、家庭电话、家庭住址、学号等各个消息。(二)班级信息管理实现班级添加、删除、更新。查询班级所在系别,教导员等。(三)课程信息管理在传统模式下利用人工进行学生信息管理系统论文,存在着较多缺点,如:效率底,保密性差,时间一长将产生大量文件和数据,更不便于查找,更新,维护等。诸如这些情况,学校管理者对学生信息管理系统论文带来很大困难,严重影响教育工作者工作效率。每个学期全部会增加部分新科目,经过本模块能够轻松添加和更新课程。能够依据学期条件或班级条件选择,也可依据课程名、课程号或班级选择,并对值输入,能够看到数据集中显示符合条件课程数据信息,而且能够依据教工修改要求进行数据添加、删除、修改操作。该项管理对课程属性进行了具体化分类,比如能够分辨是考试科还是考察课,而且依据条件选择大大得提升了对各学期课程数据统计操作,很大得帮助了教工们工作效率提升。(四)成绩信息管理本模块实现了成绩输入、删除、更新。还能查询到平均成绩和单科最高最低成绩和个人成绩。把成绩统计这个繁琐工作简单化,为学生成绩管理方面提升工作效率。(五)用户信息管理因为本信息管理系统论文是供多人一起使用,必需对某部分人进行限制。于是设置了管理员,非管理员只能进行查询操作,不能进行更改。3.4功效图1.系统功效图2.登录模块功效3.学生基础信息功效图4.学生成绩信息功效图5.学生课程信息功效图6.学生宿舍信息功效图7.学生班级信息功效图四、基于UML学生信息管理系统分析设计4.1UML介绍
UML是一个功效强大、面向对象可视化系统分析建模语言,它采取一整套成熟建模技术,广泛地适适用于各个应用领域。它各个模型能够帮助开发人员愈加好地了解业务步骤,建立更可靠、更完善系统模型。从而使用户和开发人员对问题描述达成相同了解,以降低语义差异,保障分析正确性.所以,我们小组人员对我们系统进行了深度剖析,对我们系统做了用例分析,次序图,状态图、活动图、类图,让以后开发人员能愈加好认识了解我们系统,也是为了,能够对我们系统后期维护带来便利。4.2定义业务步骤该系统有三个实施者,管理者、学生和老师。管理员能够对学生信息,班级信息进行操作(添加,修改,删除),学生能够查询信息,查询课程,查询成绩,选课,老师能够录入成绩,对学生成绩进行管理。4.2.1参与者之间关系4.2.2系统用例图4.3类图1.主函数调用2.登录界面调用类图3.系统管理员界面调用类图4.教务处管理员界面调用类图5.学生界面调用类图4.4分析业务步骤4.4.1学生登录查询业务步骤活动图输入登录用户账号和密码:登录系统。验证登录用户账号和密码:对用户登录信息进行验证,检验是否是本系统正当用户,并区分用户权限。登录信息有效:依据用户不一样权限进行不一样界面跳转。退出系统:用户使用完系统后退出系统。登录系统时,系统自动区分不一样用户不用权限,用户以有效身份登录后,能够在自己权限范围内操作系统。登录成功后,依据用户权限登录不一样界面。以下学生登录后,能够对自己部分基础信息进行查询操作。4.4.2学生登录查询业务步骤时序图4.5老师录入成绩活动图4.6添加学生信息活动图五、程序功效模块描述5.1登录模块程序步骤图5.2添加信息程序步骤图5.3删除信息程序步骤图5.4修改信息程序步骤图5.5查询信息程序步骤图六、程序类设计及数据库设计6.1程序类设计SimpleStudentManager主函数类DLFrame登陆界面类ManagerFrane管理员界面类StudentFrame学生界面类SM学生信息管理类SAdd用于学生信息管理中增加或修改某条统计界面类SSelect用于学生基础信息管理中查询时输入学号界面类CM课程信息管理类CAdd用于课程信息管理中增加或修改某条统计界面类CSelect用于课程信息管理中查询时输入课程号界面类SCM选课信息管理类SCSelect用于选课信息管理中查询时输入学号界面类GM成绩信息管理类GAdd用于成绩信息管理中修改成绩界面类GSelect用于成绩信息管理中查询时输入学号界面类PM用户信息管理类UAdd用于用户信息管理中修改密码界面类PSelect用于用户信息管理中查询时输入用户名界面类StudentS用于学生信息查看时输入学号界面类StudentSelect用于成绩信息查看时输入学号界面类PPM个人信息管理类PPSelect用于个人信息管理查询时输入用户名界面类ZC注册学生用户界面类teacherFrame老师登录页面Xtgly系统管理员登陆界面6.2数据库设计标准数据库设计就是从用户需求出发,设计数据库结构(关键是逻辑结构和物理结构),再装载初始数据过程。数据库技术是信息资源管理最有效手段[30]。在数据库设计中关键采取逐步求精和分而治之设计策略。数据库不是独立存在,它总是和具体应用相关。在设计数据库时必需时刻考虑用户需求情况,数据库和具体应用之间是否相辅相成对应关系[31]。数据库设计过程通常包含以下多个步骤:1、确立目标和搜集数据确立数据库设计目标称为数据库需求分析。数据库需求分析必需要经过调查用户管理对象来明确用户多种需求,经过搜集和分析用户需求情况,了解在数据库中需要存放哪些需要数据,需要进行什么样数据处理操作[32]。确定设计目标以后就需要依据目标进行搜集相关数据,然后分析和表示这些数据;经过和用户进行充足交流,了解她们平时是怎样操作数据库,和对目前信息要求,进而设计出满足用户需要字段信息,并依据设计字段信息进行搜集数据。2、概念设计数据库概念模型,依据用户应用要求,绘制出以反应每个角色需要,包含确定实体,属性和联络类型。而局部结构概念,也被称为局部E-R模型,全局概念结构也被称为全局E-R模型,和其对E-R图图形表示[35]。然后优化初步E-R图,消除冗余和可能发生冲突,这个阶段是整个数据库设计关键,概念模型是对用户需求客观反应,不包含一个特定计算机软件和硬件环境。3、建立数据模型完成上述工作后,就能够创建一个数据库模型了,这是第三阶段数据库设计过程。我们使用实体关系(E-R)措施来处理数据库设计概念,概念模型是进入一个特定数据模型E-R图。现在常见是关系数据模型,我们通常称为关系数据模型图,它是实体,实体属性和实体之间建立关系模式联络。4、数据库实施和维护完成数据模型后是数据库实施和维护,包含字段定义,以确定类型和使用领域和数据库管理系统或数据库语言选择来创建数据库结构,输入数据和运行,使数据库实现是一个完整数据库设计过程。后期关键是数据库以后维修,包含完善备份,数据库安全和完整性调整,以提升数据库性能等。数据库系统开发在管理信息系统设计中占据中心地位。[36]6.3数据库设计在数据库student中共有6张数据表:s(学生信息表)、c(课程信息表)、sc(选课信息表)、unpw(用户信息表)、jstable(老师教课信息表)、tc(老师信息表)下面定义每张表字段名称和数据类型。s(学生信息表)字段名称数据类型描述snochar(10)学号,关键字snchar(20)姓名saint年纪sschar(10)性别sdchar(10)院系c(课程信息表)字段名称数据类型描述cnochar(10)课程号,关键字cnchar(30)课程名pcnochar(10)先行课程号sc(选课信息表)字段名称数据类型描述snochar(10)学号,关键字cnochar(10)课程号,关键字gint成绩jstable(老师教课信息表)字段名称数据类型描述tnochar(10)老师号cnochar(10)课程号kcxfint课程学分xsint课时tc(老师信息表)字段名称数据类型描述tnochar(10)老师号tnchar(5)老师名zcchar(5)职称sexchar(2)性别unpw(用户信息表)字段名称数据类型描述unchar(10)用户名,关键字pwchar(10)密码qxint角色6.4数据流图分析图一顶层数据流图二第二层数据流图图三学生信息数据流图图四老师信息数据流图6.5概念结构分析1.局部E-R图设计方法1.属性必需是不可分数据项。2.属性不能和其它实体含有联络,联络只能发生在实体之间。2.E-R图(1).总体E-R图(2).学生课程信息局部E-R图(3).老师课程信息局部E-R图七、系统测试在本系统开发中,因为是作者个人自主开发信息管理系统,所以采取测试方法,是目前较为流行黑盒测试方法进行测试。黑盒测试方法也称之为功效测试,它关键是经过测试每个功效是否全部能正常使用来实现测试方法。在测试中,关键是把程序看作一个不能打开密封黑盒子,在完全不用考虑程序内部结构和内部特征情况下,对程序各个接口进行测试,该测试方法只检验程序功效是否是根据需求规格说明书要求能正常进行使用,系统是否能合适地接收输入用户输入数据而产生正确输出结果[42]。因为黑盒测试关键着眼于程序外部结构测试,不需要考虑系统内部逻辑结构,关键用于对软件界面和软件功效实现测试。因为黑盒测试是以用户信息输入角度进行考虑,从用户输入数据和系统输出数据进行对应关系出发进行测试[43]。很显著,当系统外部特征本身有问题或在定义规格说明时候有误,则用黑盒测试方法是发觉不了系统问题。7.1测试案例为了能愈加好确保教务信息管理系统操作性及安全性,在系统测试阶段,关键选择了以下案例进行分模块测试。1)首先需要测试模块是系统登录,这个模块包含了管理员、老师和学生登录情况。2)检验登录情况后,查对需求分析中功效需求,对实现功效是否和早期定义功效完全一致。3)测试管理员端全部功效是否和预期定义一致。该案例关键是测试学生管理功效、老师管理功效、部门管理功效、科目管理功效、成绩管理功效和管理员管理功效。4)测试系统管理模块功效,是否实现了对学生访问端和老师访问端权限进行控制。5)老师访问登录,对应课程、教学班级及成绩登记操作测试。6)学生访问登录,查询对应考试成绩和个人信息维护测试。7.2系统测试情况因为个人经验和时间、用户不足,只是对系统功效进行了基础测试。测试结果如表所表示:本章节从软件测试方法入手,先行介绍了目前较为实用软件测试方法—黑盒测试,然后深入叙述了此次教务系统开发所采取测试方法,及测试中碰到问题和处理情况,因为个人开发经验及水平有限,还有些问题,还有待继续努力,后续处理。测试计划序号测试模块测试情况结果存在关键问题处理情况1各个角色登录模块测试符合经过2登录模块测试基础符合基础经过在选择老师角色登录,假如系统中未指定老师所讲课程,出现登录报错已处理3管理员端学生具体信息操作测试基础符合基础经过只能实现针对学号具体查询,模糊查询只能导出一个学生信息未处理4学生批量信息添加符合经过5部门信息管理基础符合基础经过在专业、班级信息管理中,因信息太多后,显得凌乱,难以查找某个具体信息对关键关键字进行排序已处理6老师信息管理符合经过7科目信息管理基础符合基础经过只能实现单个老师,单个课程、单个班级指定,未能实现批量指定未处理8管理员管理模块符合经过9考试结果管理符合经过八、心得体会1.谢伊豪心得体会经过这次课程设计,我锻炼了自己动手能力,巩固了对面向对象程序设计概念了解和JAVA利用,深入掌握JAVA开发应用程序基础方法,学习了对数据库基础操作,能够对SQL表做基础处理,提升了自己综合利用所学知识能力。深刻认识到了基础知识关键性。现在很有必需加强基础语法知识学习了。软件工程思想应用性很强,只有老师讲解不行,只看书也不行,只有自己动手去设计才会发觉自己不足,只是看书本根本了解不到软件工程精髓,只有真正去做是才能知道自己了解程度。从而让我知道了理论和实践相结合起来是很关键只有理论只是是远远不够,只有把所学理论知识和实践相结合起来,从实战中得出结论,才能真正了解,从而提升自己实际动手能力和独立思索能力和逻辑思维能力。而且对以前学JAVA图形用户界面,JAVA数据库JDBC利用内部匿名类等知识有了更深了解和应用。提升了学习计算机爱好,增强了信心。在此次课程设计中,我碰到了很多困难,这些困难搞得我焦头烂额,几度试图放弃,但最终坚持着,把困难克服掉了。每当克服一个困难,全部很兴奋,这些全部是自己努力结果。现在,我有信心面对接下来挑战,在不停实践中锻炼自己,提升自己!经过快要两个星期设计和开发,系统基础开发完成。在此次课程设计中困难碰到不少,比如数据库连接,SQL语言书写格式,全局参数传输等。因为设计时间较短,所以该系统还有很多不尽如人意地方,比如用户界面不够美观,功效不够完善等多方面问题。在这次系统开发过程中,我深深体会到了做一个系统,首优异行需求分析关键性,了解了一个系统制作,从功效分析到功效模块分析、和其它系统关系,再到数据库设计、数据库结构实现及各功效模块创建全部需要从整体上考虑设计。这些全部有待以后深入改善。回顾起此次软件工程课程设计,我感慨颇多,学到了很多东西。同时不仅巩固了以前所学过知识,而且还学到了很多在书本上所没有学到过知识。在实际设计中才发觉,书本上理论性东西和在实际利用中还是有一定出入,所以有些问题不仅要深入地了解,而且要不停地更正以前错误思维。一切问题必需要靠自己一点一滴处理,而在处理过程当中你会发觉自己在飞速提升。经过此次软件工程课程设计我对软件设计体系和设计步骤有了更深一步体会,不再是仅限于对于书本上了解。增强了我逻辑思维能力,和考虑事情全方面性,此次课程设计让我收获颇多。2.王瑛婕心得体会课程设计是培养学生综合利用所学知识,发觉,提出,分析和处理实际问题,锻炼实践能力关键步骤,是对学生实际工作能力具体训练和考察过程。在这次设计中碰到了很多实际性问题,在实际设计中才发觉,书本上理论性东西和在实际利用中还是有一定出入,所以有些问题不仅要深入地了解,而且要不停地更正以前错误思维。一切问题必需要靠自己一点一滴处理,而在处理过程当中你会发觉自己在飞速提升。对于学生信息管理系统,其程序是比较简单,关键是处理程序设计中问题,而程序设计是一个很灵活东西,它反应了你处理问题逻辑思维和创新能力,它才是一个设计灵魂所在。所以在整个设计过程中大部分时间是用在程序上面。很多子程序是能够借鉴书本上,但怎样衔接各个子程序才是关键问题所在,这需要对系统结构很熟悉。经过这次课程设计我也发觉了本身存在不足之处,即使感觉理论上已经掌握,但在利用到实践过程中仍有意想不到迷惑,经过一番努力才得以处理。这也激发了我以后努力学习爱好,我想这将对我以后学习产生主动影响。其次,这次课程设计让我充足认识到团体合作关键性,只有分工协作才能确保整个项目标有条不絮。另外在课程设计过程中,当我们碰到不明白问题时,指导老师总是耐心讲解,给我们设计以极大帮助,使我们获益匪浅。所以很感谢老师教导。经过这次设计,我知道了学习关键性,了解到理论知识和实践相结合关键意义,学会了坚持、耐心和努力,这将为自己以后学习和工作做出了最好楷模。我认为作为一名软件工程专业学生,这次课程设计是很有意义。更关键是怎样把自己平时所学东西应用到实际中。即使自己对于这门课知道并不多,很多基础东西全部还没有很好掌握,认为极难,也没有很有效措施经过本身去了解,不过靠着这一个多礼拜“学习”,在小组同学帮助和讲解下,自己开始主动学习并逐步从基础慢慢开始弄懂它。我认为这个收获应该说是相当大。一开始我们找来了课题,做到以后发觉很多程序全部是不完整,设计这种东西最终还是要靠自己动脑筋。然后我们大家一起齐心协力,从平时做试验﹑老师上课举例﹑书本上知识和老师教导下最终完成了。应该说这是经过我们小组组员共同努力和动脑完成,即使内容并不是很复杂,不过我们认为设计过程相当关键,学到了很多,收获了很多。我认为课程设计反应是一个从理论到实际应用过程,不过更远一点能够联络到以后毕业以后从学校转到踏上社会一个过程。小组人员配合﹑相处,和本身动脑和努力,全部是以后工作中需要。所以我认为这次课程设计意义很深,和其它同学共同学习﹑配合﹑努力过程也很愉快,另外还要感谢老师耐心教导。3.张哲心得体会经过此次课程设计,使我愈加扎实掌握了相关Java方面知识,在设计过程中即使碰到了部分问题,但经过一次又一次思索,一遍又一遍检验最终找出了原因所在,也暴露出了前期我在这方面知识欠缺和经验不足。实践出真知,经过亲自动手制作,使我们掌握知识不再是纸上谈兵。在课程设计过程中,我们不停发觉错误,不停更正,不停领悟,不停获取。最终检测调试步骤,本身就是在践行“过而能改,善莫大焉”知行观。这次课程设计最终顺利完成了,在设计中碰到了很多问题,最终在老师指导下,最终游逆而解。在以后社会发展和学习实践过程中,一定要不懈努力,不能碰到问题就想到要退缩,一定要不厌其烦发觉问题所在,然后一一进行处理,只有这么,才能成功做成想做事,才能在以后道路上劈荆斩棘,而不是知难而退,那样永远不可能收获成功,收获喜悦,也永远不可能得到社会及她人对你认可!课程设计诚然是一门专业课,给我很多专业知识和专业技能上提升,同时又是一门讲道课,一门辩思课,给了我很多道,给了我很多思,给了我莫大空间。同时,设计让我感慨很深。使我对抽象理论有了具体认识。经过这次课程设计,我掌握了软件工程原理。我认为,在这学期试验中,不仅培养了独立思索、动手操作能力,在多种其它能力上也全部有了提升。更关键是,在试验课上,我们学会了很多学习方法。而这是以后最实用,真是受益匪浅。要面对社会挑战,只有不停学习、实践,再学习、再实践。这对于我们未来也有很大帮助。以后,不管有多苦,我想我们全部能变苦为乐,找寻有趣事情,发觉其中珍贵事情。就像中国提倡艰苦奋斗一样,我们全部能够在试验结束后变愈加成熟,见面对需要面正确事情。回顾起此课程设计,至今我仍感慨颇多,从理论到实践,在这段日子里,能够说得是苦多于甜,不过能够学到很多很多东西,同时不仅能够巩固了以前所学过知识,而且学到了很多在书本上所没有学到过知识。经过这次课程设计使我知道了理论和实际相结合是很关键,只有理论知识是远远不够,只有把所学理论知识和实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提升自己实际动手能力和独立思索能力。在设计过程中碰到问题,能够说得是困难重重,但可喜是最终全部得到了处理。试验过程中,也对团体精神进行了考察,让我们在合作起来愈加默契,在成功后一起体会喜悦心情。果然是团结就是力量,只有相互之间默契融洽配合才能换来最终完美结果。此次设计也让我明白了思绪即出路,有什么不懂不明白地方要立即请教或上网查询,只要认真钻研,动脑思索,动手实践,就没有弄不懂知识,收获颇丰。九、参考文件[1]何宗耀吴孝丽.数据库原来及其应用.中国矿业大学出版社,.[2]王珊萨师煊数据库系统概论.高等教育出版社,.[3]张海帆牟永敏软件工程导论(第六版).清华大学出版社,.[4]麻志毅面向对象分析和设计(第二版).机械工业出版社,.[5]袁绍欣JAVA面向对象程序设计(第二版).清华大学出版社,.十、程序测试图1.登陆界面2.添加学生信息3.修改学生信息4.删除学生信息十一、程序关键代码1.登录信息判定publicvoidactionPerformed(ActionEvente){ Objectsource=e.getSource(); Stringun=null; Stringpw=null; booleansuccess=false;//用于判定是否登录成功 if(source==btnLogin){ if(txtUser.getText().equals("")||txtPwd.getText().equals("")){//判定是否输入了用户名和密码 JOptionPane.showMessageDialog(null,"登录名和密码不能为空!"); }else{ this.connDB(); try{ rs=stmt.executeQuery("select*fromunpwwhereqx=" +qxian); while(rs.next()){ un=rs.getString("un").trim(); pw=rs.getString("pw").trim(); if(txtUser.getText().equals(un)){ if(txtPwd.getText().equals(pw)){ actionCode=OK; this.setVisible(false); if(qxian==0){ newManagerFrane();//进入管理员界面 } if(qxian==1){ newStudentFrame();//进入学生界面 } if(qxian==2){ newteacherFrame();//进入老师界面 } if(qxian==3){ newXtgly();//进入系统管理员界面 } success=true; break; }else{ JOptionPane.showMessageDialog(null,"密码错误!"); txtPwd.setText(""); success=true; } } } if(!success){ JOptionPane.showMessageDialog(null,"登录名错误!"); //txtUser.setText(""); txtPwd.setText(""); } }catch(SQLExceptione1){ e1.printStackTrace(); } } }elseif(source==btncz){ txtUser.setText(""); txtPwd.setText(""); }elseif(source==btnCancel){ this.dispose(); newZC(); }elseif(source==btnCance2){ System.exit(0); } }2.连接和关闭数据库publicvoidconnDB(){//连接数据库 try{ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); }catch(ClassNotFoundExceptione){ e.printStackTrace(); } try{ con=DriverManager.getConnection( "jdbc:sqlserver://localhost;DatabaseName=student", "sa","123456"); stmt=con.createStatement(); }catch(SQLExceptione){ e.printStackTrace(); } } publicvoidcloseDB()//关闭连接 { try{ stmt.close(); con.close(); }catch(SQLExceptione){ e.printStackTrace(); } }3.添加学生信息publicvoidinsertst(){//插入统计 Stringxh=null; Stringxm=null; intnl=0; xh=tsno.getText(); xm=tsname.getText(); try{ nl=Integer.parseInt((String)tsage.getText()); if(this.getTitle()=="修改"){//假如是修改统计,先删除再增加 try{ this.connDB(); intrs1=stmt.executeUpdate("deletefromswheresno='" +xh+"'"); }catch(SQLExceptione){ e.printStackTrace(); } } Stringstr="insertintosvalues('"+xh+"','"+xm+"',"+nl +",'"+xb+"','"+yx+"')"; this.connDB();//连接数据库 try{ stmt.executeUpdate(str); JOptionPane.showMessageDialog(null,this.getTitle()+"成功!", "提醒",JOptionPane.INFORMATION_MESSAGE,newImageIcon( "menu4.gif")); this.setVisible(false); }catch(SQLExceptione){ JOptionPane.showMessageDialog(null,"学号已存在!"); tsno.setText(""); } }catch(NumberFormatExceptione){//判定年纪是否为数字 JOptionPane.showMessageDialog(null,"年纪必需是整数!"); tsage.setText(""); isNewsm=false; } if(this.getTitle()=="增加"){//假如是增加统计,对应用户表中也增加一条统计 try{ stmt.executeUpdate("insertintounpwvalues('"+xh+"','" +xh+"',"+1+")"); }catch(NullPointerExceptione){ }catch(SQLExceptione){ //e.printStackTrace(); } } } publicvoidactionPerformed(ActionEvente){ if(e.getActionCommand()=="确定"){ this.insertst(); if(isNewsm){ newSM().display(); } isNewsm=true; } if(e.getActionCommand()=="取消"){ this.setVisible(false); newSM().display(); } } publicvoiditemStateChanged(ItemEvente){//下拉框监听 if(e.getStateChange()==ItemEvent.SELECTED){ JComboBoxjcb=(JComboBox)e.getSource(); if((jcb.getSelectedItem()=="男") ||(jcb.getSelectedItem()=="女")){ xb=(String)jcb.getSelectedItem(); }else{ yx=(String)jcb.getSelectedItem(); } } }4.修改和删除学生信息publicvoiddelete(){//删除某个学生基础信息 Stringxh=null; Stringxm=null; intnl=0; Stringxb=null; Stringyx=null; introw=-1; row=sTable.getSelectedRow(); if(row==-1){//判定要删除信息是否被选中 JOptionPane.showMessageDialog(null,"请选择要删除统计!"); }else{ if(!bstd){//判定选择是不是查询后结果 intj1=0; try{ rs=stmt.executeQuery("select*froms"); while(rs.next()&&j1<=row){//找出目前被选中统计在数据库中对应 xh=rs.getString("sno"); xm=rs.getString("sn"); nl=rs.getInt("sa"); xb=rs.getString("ss"); yx=rs.getString("sd"); j1++; } }catch(SQLExceptione){ e.printStackTrace(); } inti1=0; try{ intrs1=stmt.executeUpdate("deletefromswheresno='" +xh+"'");//删除数据库中目前被选中统计 stmt.executeUpdate("deletefromunpwwhereun='"+xh+"'");//删除对应用户表中统计 JOptionPane.showMessageDialog(null,"统计删除成功!"); this.dispose(); newSM().display(); }catch(SQLExceptione){ e.printStackTrace(); } }else{ try{ intrs1=stmt.executeUpdate("deletefromswheresno='" +mxh+"'"); stmt.executeUpdate("deletefromunpwwhere
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 制定清晰目标的重要性计划
- 烟台大学《数据结构与算法》2022-2023学年第一学期期末试卷
- 2024应急管理部暗访检查粉尘涉爆企业
- 邢台学院《复变函数》2021-2022学年第一学期期末试卷
- 线管理者的回顾与展望计划
- 信阳师范大学《绘本设计》2023-2024学年第一学期期末试卷
- 篮球社团活动安排计划
- 幼儿园班级工作计划成果总结
- 西华师范大学《经典文学作品选读》2023-2024学年第一学期期末试卷
- 2024年01月11021劳动与社会保障法期末试题答案
- 长沙医学院《病原生物学》2022-2023学年第一学期期末试卷
- 服装店合伙协议书
- 颈椎前路零切迹手术
- PRP注射治疗膝关节炎
- 小区垃圾清运管理规章制度模版(2篇)
- 6S精益实战手册
- 农村污水处理建设项目可行性研究报告
- 第五单元 周长 单元测试(含答案)2024-2025学年三年级上册数学北师大版
- 2024年全国普法知识考试题库及答案
- me设备工程师年终总结
- 泌尿外科主要护理措施
评论
0/150
提交评论