JAVA程序设计课程设计网上选课系统_第1页
JAVA程序设计课程设计网上选课系统_第2页
JAVA程序设计课程设计网上选课系统_第3页
JAVA程序设计课程设计网上选课系统_第4页
JAVA程序设计课程设计网上选课系统_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、辽 宁 工 业 大 学 java ide可视化设计 课程设计(报告)题目: 网上选课系统 院(系): 专业班级: 学 号: 学生姓名: 指导教师: 教师职称: 起止时间: 2010.6.28至2010.7.11 程序设计专题(报告)任务及评语院(系):软件学院 教研室:软件教研窒学 号学生姓名专业班级程序设计(报告)题目网上选课系统程序设计(报告)任务程序设计专题的任务与要求:(1)掌握java编程、面向对象的基础知识。(2)较熟练地编写java应用程序application、小程序applet。(3)了解java的常用标准类库、编程技巧、异常处理及高级编程。(5)联系已学过的内容,巩固所学的

2、理论,增强独立工作能力。(6)通过设计主要使学生有一个独立编写程序的过程,对理论学习及动手能力都有一个很大的提高。(7)通过本次设计,进一步培养学生热爱专业的思想,同时对本专业综合素质的提高起一个积极的推动作用。程序设计过程中,要严格遵守实践环节的时间安排,听从指导教师的指导。正确地完成上述内容,记录实习日记,规范完整地撰写出实训报告。指导教师评语及成绩该生在课程设计过程中,积极努力,态度端正,团结同学,遵守纪律,针对java程序设计语言特点和所设计项目的需求,查阅较多资料,并进行市场调研,对具体设计要求和java ide环境操作掌握较好。设计各部分设计较好,具有较好的文档和注释内容,程序逻辑

3、性较好,所设计功能满足需求分析要求,软件实用性强,并具有较好的扩展性。设计报告规范完整,逻辑性较好,标识符合要求。较好地完成了java ide设计任务。成绩: 指导教师签字: 2010 年7 月 12 日目 录第1章 程序设计专题目的与要求11.1 程序设计目的11.2 程序设计的实验环境11.3 程序设计的预备知识11.4 程序设计要求1第2章 程序设计内容22.1需求分析22.2概要设计22.3程序整体设计说明32.3.1程序设计内容32.3.2程序所用类说明62.3.3实现接口方法72.3.4线程应用72.3.5程序异常处理说明82.3.6程序运行效果及存在问题92.4程序部分源代码及注

4、释92.5测试结果12第3章 程序设计总结14参考文献15第1章 程序设计目的与要求1.1 程序设计目的java程序设计是计算机科学与技术专业的必修专业基础课程,其实践性、应用性很强。实践教学环节是必不可少的一个重要环节。本课程的程序设计专题实际是软件技术专业学生学习完java程序设计课程后,进行的一次全面的综合训练,java程序设计的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及其在网络开发中的广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。1.2 程序设计的实验环境硬件要求能运行windows 9.x操

5、作系统的微机系统。java程序设计语言及相应的集成开发环境,j2sdk和eclipse开发工具。1.3 程序设计的预备知识熟悉java语言及eclipse开发工具。1.4 程序设计要求按程序设计指导书提供的课题,要求学生在自行完成各个操作环节,并能实现且达到举一反三的目的,完成一个项目解决一类问题。要求学生能够全面、深入理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题;对此能够较好地理解和掌握,能够进行简单分析和判断;能编写出具有良好风格的程序;掌握java程序设计的基本技能和面向对象的概念和方法;了解多线程、安全和网络等编程技术。同时培养学生进行分析问题、解决问题的能力;培养学生进

6、行设计分析、设计方法、设计操作与测试、设计过程的观察、理解和归纳能力的提高。第2章 程序设计内容2.1需求分析网上选课系统是针对在校学生和教师使用,从学生的角度来说,由于学校教学制度的改革,传统的教学模式学生按照学校安排好的课程上课已经不能适应新现在大部分高等院校开始实行的学生的自主选课模式型的教学手段,如果仍然通过纸上的方式选课,一方面浪费的大量的人力、物理资源,另一方面浪费时间以及在人为的统计过程中不可避免出现的差错等情况。随着高校人数的增多,这种弊端会越来越多的暴露出来。因此,利用网络,只要学生只要在计算机前输入自己的个人选课信息即可完成原来几倍的作业量。从教师的角度来说,同样是节省了大

7、量的工作量,由于教师提出代课申请完成课程发布的工作较学生选课而言更加的复杂,因此通过网上进行课程发布能大幅度的减少教师的工作量,减少错误的发生几率。作为教师,也只要通过自己的电脑来操作即可,不用再奔波于教务处和办公室之间。2.2概要设计在本系统的功能操作针对不同的用户角色分权进行管理。系统对角色提供的主要功能如下:个人信息管理(编号、姓名、院系、学号、专业、性别等)、选课管理、管理学生以及本人已选课程。教师角色提供以下功能操作:查看自己所担任课程的课表和选该门课的学生信息。系统给后台管理员(后台用户)提供的操作功能如下:查看所有的院系、专业、课程、学生、教师的信息并对它进行管理(添加、编辑、删

8、除等)。用户的需求具体体现在对各种信息的提供和查询,数据库是此类系统的核心,系统中所有的信息都存储在数据库中,与数据库连接,操作数据库中的数据,从而实现所有需要的功能。2.3程序整体设计说明2.3.1程序设计内容本系统主要包括用户管理、课程、我的选课、及其他管理等。(1)用户管理包括对学生帐号、密码的修改。(2)课程管理模块包括课程信息查询、选课、查询所选课程、我的课表等信息。(3)我的选课包括已经选过的课程、不喜欢课程的退课等功能。(4)其其他管理中主要包括新闻浏览、个人信息、退出登录等功能。学生模块功能如图2.1所示:网上选课系统学生模块用户管理课程我的选课其它管理图2.1 学生模块图fi

9、g2.1 students module chart1.学生选课系统的总体e-r图,如图2.2所示:nmnmnmn11n选课系统管理员课程教师学生维护安排教授选择查看图2.2 总体e-r图fig2.2 overall e-r diagram 2.系统功能模块本系统主要有三大模块组成:学生模块、教师模块、管理员模块。学生模块包括用户管理、课程信息、我的选课、其它管理。管理员模块包括用户管理、课程管理、选课管理、新闻管理。教师模块包括教师个人信息和课程信息。网上选课系统主要由学生、教师、管理员组成。这样分能够更清晰的使整个系统更加有条理化、更加完善。系统总体结构图如下图4.1所示3.数据库表的设计

10、(1)教师表,此表中记录了教师的全部信息,表的具体设计如表2.1所示:表2.1 教师表tab2.1 teacher列名数据类型长度允许空tnovarchar50不passwordvarchar50不tnamevarchar50不tsexvarchar4不tageint50允许tcollagevarchar50允许(2)通知表,在此表中记录了通知的具体内容,表的具体设计如表2.2所示:表2.2 通知表tab2.2 notice列名数据类型长度允许空idint4不titlevarchar50不detailvarchar1000不datedatetime8允许course_idchar50不4.网上

11、选课系统流程图如图2.3所示:学生选课系统学生教师管理员用户管理课程我的选课其他管理个人管理课程信息用户管理课程管理选课管理新闻管理登陆登陆登陆退出图2.3 网上选课系统流程图fig2.3 online courses system flowcharts2.3.2程序中所用类说明(1)用户自定义类网上选课系统中包括usebean2这个类,其中这个类的作用、继承的父类如下类名:usebean2作用:主类继承的父类:无(2)学生操作类:学生模块:学生模块包括选课、退课以及查看个人信息、查看教师信息等功能(3)计算机操作类系统管理模块:包括添加、修改、删除、查询系统用户名、口令、身份、数据备份、数据

12、恢复等功能。2.3.3、实现接口方法java接口本身没有任何实现,因为java接口不涉及表象,而只描述public行为,所以java接口比java抽象类更抽象化。 java接口的方法只能是抽象的和公开的,java接口不能有构造器,java接口可以有public,静态的和final属性。接口把方法的特征和方法的实现分割开来。这种分割体现在接口常常代表一个角色,它包装与该角色相关的操作和属性,而实现这个接口的类便是扮演这个角色的演员。一个角色由不同的演员来演,而不同的演员之间除了扮演一个共同的角色之外,并不要求其它的共同之处。2.3.4、线程应用通常线程是在系统层被实现的。java是第一个在语言中

13、实现的。java在语言级提供了对多线程设计的支持。线程:是进程中的一个单一的连续控制流程。一个进程可以拥有多个线程。多线程帮助你写出cpu最大利用率的高效程序。举例来说,网络的数据传送速率远远低于cpu处理能力,本地文件系统资源的读写速度也远远低于cpu的处理能力,在传统的单线程环境中,你的程序必须等待每一个这样的任务完成以后才能执行下一步-尽管cpu大部分时间处于空闲。而java的多线程能使你充分利用这些空闲的时间。在一个单线程程序中如果出现阻塞则整个程序都可能停止运行,而在一个多线程的程序中这不会出现这样的问题。当一个线程阻塞时,别的线程会运行,这样可以大大的提高cpu效率。每个线程都是一

14、个线程组的一个成员,线程组把多个线程集成一个对象,通过线程组可以同时对其中的多个线程进行操作.在生成线程时必须将线程放在指定的线程组,也可以放在缺省的线程组中,缺省的就是生成该线程的线程所在的线程组.一旦一个线程加入了某个线程组,不能被移出这个组. 2.3.5、异常处理说明异常处理提供了处理程式错误的统一机制。事实上,java语言通过向调用者提出异常警告的方式而显著地提升了软件研发中的异常处理能力。这种方式把java语言中的“方法(method)”进行了扩展和增强,使之包括了自身的错误条件。异常处理是程序设计中一个非常重要的方面,也是程序设计的一大难点,从c开始,你也许已经知道如何用if.el

15、se.来控制异常了,也许是自发的,然而这种控制异常痛苦,同一个异常或者错误如果多个地方出现,那么你每个地方都要做相同处理,感觉相当的麻烦! java语言在设计的当初就考虑到这些问题,提出异常处理的框架的方案,所有的异常都可以用一个类型来表示,不同类型的异常对应不同的子类异常,定义异常处理的规范try / initializationmysmartupload.initialize(config,request,response);/ uploadmysmartupload.upload();/ save the file with the original name/ in a virtual

16、 path of the web servercount=mysmartupload.save(mysmartupload.getrequest().getparameter("path");/ display the resultout.println(count + " file uploaded."); catch (exception e)out.println("unable to upload the file.<br>");out.println("error : " + e.tostri

17、ng();2.3.6、程序运行效果及存在的问题学生网上选课系统是一个基于jsp技术的,实用性强的网络系统。系统实现了对课程的基本信息和学生选课、学生和教师用户进行管理。 系统存在着不足之处:由于编程经验尚浅,有很多功能实现的不够全面。系统模块化设计不够理想,系统的业务逻辑层设计不够全面,系统封装性有待改善。程序运行是出现的错误主要出现在数据库的设计中,在一些需要命名,且名字应该唯一的信息输入重复的名字或id,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理.2.4程序部分源代码及注释学生用户界面设计用框架实现。页面头放在上框架,功能导航放在

18、左框架,具体功能放在右框架。学生功能设计所有页面都放在student的文件夹中,所以以下所提到的页面均在student文件夹中。设置学生界面框架结构主页index.htm。其中左框架中的功能导航页面为student_left.jsp,右框架中的功能页面为student_body.jsp。系统用session保存用户的学号。图2.4学生用户界面fig 2.4 students in the user interface其中学生框架的代码为:<!doctype html public "-/w3c/dtd html 4.01 frameset/en" "http

19、://tr/html4/frameset.dtd"><html><head><link href="./style.css" rel="stylesheet" type="text/css"><meta http-equiv="content-type" content="text/html; charset=gb2312"><title>学生选课系统</title></head&g

20、t;<frameset align="center" rows="129,*" cols="*" frameborder="no" border="0" framespacing="0"><frame src="./inc/head.htm" name="topframe" scrolling="no" noresize ><frameset align="center&quo

21、t; rows="*" cols="153,*" framespacing="0" frameborder="no" border="0"><frame align="center" src="student_left.jsp" name="leftframe" scrolling="no" noresize><frame align="center" src="

22、student_body.jsp" name="mainframe"></frameset></frameset><noframes></noframes><frameset align="center" rows="5,*" cols="*" frameborder="no" border="0" framespacing="0"></frameset><bod

23、y></body></html>3.个人信息模块包括个人资料和修改密码两部分。个人资料显示学生的所有信息,包括学号、姓名、学院、系别、班级。密码修改部分:用户可以根据自己的需要修改密码,方便用户管理。如图4-4个人资料显示页面,4-5 密码修改页面。图2.5密码修改页面fig 2.5 password revision page<%page contenttype="text/html;charset=gbk" %><%page import ="java.sql.*"%><%page lang

24、uage="java"%><html><head><title>学生选课系统</title><meta http-equiv="content-type" content="text/html; charset=gb2312"><jsp:usebean id="reset" class="bean.usebean2" scope="session"/></head><%/防止某些用

25、户不进行登陆,直接想进入此页面 if (session.getattribute("s1")=null)response.sendredirect("index.jsp"); %><% reset.usebean();string id=""id=(string)session.getattribute("s1");string strsql="select * from student where num='"+id+"'"resultset r

26、s= reset.executequery(strsql);rs.first(); %><body background="./images/bkgrd9.jpg">2.5测试结果此测试结果只针对学生网上选课系统中的管理员管理功能测试进行总结,具体测试结果如表2.3所示:表2.3 测试结果表tab2.3 test results功能项目结果学生模块学生登录当输入一个学生帐号和密码时,会显示欢迎登录成功或者密码或帐号不正确不能登录。测试成功。个人信息当学生登录后可以查看个人信息,点击个人信息后看见字的信息。测试成功选课信息学生可以看见所有选课的信息,根据自己

27、的喜好选择相应的科目,点击选课后显示选课成功。测试成功。我的课表点击我的课表,可以看到自己所选课程和上课时间地点等信息。测试成功。测试结论:从测试结果来看,选课系统在功能上能够满足学生和教师的使用需求。学生网上选课系统是一个基于jsp技术的,实用性强的网络系统。系统实现了对课程的基本信息和学生选课、学生和教师用户进行管理。系统的业务逻辑层设计不够全面,系统封装性有待改善。第3章 程序设计总结通过两个星期的研究和开发,我们小组选择的课题学生选课系统基本完成。其功能基本符合网络上的用户要求,能够在线选课,在线添加课程,在线查询课程等。尽管由于自己知识上的不足,有些地方有少许错误和容错性能比较低,但

温馨提示

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

评论

0/150

提交评论