JavaEE课程设计报告_JavaEE毕业设计_第1页
JavaEE课程设计报告_JavaEE毕业设计_第2页
JavaEE课程设计报告_JavaEE毕业设计_第3页
JavaEE课程设计报告_JavaEE毕业设计_第4页
JavaEE课程设计报告_JavaEE毕业设计_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

1、娄底职业技术学院loudi vocational and technical college软件开发技术设计说明书学生成绩管理系统起止日期: 2011 年 11 月 26 日 至 2011 年 12 月 3 日学生姓名李清班级10软大二学号201002050224组员李清、张云、刘梅方指导教师胡斌2011年12月3日1 引言21.1摘要21.2背景21.3定义2第二章 概述32.1 系统简介32.2 运行环境3第三章 系统分析43.1可行性分析43.1.1 技术可行性43.1.2 经济可行性43.1.3 法律可行性43.2 需求分析53.2.1 功能划分53.2.2 系统用例53.2.3 功能

2、描述63.2.4 性能需求7第四章 系统设计84.1 流程设计84.1.1 工作流程图84.2 数据库设计94.2.1 e-r图94.2.2 逻辑设计124.2.3 概要设计14第五章 测试与评价15总 结16致 谢17附录17第一章 引言1 引言1.1摘要u 系统名称:学生成绩管理系统u 系统目标: 节约资源,提高学籍信息的精确度。方便快速操作,精简人员,节约开支。结合学校管理的实际需要,实现对学生成绩等数据进行有效管理。u 开发系统的功能: 学生信息查询功能、添加功能、修改功能、删除功能。1.2背景随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的

3、各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生成绩信息进行管理,具有手工管理所无法比拟的优点。例如,检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生档案管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。因此,开发学生成绩管理系统很有必要。u 项目实现:09软大班小组:柳军杰、张建平、罗开俭、刘俊梅、罗扬勇1.3定义1. 数据流-数据进入模块后可能有多种路径进行处理2. 主键-数据库表中的关键域且值互不相同3. 外键-数据库表中与其他表主键相关联的域 4. sql-structured query langu

4、age(结构化查询语言)5. sql server-系统服务器使用的数据库管理系统 6. 系统-若未特别指出,统指本学生成绩管理系统第二章 概述2.1 系统简介 学生成绩管理系统是针对学生成绩录入与查询开发的,因而该系统首先应该对使用者进行身份验证。用户在成功登录后即可进入该学生成绩管理系统。通过该系统用户可以根据自己的需要查询学生成绩,这是该系统的核心功能。2.2 运行环境该系统为b/s三层结构,它的运行环境分客户端、应用服务器端和数据库服务器端三部分。以下是系统的软件环境。(1)客户端操作系统:windows 2000 professional/xp或更新版本。浏览器:ie6以上(2)应用

5、服务器端操作系统:windows 2000 professional/xp或更新版本。应用服务器:tomcat6.0或更新版本。(3)数据库服务器端操作系统:windows 2000 professional/xp或更新版本。数据库系统:sql server 2005或更新版本。第三章 系统分析3.1可行性分析3.1.1 技术可行性就目前的开发技术及辅助工具来说,系统需要的功能能够快速地实现。就目前使用的开发技术来说规划系统的功能目标应该能够达到;利用spring+struts2+hibernate框架技术加上sql server数据库管理系统,在规定的时间内开发工作基本能够实现需求分析中系统

6、所要求的功能。3.1.2 经济可行性经济可行性分析中最重要的内容之一是成本效益分析。对于一个基于计算机系统的研制项目要在经济方面评价其是否合理,成本效益分析要估计研制开发的花费并与收益(包括有形的可以用货币计数的及无形的利益)衡量比较。如果计算机和服务器在已有的情况之下,系统方案成本小,不需要投入太多的资金,其运行跟维护所费资金又少,投入使用后可以节省大量人力、物力、时间等资源,可以提高企事业单位的工作效益。反之,购置计算机、服务器等硬件设备的费用是相当贵的,在中国,劳动力的成本相对来说较低,从经济上考虑,这时用人力代替电脑工作就节约了成本。所以要从现有设备来考虑运用哪种方案,经济上是可行的。

7、3.1.3 法律可行性该项目为用户自行开发,只在校园网内部使用,法律方面不会存在侵犯专利权、侵犯版权等问题。3.2 需求分析3.2.1 功能划分本系统实现学生成绩增、删、改、查等操作,能够查询每门课程的具体成绩,其功能大致如下:学生成绩管理系统学生信息管理课程信息管理成绩信息管理学生信息录入学生信息查询课程信息录入课程信息查询成绩信息录入学生成绩查询图3-1 系统功能结构图3.2.2 系统用例图3-2 系统用例图(一) 图3-3 系统用例图(二)3.2.3 功能描述u 添加学生成绩使用者:系统管理员目的:添加学生成绩用例图:见系统用例图(二)基本事件流:1、管理员进入添加学生成绩页面,本用例开

8、始;2、系统显示添加学生成绩页面,选择学生和课程,输入该门课程成绩。3、确认添加,系统保存学生成绩信息。本用例结束。u 修改学生成绩使用者:系统管理员目的:修改学生成绩用例图:见系统用例图(二)基本事件流:1、管理员进入添加学生成绩页面,本用例开始;2、系统显示修改学生成绩页面,选择学生和课程,重新输入该门课程成绩。3、确认修改,系统保存学生成绩信息。本用例结束。u 删除学生成绩使用者:系统管理员目的:删除学生成绩用例图:见系统用例图(二)基本事件流:1、管理员进入删除学生成绩页面,本用例开始;2、系统显示删除学生成绩页面,选择要删除的学生成绩,点击删除。3、确认删除,系统删除学生成绩信息。本

9、用例结束。u 查询学生成绩使用者:系统管理员目的:查询学生成绩用例图:见系统用例图(二)基本事件流:1、管理员进入学生成绩查询页面,本用例开始;2、系统显示学生成绩页面,点击学号,显示该学生所有课程成绩信息。本用例结束。3.2.4 性能需求u 数据精确度(1)要求输入数据与接收数据保持一致性。(2)严格按照系统数据输入格式进行输入,否则系统不给予响应处理。u 时间特性(1)客户端一般响应时间控制在1-2秒。第四章 系统设计4.1 流程设计4.1.1 工作流程图成绩信息录入成绩信息录入页开始结束输入成绩信息处理提交处理成功处理失败成绩列表 成绩信息删除成绩信息删除页开始结束删除成绩信息是否删除否

10、是成绩列表删除成功删除失败成绩信息修改成绩信息修改页开始结束修改成绩信息是否修改否是成绩列表修改成功修改失败成绩信息查询成绩信息查询页开始结束输入查询条件处理提交处理成功处理失败输出查询结果4.2 数据库设计4.2.1 e-r图经过调查分析,系统总共有5个实体:专业(专业号,专业名,人数,辅导员)学生(学号 学生姓名 性别 专业编号 出生时间 总学分 备注)课程(课程号, 课程名, 课程学期, 学生, 学分 备注)成绩(学号, 课程号,成绩,学分)登录(编号,学号,口令)该系统的数据库设计实体关系图(e-r图)如下:专业编号专业学分出生日期学生学号姓名性别照片备注学生实体e-r图成绩课程号学分

11、学号成绩成绩实体e-r图课程备注课程学期学分课程名课程号学生课程实体e-r图编号口令登录学号用户实体er图专业名人数专业表辅导员专业号专业实体er图整体e-r图:口令登录课程号管理查询编号成绩学生姓名学号学分课程号所修所属课程专业专业名专业号课程名e-r模型转换成关系数据库e-r模型转换成关系数据库的一般规则:1. 将每一个实体转换成一个关系。2. 所有主码必须定义非空。3. 对于二元联系,按照下列规则定义外码: a.一对一联系:将”一”表中的主码作为外码放在”多”表中。如上图中的学生与用户的关系,学生只有一个用户号。 b.弱实体:将父表的主码作为外码放在弱实体中。如上图学生与亲属的关系中亲属

12、就是弱实体。 c.一对多联系:将一个表的主码作为外码放在另一个表中。如上图中的专业对与课程的联系。 d.多对多联系:建立复合实体,复合实体的主码由两个父实体的主码复合组成。如上图中学生与课表的关系就是多对多的联系,应建立一个复合实体:成绩。4.2.2 逻辑设计一共有四个关系模式,其结构如下:学生表(学号 学生姓名 性别 专业编号 出生时间 总学分 备注 照片) xsb(xh xm xb zy_id cssj xf bz zp) 课程表(课程号, 课程名, 课程学期, 学生, 学分 备注) kcb(kch kcm kcxq xs xf bz)登陆表(编号,学号,口令) dlb(bh,xh ,kl

13、)学生课程表(学号,课程号,课程学期,学生,学分) kcb(xh,kch,kxxq,xs,xf)成绩表(学号, 课程号,成绩,学分) cjb(xh,kch,cj,xf)专业表(专业号,专业名,人数,)zyb(zyh zym rs )将6个关系模式转换为关系表xsb(xh xm xb zy_id cssj xf bz zp)kcb(kch kcm kcxq xs xf bz)dlb(bh,xh ,kl) kcb(xh,kch,kxxq,xs,xf)cjb(xh,kch,cj,xf) zyb(zyh zym rs )4.2.3 概要设计用户在登录成功后进入成绩管理页面,该页面由几个功能子模块组成,

14、通过点击各个子功能模块即可实现相应的功能。本人负责成绩的增删改查运行界面如下:增加与修改:查询:删除第五章 测试与评价本学生成绩管理系统由三大模块组成,每个模块相互联系又相互独立。这个学生成绩管理系统存在着很多不足之处,由于自己本身编程能力的问题,这个系统可以实现的功能非常有限。只能实现学生管理系统最基本的功能,可以进行简单的输入、输出学生资料,查询和修改学生信息,能对系统所作的修改、操作进行保存等。而且在每个模块也有不足的地方,比如在输入学生资料时,对每个信息项没有严格的规定,可以输入任何的字符。这有待以后努力,更详尽的实现模块的功能。其实在有些细节方面还是要特别注意啊,比如分号的添加,的方

15、向问题,函数的返回值等问题,虽然容易改掉,但是很容易养成不好的习惯,而且还会浪费时间,所以在一开始写的时候就要很仔细,这样才能保证程序编的精细,同时若出现很多这样的错误的话,在编写程序的时候也会心里烦的,所以在编程的时候要认真仔细。总 结对于完整的系统开发,文档资料的准备必不可少,本次系统开发较为成功的地方在于需求分析,由于需求分析的确认,在开发过程中未出现修改数据库字段的情况,因而减少了很多不必要的工作。开发过程中每位开发人员都应具备一份需求分析,对照系统需求进行设计。学习是个不断探索的过程,其中可能遇到无数自己无法解决的困难,网络的力量是无穷的,信息时代善于利用网络的人才是会学习的人。软件

16、开发,尤其是基于web网站的设计,开发人员应充分利用网络资源,书本上的知识是有限的。编程人员应具备做笔记的良好习惯,一个问题解决了,没做笔记,不久又忘记了。在下次遇到同样的问题,结果又要花大把时间去弄明白,既浪费时间又浪费精力。尤其是想做程序员一线的,养成记笔记的习惯往往收益无穷。 在课程设计之前,因为有了综合实验的经验与教训,明白了写代码这一步是非常重要的,因为当你把代码输进去之后,并编译让其运行,发现通过不了,再来检查出问题,是很费费力的事情,因此分析和规划代码是很重要的,最重要的是要把逻辑结构写好,这样就不会出现大问题,写代码就要先找出核心的内容,用多种方法来实现核心部分,这样可以尽可能

17、的避免发现逻辑或编译不支持的错误。 通过本次论文设计,我初步学会了论文设计的基本方法,学会了怎样去借鉴别人的方法和经验,知道了如何整合资料和处理这些资料的能力,这位以后做毕设的论文打下了基础,使我感觉比较好的是有一种成功的喜悦,虽然在编译的时候会经常因为一些小的错误而心烦意乱,但是也不失为一件好事,失败的越多积累的经验越丰富,对人的考验也比较多,那么在最后编译成功时的喜悦就越浓烈,也是自己的能力有了进一步的提高。由于知识和经验的不足,这个程序编写的不是很尽如人意,但是融合了自己的心血,就觉得是最好的,所以在以后还是需要较多的努力的,还是会在以后的学习过程中不断地提高和改进的。致 谢javaee

18、学习即将结束,在本文初步完成之时,诚挚的感谢在课程设计中给予我帮助的老师、同学、朋友。首先,我要衷心的感谢我的授业老师,谢老师的悉心教导和帮助,在javaee的学习中,谢老师尽可能多的教授我知识,悉心的帮助我解决学习中遇到的难题,使得我在此次课程设计中得以学以致用,获益良多。其次,要感谢所有教授我课程的老师,是你们的辛勤劳动才有了我现在的基础,再次表示衷心的感谢!最后,对参与本次课程设计答辩的老师以及评阅本文的老师表示由衷的感谢!附录1.cjaction.javapackage org.action;import java.util.list;import java.util.map;impo

19、rt org.dao.cjdao;import org.dao.xsdao;import org.model.cjb;import org.model.cjbid;import org.model.kcb;import org.service.kcservice;import org.tool.pager;import com.opensymphony.xwork2.actioncontext;import com.opensymphony.xwork2.actionsupport;public class cjaction extends actionsupportprivate int p

20、agenow=1;private int pagesize=8;private cjb cj;private xsdao xsdao;private kcservice kcservice;private cjdao cjdao;public void setxsdao(xsdao xsdao) this.xsdao = xsdao;public void setkcservice(kcservice kcservice) this.kcservice = kcservice;public string execute() throws exception list list1=xsdao.f

21、indall(1, xsdao.findxssize();list list2=kcservice.findall(1, kcservice.findkcsize();map request=(map)actioncontext.getcontext().get(request);request.put(list1, list1);request.put(list2, list2);return success;/查询所有学生成绩public string xscjinfo()throws exceptionlist list=cjdao.findallcj(this.getpagenow()

22、, this.getpagesize();map request=(map)actioncontext.getcontext().get(request);request.put(list,list);pager page=new pager(this.getpagenow(),cjdao.findcjsize();system.out.println(cjdao.findcjsize();request.put(page, page);return success;/查找学生成绩public string findxscj()throws exceptionlist list=cjdao.g

23、etxscjlist(cj.getid().getxh();if(list.size()0)map request=(map)actioncontext.getcontext().get(request);request.put(list,list);return success;elsereturn error;public string addorupdatexscj()throws exceptioncjb cj1 = null;cjbid cjid1=new cjbid();cjid1.setxh(cj.getid().getxh();cjid1.setkch(cj.getid().g

24、etkch();if(cjdao.getxscj(cj.getid().getxh(), cj.getid().getkch()=null)cj1 = new cjb();cj1.setid(cjid1);elsecj1 = cjdao.getxscj(cj.getid().getxh(), cj.getid().getkch();kcb kc1=kcservice.find(cj.getid().getkch();cj1.setcj(cj.getcj();if(cj.getcj()60|cj.getcj()=60)cj1.setxf(kc1.getxf();elsecj1.setxf(0);

25、cjdao.saveorupdatecj(cj1);xscjinfo();return success;/删除学生成绩public string deleteonexscj()throws exceptionstring xh=cj.getid().getxh();string kch=cj.getid().getkch();cjdao.deletecj(xh, kch);map request=(map)actioncontext.getcontext().get(request);request.put(tipmessage, 删除成功);xscjinfo();return success

26、;public int getpagenow() return pagenow;public void setpagenow(int pagenow) this.pagenow = pagenow;public int getpagesize() return pagesize;public void setpagesize(int pagesize) this.pagesize = pagesize;public cjb getcj() return cj;public void setcj(cjb cj) this.cj = cj;public cjdao getcjdao() retur

27、n cjdao;public void setcjdao(cjdao cjdao) this.cjdao = cjdao;2.cjdao.javapackage org.dao;import java.util.list;import org.model.cjb;import org.model.cjbid;public interface cjdao /插入学生成绩public void saveorupdatecj(cjb cj);/根据学号和课程号删除学生成绩public void deletecj(string xh,string kch);/根据学号和课程号查询学生成绩public

28、cjb getxscj(string xh,string kch);/分页显示所有学生成绩public list findallcj(int pagenow,int pagesize);/查询某学生成绩public list getxscjlist(string xh);/查询某们课程的学生成绩public list getkccjlist(string kch);/删除某学生的成绩public void deleteonexscj(string xh);/删除某门课程的成绩public void deleteonekcinfo(string kch);/查询一共多少条成绩记录public i

29、nt findcjsize();3.cjdaoimp.javapackage org.dao.impl;import java.util.list;import org.dao.cjdao;import org.hibernate.*;import org.model.cjb;import org.model.cjbid;import org.springframework.orm.hibernate3.support.hibernatedaosupport;public class cjdaoimp extends hibernatedaosupport implements cjdaopublic void deletecj(string xh, string kch) gethibernatetemplate().delete(getxscj(xh, kch);public void deleteonekcinfo(string kch) gethibernatetemplate().deleteall(this.getkccjlist(kch);public void deleteonexscj(string xh) gethibernatetemplate().deleteall(getxscjlist(xh);public list findallcj(i

温馨提示

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

评论

0/150

提交评论