毕业设计管理系统的设计与实现设计说明书_第1页
毕业设计管理系统的设计与实现设计说明书_第2页
毕业设计管理系统的设计与实现设计说明书_第3页
毕业设计管理系统的设计与实现设计说明书_第4页
毕业设计管理系统的设计与实现设计说明书_第5页
已阅读5页,还剩78页未读 继续免费阅读

下载本文档

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

文档简介

年4月19日毕业设计管理系统的设计与实现设计说明书文档仅供参考,不当之处,请联系改正。毕业设计管理系统的设计与实现XXX(陕西理工学院计算机科学与技术系计算机科学与技术专业075班级,陕西汉中723000)指导教师:XXX【摘要】本系统解决以往毕业生毕业设计中遇到的工作效率低,管理难度大和数据统计不方便等问题。本系统采用软件工程设计思想设计,利用J2EE平台和SQLServer数据库的集合,开发一个基于web技术的B/S结构的毕业设计管理系统。经过该系统实现毕业设计立题、学生选题、教师对选题管理等问题。【关键词】SQLServer;J2EE;毕业设计管理;B/S结构

TheImplementationofDesignSubjectSelectedSystemForGraduationStudentXXX(Grade07,Class5,Computerscienceandtechlonogy,ComputerscienceandtechlonogyDept,ShaanxiUniversityofTechnology,Hanzhong723000,Shaanxi)Tutor:XXXAbstract:Thissystemcanresolvetheproblemwhichwemetintheworkofgraduationdesign,suchasinefficiencyinthework,inconvenientforcountthedata,andhardtomanagethedata.ThissystemwhichbasedonthewebtechnologyandB/SstructureuseJ2EEasitsplatformandSQLServerforitsdatabase.It'sasystemthattomanagethegraduationdesign.Thissystemimplementthefunctionofaddingsubject,selectingthesubject,andmanagingthesubject.Keywords:SQLSERVER;J2EE;Graduationdesignmanagement;B/Sstructure

TOC\o"1-3"\h\u32501.概述 184681.1背景分析 1153881.2毕业设计系统的现状 123932需求分析 2144362.1功能需求 2223822.2开发与运行环境 2257252.3系统实现过程 2293713总体设计 330543.1系统模块设计 320443.2数据事项分析 3170403.3数据库模型图 4137034.详细设计 5101704.1数据库设计 557094.1.1关系模式 5183684.1.2数据库表的结构定义 555824.2数据库中关系设计 8139844.3操作流程 9237205系统实现 1053215.1建立数据库 10252615.2程序设计 10305575.2.1主界面 10232065.2.2基本的实现类 10141885.2.3基本的信息管理模块 1133715.2.4登录模块 1220235.2.5立题模块 1490166系统测试与性能分析 16287756.1系统测试方案 1698286.2系统功能测试 1631486总结 1927627致谢 205540参考文献 212280外文资料 2227652外文资料翻译 288555附录A:源码 3225777附录B:软件使用说明书 381.概述1.1背景分析毕业设计管理问题是高校教师必须面正确工作,但陕西理工学院各个院系一直使用Excel表格管理、分析毕业设计。使用Excel软件分析统计毕业设计制作情况,该软件存在许多不足,如:立题不灵活,选题必须集中,对于整个院系选题有诸多不便;毕业设计评分也必须集中录入等;统计毕业设计制作情况也不能自动完成。毕业设计是实现高等学校人才培养目标的重要教学环节,也是培养大学生创新能力、实践能力和创业精神的重要实践环节,是学生提高专业素质和实践能力的综合训练,是对学生大学期间学习效果的全面检验。经过这套毕业设计管理软件能够解决毕业设计过程管理工作中存在的工作效率低,交互性差等问题,对高校管理学生毕业设计意义重大。因此为了克服上述缺陷,编写一个使实现教师立题、学生选题、教师对选题信息进行管理的系统,再根据各个评分给出综合测评,达到管理自动化、精确化、智能化是非常必要的,因此能够把毕业设计管理系统作为毕业设计的课题,正好能够利用所学知识开发一个毕业设计管理系统来实现毕业设计的管理。1.2毕业设计系统的现状 本课题开发的目的在于解决以往毕业设计管理过程中存在的问题,解决效率低、容易出错等问题,从而对毕业设计信息进行更好的管理,对毕业设计的数据进行统计分析。提高各个管理效率,减少教师工作量。其次,经过本课题能够使自己更进一步的了解软件开发流程,同时对J2EE平台与MSSQLSERVER有进一步的了解,使用更加熟练。

2需求分析2.1功能需求高等院校的毕业设计涉及到了教师立题、学生选题、课题管理功能,这些功能则需要教研室、办学层次、课题类型、课题来源、教师、学位、专业、专业方向、教师、学生和课题等信息多种信息的支持。从管理的角度能够将毕业设计管理系统分为八个部分:课题信息管理、职称学位管理、专业信息管理、用户信息管理、立题信息管理、选题信息管理、其它信息管理和统计信息管理。课题信息管理、职称学位管理、专业信息管理、用户信息管理、立题信息管理、选题信息管理和其它信息管理包括这些信息的添加、删除、修改及查询操作;统计信息包括学生人数信息、学生选题数目、题目来源、题目类型、毕业论文(设计)的篇数统计等信息的操作。核心功能主要为教师立题、学生选题、课题管理。2.2开发与运行环境毕业设计管理系统的开发与运行环境如下:开发环境:Window7+JDK6.0开发工具:MyEclipse6.5数据库管理系统:MSSQLServer服务器:tomcat6.0运行环境:Window98/ME//XP/7以及Linux2.3系统实现过程首先根据系统功能分析设计出数据库,包括各个数据表和数据表关系图的详细结构。实现功能模块时,因为要实现教师立题、学生选题以及选题管理模块,故应先将职称、学位、专业信息、教研室、办学层次、课题类型、课题来源这些独立模块分别实现,其次实现独立模块分别实现,在实现学生、教师模块,最后实现立题、课题管理模块。即在这里分别对系统各个功能模块分别对立设计和调试,最后将各个模块经过菜单栏集成到一起,最后进行系统整体设计的调试。在访问数据库时,本系统采用hibernate实现数据库的操作,在基本实现类中实现数据库的各种访问操作,其它的类直接或间接继承基本类。这种实现方式能够减少代码冗余,避免数据库的重复连接,从而提高系统的开发效率。

3总体设计3.1系统模块设计根据系统功能分析,得到如图3.1所示的系统功能模块结构图。图3.1系统功能模块图3.2数据事项分析根据系统的功能,模块结构和管理流程,以及毕业设计管理系统的需求,总结出如下的数据项:学位信息数据:学位代码,学位名称。教研室信息数据:教研室代码,教研室名称。专业信息数据:专业代码,专业名称。专业方向信息数据:方向代码,方向名称。办学层次信息数据:办学层次代码,办学层次名称。职称信息数据:职称代码,职称名称。课题来源信息数据:课题来源代码,课题来源名称。课题类型信息数据:课题类型代码,课题类型名称。教师信息数据:工号,教师姓名,性别,职称,所属教研室,联系电话,电子邮件地址,是 否为管理员,学位信息,登录密码。学生信息数据:学号,姓名,性别,所在年级,专业信息,专业方向信息,层次类别,联 系电话,电子邮件,登录系统口令,是否选题标志,毕业年份,指导教师成绩,评阅成绩, 答辩成绩1,答辩成绩2,答辩成绩3,答辩成绩4,答辩成绩5,答辩平均成 绩,百分制 总成绩,五级总成绩。选题信息数据:课题编号,立题教师,课题名称,所属专业信息,所属专业方向信息,课 题来源信息,课题类型信息,课题完成地点,完成课题所需课时,课题内容的描述,课题 已具备的条件,完成人具备的条件,最终成功形式,初审意见,终审意见,立题时间,初 审标志,初审时间,终审标识,终审时间,选该选题学生,该选题是否已选,老题还是新 题,老题题号。3.3数据库模型图根据系统需求,分析出数据库模型图,如如3.2所示。图3.2数据库模型图

4.详细设计4.1数据库设计4.1.1关系模式根据数据事项分析和数据库模型图得出关系模式如下:1)学位信息数据:标识列,学位代码,学位名称。2)教研室信息数据:标识列,教研室代码,教研室名称。3)专业信息数据:标识列,专业代码,专业名称。4)专业方向信息数据:标识列,方向代码,方向名称。5)办学层次信息数据:标识列,办学层次代码,办学层次名称。6)职称信息数据:标识列,职称代码,职称名称。7)课题来源信息数据:标识列,课题来源代码,课题来源名称。8)课题类型信息数据:标识列,课题类型代码,课题类型名称。9)教师信息数据:标识列,职称(外键),所属教研室(外键),学位信息(外键),工号,教 师姓名,性别,联系电话,电子邮件地址,是否为管理员,登录密码。10)学生信息数据:标识列,专业信息(外键),专业方向信息(外键),层次类别(外键),学 号,姓名,性别,所在年级,联系电话,电子邮件,登录系统口令,是否选题标志,毕业 年份,指导教师成绩,评阅成绩,答辩成绩1,答辩成绩2,答辩成绩3,答辩成绩4,答辩 成绩5,答辩平均成绩,百分制总成绩,五级总成绩。11)选题信息数据:标识列,立题教师(外键),所属专业信息(外键),所属专业方向信息(外 键),课题来源信息(外键),课题类型信息(外键),选该选题学生(外键),课题编号, 课题名称,课题完成地点,完成课题所需课时,课题内容的描述,课题已具备的条件,完成人 具备的条件,最终成功形式,初审意见,终审意见,立题时间,初审标志,初审时间, 终审标识,终审时间,该选题是否已选,老题还是新题,老题题号。4.1.2数据库表的结构定义数据表名称与结构如下:学位信息数据表:表名(tb_degree),结构见表4.1。字段名称类型长度能否为空备注idint4NotNull标识列,主键degreeNonvarchar20NotNull学位代码degreeNamenvarchar30NotNull学位名称表4.1tb_degree表结构教研室信息数据表:表名(tb_department),结构见表4.2。字段名称类型长度能否为空备注idint4NotNull标识列,主键departNonvarchar20NotNull教研室代码departNamenvarchar30NotNull教研室名称表4.2tb_department表结构专业信息数据表:表名(tb_major),结构见表4.3表4.3tb_major表结构字段名称类型长度能否为空备注idint4NotNull标识列,主键majorNonvarchar20NotNull专业代码majorNamenvarchar30NotNull专业名称专业方向数据表:表名(tb_interested),结构见表4.4表4.4tb_interested表结构字段名称类型长度能否为空备注idint4NotNull标识列,主键interestedNonvarchar20NotNull专业方向代码interestedNamenvarchar30NotNull专业方向名称办学层次数据表:表名(tb_level),结构见表4.5字段名称类型长度能否为空备注idint4NotNull标识列,主键levelNonvarchar20NotNull办学层次代码levelNamenvarchar30NotNull办学层次名称表4.5tb_level表结构职称数据表:表名(tb_title),结构见表4.6字段名称类型长度能否为空备注idint4NotNull标识列,主键titleNonvarchar20NotNull职称代码titleNamenvarchar30NotNull职称名称表4.6tb_title表结构课题来源数据表:表名(tb_subSource),结构见表4.7表4.7tb_subSource表结构字段名称类型长度能否为空备注idint4NotNull标识列,主键sourceNonvarchar20NotNull课题来源代码sourceNamenvarchar30NotNull课题来源名称课题类型数据表:表名(tb_subType),结构见表4.8字段名称类型长度能否为空备注idint4NotNull标识列,主键typeNonvarchar20NotNull课题类型代码typeNamenvarchar30NotNull课题类型名称表4.8tb_subType表结构教师数据表:表名(tb_teacher),结构见表4.9字段名称类型长度能否为空备注idint4NotNull标识列,主键teacherNonvarchar20NotNull教师工号teacherNamenvarchar30NotNull教师姓名sexnvarchar20NotNull性别Title_idint4Null职称代码(外键)department_idint4Null所属教研室代码(外键)degree_idint4NotNull学位信息(外键)telphonenvarchar30NotNull联系电话emailnvarchar20NotNull电子邮件地址adminboolean1NotNull是否是管理员passwordnvarchar20NotNull登录密码表4.9tb_teacher表结构学生数据表:表名(tb_student),结构见表4.10字段名称类型长度能否为空备注idint4NotNull标识列,主键studentNonvarchar20NotNull学号stuNamenvarchar20NotNull姓名sexnvarchar20NotNull性别stuClassint4Null所在年级major_idint4NotNull专业信息(外键)level_idint4NotNull层次类别(外键)如本科、专升本interested_idint4NotNull专业方向信息(外键)telphonenvarchar20NotNull联系电话emailnvarchar20NotNull电子邮件地址passwordnvarchar20NotNull登录系统口令electiv_flagboolean1NotNull是否选题标志grade2int4Null毕业年份tutorResultint4Null指导教师成绩estimatorResultint4Null评阅成绩appraiser1int4Null答辩成绩1appraiser2int4Null答辩成绩2appraiser3int4Null答辩成绩3appraiser4int4Null答辩成绩4appraiser5int4Null答辩成绩5averageint4Null答辩平均成绩finallyPersentint4Null百分制总成绩finallyFivenvarchar20Null五级总成绩表4.10tb_student表结构课题数据表:表名(tb_subject),结构见表4.11字段名称类型长度能否为空备注idint4NotNull标识列,主键subjectNonvarchar20NotNull课题编号teacher_idint4NotNull立题教师编号(外键)subjectNamenvarchar20NotNull课题名称major_idint4NotNull所属专业代码(外键)interested_idint4NotNull所属方向代码(外键)subSource_idint4NotNull课题来源(外键)subType_idint20NotNull课题类型(外键)addressnvarchar20NotNull课题完成地点timesint1NotNull完成所需课时数contentnvarchar50Null课题内容的描述conditionnvarchar50Null课题已具备的条件requestnvarchar50Null完成人具备的条件resultnvarchar50Null最终成果形式checkUpFirstnvarchar50Null初审意见checkUpLastnvarchar50Null终审意见fillInDatedatetime8Null立题时间checkFlage1boolean1Null初审标志checkDate1datetime4Null初审时间checkFlage2boolean1Null终审标志checkDate2datetime8Null终审时间student_idint4Null该选题学生学号(外键)electivFlagboolean1Null该选题是否已选oldOrNewboolean1Null老题还是新题oldSubjectNonvarchar20Null老题题号表4.11tb_subject表结构4.2数据库中关系设计数据库中的表与表之间的关系如表4.12所示表4.12关系主键表主键表字段外键表字段外键表tb_level(办学层次)id(标识列)level_idtb_student(学生)tb_major(专业)id(标识列)major_idmajor_idtb_student(学生)

tb_subject(课题)tb_interested(专业方向)id(标识列)interested_id

interested_idtb_student(学生)

tb_subject(课题)tb_title(职称)id(标识列)title_idtb_teacher(教师)tb_degree(学位)id(标识列)degree_idtb_teacher(教师)tb_department(教研室)id(标识列)department_idtb_teacher(教师)tb_student(学生)id(标识列)student_idtb_subject(课题)tb_teacher(教师)id(标识列)teacher_idtb_subject(课题)tb_subSource(课题来源)id(标识列)subSource_idtb_subject(课题)tb_subType(课题类型)id(标识列)subType_idtb_subject(课题)4.3操作流程立题流程是教师添加一个课题,然后再由管理员进行审核,经过初审和终审则进入选题库。立题流程如图4.1所示图4.1立题流程图

5系统实现5.1建立数据库数据使用SQLServer,数据名为:graduate。5.2程序设计5.2.1主界面主界面分为上、左、右三部分,其中上边为显示系统系统及用户信息,左边为菜单栏,右边为主要展现页面,如图5.1所示。图5.1主页面5.2.2基本的实现类经过hibernate提供的hibernateTemplat能够执行hql语句,在基类中分别实现要调用的方法。其中主要的方法如下所示: publicvoiddelete(Objectentity){this.getHibernateTemplate().delete(entity);} publicvoiddelete(Class<?>clazz,Serializableid){if(get(clazz,id)!=null) this.getHibernateTemplate().delete(get(clazz,id));} publicintcount(finalStringhql,Object...params){ List<Long>list=getHibernateTemplate().find(hql,params); if(list.size()>0){returnlist.get(0).intValue();} return0;} publicList<T>findEntityListByHql(Stringhql,Object...params){ returnthis.getHibernateTemplate().find(hql,params);} publicList<T>find(Stringhql,Object...params){ returngetHibernateTemplate().find(hql,params); } publicvoidinsert(Objectentity){this.getHibernateTemplate().save(entity);} @Autowired privateHibernateTemplatehibernateTemplate; publicHibernateTemplategetHibernateTemplate(){returnhibernateTemplate;} publicvoidsetHibernateTemplate(HibernateTemplatehibernateTemplate){this.hibernateTemplate=hibernateTemplate;}}5.2.3基本的信息管理模块基本信息包括:专业信息、专业方向、职称、学位、课题类型、课题来源、教研室、办学层次等信息,因为起实现类似,在此只对教研室信息的管理做出说明。添加窗口如图5.2所示,列表如图5.3所示,修改窗口如如5.4所示。图5.2添加教研室窗口图5.3教研室列表窗口图5.4修改教研室窗口

主要实现代码如下: /** *添加一个教研室信息 *@return教研室列表页面 */ publicStringadd(){ getDepartmentService().saveOrUpdate(getDepartment()); getPage().setData(getDepartmentService().findByPage(getPage())); return"department-list";} /** *查看分页信息的教研室信息 *@returnpage.data */ publicStringlist(){ getPage().setData(getDepartmentService().findByPage(getPage())); return"department-list";} /** *修改一个教研室信息 *@return教研室列表页面 */ publicStringupdate(){ getDepartmentService().saveOrUpdate(getDepartment()); getPage().setData(getDepartmentService().findByPage(getPage())); return"department-list";}5.2.4登录模块登录分别为管理员、教师和学生三个角色登录,在登录的时候用户须选择角色进行登录,登录界面如图5.5所示。图5.5登录界面主要实现代码如下: publicStringlogin()throwsIOException{ HttpServletResponseresponse=ServletActionContext.getResponse(); this.beforAnsy(); PrintWriterout=response.getWriter(); HttpSessionsession=ServletActionContext.getRequest().getSession(); Stringsrand=(String)session.getAttribute("code");//获取验证码 Stringuname=getTeacher().getTeacherNo(); //获取用户名 Stringpwd=getTeacher().getPassword(); //获取密码 Strings=getTeacher().getCore(); //获取用户角色 if(!getVerifycode().equalsIgnoreCase(srand)){ out.print("<metahttp-equiv='Content-Type'content='text/html';charset='utf-8'/>"); out.print("<script>alert('验证码错误!'); window.location='/GraduateDesign/index.jsp'</script>");}else{if(s=="student"||s.equals("student")){ //判断如果角色是学生的话则进行学生登录校验 if(getStudentService().checkLogin(uname,pwd)){ setStudent(getStudentService().getByNo(uname)); session.setAttribute("user",getStudent()); return"index2"; }else{ out.print("<metahttp-equiv='Content-Type'content='text/html';charse= 'utf-8'/>"); out.print("<script>alert('用户名或密码错误 ');window.location='/GraduateDesign/index.jsp'</script>}");}} elseif(s=="teacher"||s.equals("teacher")){ //如果角色是教师的话则进行教师教研登录 if(getTeacherService().checkLogin(uname,pwd)){ setTeacher(getTeacherService().getByNo(uname)); session.setAttribute("user",getTeacher()); return"index1"; }else{ out.print("<metahttp-equiv='Content-Type'content='text/html'; charset='utf-8'/>"); out.print("<script>alert('用户名或密码错误 ');window.location='/GraduateDesign/index.jsp'</script>}");} }else{ //如果角色是管理员的话就进行管理员登录校验 if(getTeacherService().checkLogin(uname,pwd,true)){ setTeacher(getTeacherService().getByNo(uname)); session.setAttribute("user",getTeacher()); return"index"; }else{ out.print("<metahttp-equiv='Content-Type'content='text/html'; charset='utf-8'/>"); out.print("<script>alert('用户名或密码错误,或者检查你是否为管理员 ');window.location='/GraduateDesign/index.jsp'</script>}");}}} returnnull;}5.2.5立题模块添加课题如图5.6所示。图5.6添加课题添加课题主要代码如下: publicStringadd(){ getSubjectService().saveOrUpdate(getSubject()); getPage().setData(getSubjectService().findByPage(getPage())); return"subject-list";}初次审核和最终审核初次审核和最终审核实现基本一致,故在此只展现最终审核。点击左侧的菜单最终审核即可跳转至要审核的列表页面,如5.7图所示。再点击【终审】按钮即可跳转至审核页面,如图5.8所示。图5.7最终审核列表图5.8最终审核主要代码如下所示:publicStringcheck2(){ Subjectsubject=getSubjectService().getById(getSubject().getId()); subject.setCheckDate2(getSubject().getCheckDate2());//设置初审日期 subject.setCheckUpLast(getSubject().getCheckUpLast());//设置初审意见 subject.setCheckFlage2(getSubject().isCheckFlage2());//设置最终审核标志 getSubjectService().saveOrUpdate(subject); getPage().setData(getSubjectService().findByPage2(getPage())); return"subject-list2"; }

6系统测试与性能分析6.1系统测试方案根据系统测试目的结合面向对象的方法,给出以下的测试方案:先对对立模块进行测试,因为不能保证独立模块的正确性也就无法保证与之关联的模块的正确性,如果独立模块在开发的后期发现,则要改动的地方相对会很多,因此在开发非独立模块之前要确独立模块已开发完成且测试正确。设计测试测试用例时,给出一个测试预期结果,测试的结果要和预期结果一致才能够。在测试之时要考虑到不合法输入的处理。6.2系统功能测试根据系统功能,采用黑盒测试方法,分别对专业信息、专业方向、职称、学位、课题类型、课题来源、教研室、办学层次、学生、教师、立题、选题分别做出测试,该系统均能实现以上功能。由于功能太多,故在这里只展现部分测试。专业信息管理测试添加一个专业代码为003,专业名称为网络工程,运行前的专业列表如图6.1所示,添加成功后的界面如图6.2所示。图6.1添加前的专业列表界面图6.2添加后的专业列表界面立题管理测试添加一个为立题测试的课题,然后分别做出初审和终审,审核完成后查看其是否已进入选题库。在添加选题的时候假如只输入课题名,则不能提交,会有如图6.3所示;当成功添加一个课题后则能够在初审列表中查看,如图6.4所示;初审完成后则会出现在终审列表,如图6.5所示。终审完成后在学生选题列表中就能够找到该选题,如图6.6所示。图6.3添加课题非法输入图6.4初审列表图6.5初审列表图6.6选题列表(3)选题测试当学生用户登录成功以后就能够对自己的选题进行查看,如果没有选题则能够进行选题。如果该学生没有进行选题则会弹出对话框进行提示,如图6.7所示;如果学生已经选题,再进行选题的话同样会提示,如图6.8所示。图6.7未选题提示

图6.8重复选题提示

总结经过这段时间的努力,完成了毕业设计管理系统,而且达到了最初的期望设计要求。系统实现了毕业设计立题、学生选题以及课题管理的功能。将这些信息存储在数据库中,并能对其相应的修改、删除。由于时间爱你仓促以及本人水平有限,本系统还有一些不完善之处,即系统不能实现批量处理毕业设计成绩的添加,恳请老师给出宝贵的意见和建议。我会继续努力学习知识,完善自我,进一步努力去改进系统,使其更符合实际的使用要求,达到真正客户需要的系统。本次为期三个月的毕业设计是大学四年所学知识的综合运用,是理论与实践相结合的产物,在此期间,不但巩固了所学的专业知识。而且还学到了许多课堂上和书本上无法学到的实践知识,提高了自学能力,增强了专业技术的水平,为今后从事本专业的工作打下一定的基础。

致谢大学的学习生活即将随着本次毕业设计结束而结束,在此,我要感谢所有曾经教导过我的老师和关心过我的同学,她们在我成长过程中给予了我很大的帮助。本文能够成功的完成,要特别感谢我的指导老师XXX。认真负责的工作态度,严谨的治学精神和身后的理论与专业水平使我受益匪浅。本次毕业设计从选题到完成,每一步都是在李老师的指导和帮助下完成的,倾注了李老师大量的心血。李老师给我的很大的帮助,使我得到了不少的提高,这对于我以后的工作和学习中是一笔巨大的财富,感谢她的耐心辅导。在此,瑾向李老师表示崇高的敬意和衷心的感谢!另外,在系统开发过程中党欣同学也给予我很大的帮助,解决了不少技术问题,使的系统能及时开发完成,在这里表示感谢。本论文的顺利完成,离不开各位老师、同学和朋友的关心及帮助。朋友、同学之间的相互帮助、相互关怀让我十分感动。每当回想起在一块讨论系统时的一个个片段、生活中不起眼的点滴,都会让人感到无比亲切、温馨。祝和我一起走过大学四年的朋友、同学一生幸福、前程似锦。在此一并像她们表示感谢!

参考文献[1]刘芳.数据库原理及应用[M].北京理工大学出版社..[2]徐小青,路哓村等译.MySQL完全手册[M].北京:电子工业出版社,.[3]林上杰,林康司.JSP2.0技术手册[M].北京:电子工业出版社,.5.[4]张海藩编著.软件工程导论[M].北京:清华大学出版社,.[5]夏昕,曹晓钢,唐勇.深入浅出Hibernate[M].北京:电子工业出版社,.[6]李磊,程立,周悅虹译.SpringinAction中文版[M].北京:人民邮电出版社,.[7]张铭泽等译.JavaScript权威指南[M].北京:机械工业出版社,.[8]蔡敏,徐慧慧,黄丙强编著.UML基础与Rose建模教程[M].北京:人民邮电出版社,.[9]张龙祥等.面向对象程序设计[M].北京:人民邮电出版社,[9]CraigWalls,RyanBreidenbach.SpringinAction[M].美国:ManningPublicationsCo,.[10]JAMESW.COOPER.TheDesignPatterns[M].美国:IBMThomasJ.WatsonResearcherCenter,1998.

外文资料JSPandWEBtechnology1JSPIntroductionJSP(JavaServerPages)isaJava-basedscriptingtechnology.IsadvocatedbySunMicrosystemsInc.,togetherwithanumberofcompaniesinvolvedintheestablishmentofadynamicwebpagetechnologystandards.JSPtechnologyissomewhatsimilartoASPtechnology,ItisatraditionalHTMLpagefile(*.htm,*.html)toinsertJavaprogramsegment(Scriptlet)andJSPtag(tag),ToformtheJSPfile(*jsp).WebdevelopmentwithJSPisacross-platformapplicationsthatcanrununderLinux,butalsoinotheroperatingsystems.IntheJSPofthemanyadvantages,oneofwhichisthatitwillbeHTMLencodedWebpagefromthebusinesslogicseparatedeffectively.JSPaccesswithreusablecomponents,suchasServlet,JavaBeanandJava-basedWebapplications.JSPalsosupportsdirectlyintheWebpageembeddedJavacode.JSPcanbeusedtwowaystoaccessdocuments:JSPdocumentssentbythebrowserrequest,therequestsenttotheServlet.JSPtechnologyusesJavaprogramminglanguage,XML-typetagsandscriptlets,tohaveapackagedealwiththelogicofdynamicpages.Pagetagsandscriptletscanalsoexistintheserveraccesstotheresourcesoftheapplicationlogic.JSPlogicandWebpagedesignanddisplayisolatedandsupportreusablecomponent-baseddesign,Web-basedapplicationsmorequicklyandeasilydeveloped.TheWebserverwhenmeetsvisitstheJSPhomepagetherequest,firstcarriesoutsegment,willthencarryouttheresultcodetoreturntogetherwithJSPinthedocumentHTMLforthecustomer.TheinsertionJavasegmentmayoperatethedatabase,againthedirectionalhomepageandsoon,realizesthefunctionwhichtheestablishmentdynamichomepageneeds.JSPandJavaServletarethesame,isintheserverendexecution,usuallyreturnstothisclientsideisaHTMLtext,thereforeclientside,solongashasthebrowsertobeabletoglanceover.TheJSPpageiscomposedoftheHTMLcodeandtheinsertingJavacode.TheserverinthepagebytheclientsidewasrequestedthatlaterwillcarryonprocessingtotheseJavacode,willthenproducetheHTMLpagewillreturngivestheclientsidethebrowser.JavaServletistheJSPtechnologybase,moreoverthelarge-scaleWebapplicationprocedure'sdevelopmentneedsJavaServletandtheJSPcoordinationcancomplete.JSPhadtheJavatechnologysimplyeasytouse,completeobject-oriented,hadtheplatformindependency,andsafereliable,mainlyfacedInternet'sallcharacteristics.2JSPcomputingtechniqueTocarryonthedynamicwebsiteconvenientlyfastthedevelopment,JSPhasmadetheimprovementinthefollowingseveralaspects,causesittobecomebuildsthecrossplatformfastthedynamicwebsitefirstchoiceplan.2.1carriesonthecontentproductionandthedemonstrationseparatesWiththeJSPtechnology,theWebpagedevelopmentpersonnelmayuseHTMLortheXMLmarkingdesignandtheformattedfinalpage,andusestheJSPmarkingorthetootsyproducesonpage'sdynamiccontentoriginally.Productioncontent'slogicissealedinmarksandintheJavaBeansmodule,andtiesupinthescript,allscriptsinserverendmovement.BecausecorelogicissealedinmarksandinJavaBeans,thereforetheWebadministrativepersonnelsandthepagedesigner,caneditandusetheJSPpage,butdoesnotaffectthecontenttheproduction.Intheserverend,theJSPengineexplainedthattheJSPmarkingandthescript,producethecontentwhichrequested,and(orXML)page'sformtransmitstheresultbyHTMLthebrowser.Thisbotharehelpfulintheauthorprotectsowncode,andcanguaranteeanybasedontheHTMLWebbrowser'scompleteusability.2.2mayentrustwithheavyresponsibilitythemoduleTheoverwhelmingmajorityJSPpagereliesonmayentrustwithheavyresponsibility,thecrossplatformmodule(JavaBeansorEnterprisetheJavaBeansmodule)carriesoutcomplexprocessingwhichtheapplicationprocedurerequests.Thedevelopmentpersonnelcanshareandexchangetheexecutionordinaryoperationthemodule,orcausesthesemodulesusesformoreusersandthecustomerassociation.Hasacceleratedtheoveralldevelopmentprocessbasedonmodule'smethod,andcauseseachkindoforganizationobtainsbalancedintheirexistingskillandintheoptimizedresultdevelopmentendeavor.2.3usesmarkingTheWebpagedevelopmentpersonnelwillnotbethefamiliarscriptlanguageprogrammers.TheJSPtechnologyhassealedmanyfunctions,thesefunctionsareeasytouse,markingtocarryonthedynamiccontentproductionwithJSPintherelatedXMLtoneed.ThestandardJSPmarkingcanvisitandtheinstantiationJavaBeansmodule,theestablishmentortheretrievalmoduleattribute,downloadsApplet,aswellastheexecutiondifficultywithcodesandthetime-consumingfunctionwithothermethods.2.4adaptstheplatformNearlyallplatformssupportJava,JSP+JavaBeanstobepossibletopassunimpedednearlyunderallplatforms.Transplantsfromaplatformtootherplatform,JSPandJavaBeansdoesnotevenneedtotranslate,becausetheJavabytecodeisstandardhasnothingtodowiththeplatform.2.5databaseconnectionInJavaconnectsthedatabasethetechnologyistheJDBC,JavaprocedureisconnectedthroughtheJDBCdriverandthedatabase,operationsandsoonexecutioninquiry,extractiondata.SunCorporationhasalsodevelopedJDBC-ODBCbridge,usesthistechnicalJavaproceduretobepossibletovisithastheODBCdriverdatabase,atpresentthemajoritydatabasesystemshavetheODBCdriver,thereforetheJavaprocedurecanvisitsuchasOracle,Sybase,MSSQLServeranddatabasesandsoonMSAccess.Inaddition,throughthedevelopmentmarkingstorehouse,theJSPtechnologymayfurtherexpand.Thethirdpartydevelopmentpersonnelandotherpersonnelmayfoundtheirmarkingstorehouseforthecommonlyusedfunction.ThisenablestheWebpagedevelopmentpersonneltobeabletousethefamiliartoolandtobesimilartomarkingsamecarriesoutthespecificfunctioncomponenttocarryonthework.TheJSPtechnologyveryeasyconformitytomanykindsofapplicationarchitecture,tousetheextanttoolandtheskill,andcanexpandtothesupportenterprisedistributionalapplication.3EclipsefunctionsynopsisMoreandmoreJavadevelopmentpersonnelalreadystartedtheproductivitywhichandthequalityincomeappreciatesEclipseJDTtoprovide.ItwastheJavaeditorprovidesgrammarGaoLiangtodemonstratethattheformatting,thefold,thecontentwereauxiliary,codetemplateandsoonmanyfunctions.Itgrowsunceasinglyavailablerestructuringandthecodegenerationfunctionsetpermitsyouinahigherranktheoperationcode,andautomatedusualcodeintensitydutyandeasywrongduty.Moreover,indevelopsthecodeandusesJDTtocompileandtocarryouttheJUnittestbuilt-insupportcarriesontheunittestingafterthecode,mayuseEclipsethefirst-classJavadebuggerdebuggingwhenthemovementmeetsanyquestion.BesidesJDT,EclipseSDK-themostpopularEdownloading-alsocontainsPlug-inDevelopmentEnvironment(PDE).PDEusedthespecificfunctiontoexpandJDTtoconstructtheEclipseplug-inunit-basedontheEclipseapplicationprocedurebasicconstructionagglomeration.Infact,usesthetoolwhichprovidesbyEclipseitselftobeabletosurmounttheJavadevelopment,mayexpandtheexistingEclipseapplicationprocedure,orevenfoundsthebrand-newapplicationprocedure.Eclipsebyascriptlevelconstitution,containsinmanyfunctionalmodulesortheEclipseterminologyso-called“theplug-inunit”.Theplug-inunitisprovidesallfunctionsintheEclipseapplicationprocedurethemodule.TheycooperatethroughitsAPItopaythefinaloutcometogether.InEclipse,eventhemostfoundation'sfunction,forinstancethesearchandthestartinstallment'splug-inunit,sealsintheplug-inunit.InordertoexpandtheexistingEclipsefunctionorcarryontheconstructioninabove,theplug-inunittheconcreteexpansioncontributionfortheexpansionspotwhichwillexposebyotherplug-inunits.Usually,theplug-inunitconcentratesthespecificregionresponsibility,andgivesthroughoramanyexpansionwayotherresponsibilitydesignationotherplug-inunits.Forexample,aplug-inunitallowsyouparalleltocomparetwodocumentsvisiblythecontents,butitwillnotcarehowtoreadthesedocumentsevenhowtoexplainthesedocumentstructure;Thisisotherplug-inunit'swork.Whencomparedwithtwodocuments,thisplug-inunitfirstinspectswhethertohaveanotherplug-inunittobepossibletoexplainthesedocumentstructure.Iffoundone,ittotheplug-inunitinquiryrelatedfileorganizationinformationwhichfound,andusedthisinformationinthecomparisonprocess.MayseethatthemodularconstructionwasEclipsehasprovidedthehugeflexibility,andprovidedonetobepossibletosupportthemassiveapplicationprocedureplatformwhichtheoriginaldesignhasnotexpected.4StructsfunctionsynopsisStrutsisaMVCframe(Framework),usesindevelopingJavafasttheWebapplication.StrutsrealizesthekeypointinC(Controller),Actionwhichandwehavecustom-madeincludingActionServlet/RequestProcessor,wasalsoV(View)providesaseriesofrowstohavecustom-madethelabel(CustomTag).Springisalightvessel(light-weightcontainer),itscoreistheBeanfactory(BeanFactory),withconstructsM(Model)whichweneed.Abovethisfoundation,SpringhasprovidedAOP(Aspect-OrientedProgramming,facestratificationplaneprogramming)realization,providesunderthenon-managementenvironmentwithittodeclareservicesandsoonwaybusiness,security;IsmoreconvenienttoBeanfactoryexpansionApplicationContextwetorealizetheJ2EEapplication;DAO/ORMrealizesfacilitatesustocarryonthedatabasethedevelopment;WebMVCandSpringWebhaveprovidedJavatheWebapplicationframeorcarriesontheintegrationwithotherpopularWebframe.Thatismayabothuse,achievebothowncharacteristiccarriesonsupplementary.Structsisthekindwhich,servletandtheJSPmarkagroupcooperatesmutually,theycomposetheMVC2designswhichmayentrustwithheavyresponsibility.ThisdefinitionexpressedthatStrutsisaframe,butisnotastorehouse,butStrutshasalsocontainedtherichmarkstorehouseandtheindependenceinthisframeworkutilityprogramclass.Clientbrowser(customerbrowser),therequestfoundsaneventfromcustomerbrowser'seachHTTP.TheWebvesselwilluseaHTTPresponsetomaketheresponse.Controller(controller),thecontrollerreceivefrombrowser'srequest,anddecidedthatsendsoutwherethisrequest.SpeakingofStruts,thecontrollerisanorderdesignpatternwhichrealizesbyservlet.struts-config.xmldocumentdispositioncontroller.Servicelogic,theservicelogicrenewalmodel'scondition,andhelpsthecontrolapplicationproceduretheflow.SpeakingofStruts,thisisthroughtakestheactualservicelogic“thin”thepackingActionkindtocomplete.Model(model)condition,modelexpressionapplicationprocedurecondition.Serviceobjectrenewalapplicationprocedurecondition.ActionFormbeaninconversationlevelorrequestlevelexpressionmodelcondition,butisnotinthelastinglevel.TheJSPdocumentusesJSPtomarkthereadfromtheActionFormbeaninformation.View(view),theviewisaJSPdocument.Anddoesnothavetheflowlogic,doesnothavetheservicelogic,alsodoesnothavethemodelinformation--Onlythenmarks.ThemarkcausesStrutsisdifferentwithotherframes(forexampleVelocity)oneoffactors.JustliketheStrutscontrolleris(eventusuallyisHTTPpost)mapstheeventkindofservlet.youtoexpect-theair-operatedcontrolleruseconfigurationfilestocauseyounottoneedtocarryontothesevaluesthehardcode.Thetimehaschanged,butmethodasbefore.TheActionkind,ActionFormmaintainstheWebapplicationp

温馨提示

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

评论

0/150

提交评论