资源目录
压缩包内文档预览:(预览前20页/共40页)
编号:33012363
类型:共享资源
大小:19.46MB
格式:RAR
上传时间:2019-12-18
上传人:遗****
认证信息
个人认证
刘**(实名认证)
湖北
IP属地:湖北
25
积分
- 关 键 词:
-
精品课程
网站
系统
设计
- 资源描述:
-
精品课程网站系统设计,精品课程,网站,系统,设计
- 内容简介:
-
学生 田璟霞指导老师 常雅婷 C语言精品课程网站的设计与实现 课题背景 在人才培养中 课程具有无可替代的重要性和基础性 课程是一种文化传递 它是人类智慧的结晶 是科学 技术 经济 文化发展历史的总结 又是现代发展前沿的反映 因此 课程是学生知识 能力 素质培养的重要载体 一所学校 不能认为只要能开出课 就是在办学 学校要根据自己的目标定位和发展方向来确定要开设的课程 在一所学校里 有计划 有目标地建设成一批辐射性强 影响力大的精品课程 可以大范围地推进全校的课程建设 可以营造一种良好的学习氛围 形成良好的校园文化 开发教学网站 是推进教育更新 实现教学管理创新的主要方面 在精品课程网站这个网络平台上可以看到相关课程的详尽信息 在课程介绍中 用户可以轻松找到要学课程的简单概述 能为用户对相关知识的学习指明方向 突出重 难点 而这些有可能会被老师忽略 或者老师讲过而你没有听清楚的情况下就会对你总体把握学习很有益处 在教师队伍中你可以比较详细的了解讲师或课程负责人的信息 在你学习中遇到难题时可以向这些老师请教 每个人的思考方式不同 你的任课老师的讲解重点的思路你可能理解不了 有可能换个老师以另外的思路讲解有可能就符合你的思维方式 也更易于理解 系统研究目的与意义 精品课程网站是高等学校教学质量与教学改革工程的重要组成部分 是学生自主学习 教学互动 学习交流的重要平台 C语言程序设计 是计算机专业的一门必修课程 学生在学习的过程中 除了老师的引导外 还需详细了解课程的学习要求 了解课程的重点与难点 预习和复习课堂教授的内容 检查自己掌握知识的情况 并及时同老师交流学习中遇到的问题 这些在现实中受许多条件的制约是不太可能实现的 这就迫切需要提供一个平台 让学生与学生之间或学生与老师之间能相互交流相互学习 实现网上教学 针对每个学生网上辅导 精品课程网站是一种很好的课堂教学的辅助工具 在一个用户开始学习一种新的计算机语言时 课堂上的学习是必不可少的 而借助于精品课程网站在课外对重要课程进行进一步的学习 则为我们掌握一门学科提供了一个良好的渠道 这也必将改变传统教学方法 实现计算机技术与多媒体网络技术结合的一次教学改革 系统开发环境 操作系统 WindowsXP或Windows7开发工具 MyEclipse8 5数据库 MySQL5 1 系统开发介绍 系统采用目前较为流行的B S架构 整个系统采用了JSP技术 在应用服务器端使用Tomcat服务器 在数据库服务器上采用了mysql 用户可以分为管理员 教师和学生 功能设计 1 系统登录模块该模块主要是通过不同的身份登录 从而进入不同的界面 有各自不同的功能实现学生管理模块该模块主要负责管理所有学生的个人信息 学生通过这个模块 可以查询自己的个人信息 管理者通过这个模块 可以添加 更新 删除 查询学生的信息 教师管理模块该模块主要负责管理所有教师的个人信息 教师通过这个模块 可以查询自己的个人信息 管理者通过这个模块 可以添加 更新 删除 查询教师的信息 功能设计 2 课程管理模块该模块主要负责管理课程的信息 教师通过这个模块 可以查询课程 管理者通过这个模块 可以查看课程和删除课程以及有学生对应的教课老师 课件管理模块该模块主要负责管理课件的信息 管理者通过这个模块 可以查看课件资源 删除课件资源 教师通过该模块可以上传课件资源和查看课件资源 学生通过该模块可以下载课件资源 试卷管理模块该模块主要负责管理试卷的信息 管理者通过这个模块 可以查看试卷题目 删除试卷题目 教师通过该模块可以增加题目 删除题目 查看题目 修改题目 功能设计 3 论坛管理模块该模块主要负责管理论坛信息 管理者通过这个模块 可以发表新主题 删除 修改 回复贴吧 教师通过该模块可以发表新主题 删除 修改 回复贴吧 学生通过该模块可以发表新主题 删除 修改 回复贴吧 公告管理模块该模块主要负责公告管理 管理者通过这个模块 可以增加 删除 查看公告内容 教师通过该模块可以查看公告内容 学生通过该模块可以查看公告内容 系统通知模块该模块主要负责通知管理 管理者通过这个模块 可以增加 删除 查看通知内容 教师通过该模块可以增加 删除 查看通知内容 学生通过该模块可以查看通知内容 在线考试模块该模块主要负责在线考试管理 教师通过该模块可以查看学生得分情况 学生通过该模块可以进行考试 并查看分数 功能结构图 数据库E R图 数据库连接代码 publicstaticConnectiongetConn Connectionconn null try Class forName com mysql jdbc Driver conn DriverManager getConnection jdbc mysql localhost 3306 jpkc root 123 catch ClassNotFoundExceptione e printStackTrace catch SQLExceptione e printStackTrace returnconn 系统首页界面 管理员主界面 新闻发布 添加学生 论坛管理 教师主界面 题库管理界面 学生主界面 学生下载课件 在线测试 总结 通过这次的毕业设计 我不仅拓宽了自己的知识面 还在实践过程中巩固和加深了自己所学的理论知识 使自己的技术素质和实践能力有了进一步的提高 同时我的专业水平也有了很大的进步 同时 在软件开发方面也累积了不少经验 特别是在对软件开发工具不很熟悉的情况下 通过自己的学习和导师的指导完成了设计任务 并在设计过程中 自己分析问题和解决问题的能力都得到了锻炼和提高 完善了自己的知识结构 加深了对知识的理解 这次毕业设计完成后 体会颇多 在学与做的过程中 取长补短 不断学习新的知识 吸取经验 达到进步的目的 在学与做的过程中自身的努力以及相关图书资料的帮助 逐渐熟悉了JSP在数据库方面的应用知识 程序开发的一般过程和对数据库知识的进一步的了解 在这个快速发展的当代社会里 数据库已经普遍应用在各个领域 在这次的毕业设计中我学习到不少的数据库知识 但由于自己的理论知识水平有限 实践知识和设计经验不足 在设计过程中难免存在一些问题 甚至错误 恳请各位老师批评指正 以使我在以后的工作和实践中加以改进和提高 谢谢 毕业论文(设计)题 目 C语言精品课程网站设计 院 系 太原科技大学华科学院 专 业 通信工程 学生姓名 常雅婷 学 号 201022080101 指导教师 田璟霞 目 录1引言11.1选题背景11.2发展现状21.3目的和意义22系统开发的相关技术221jsp222jsp工作原理323Tomcat介绍424mysql43 需求分析53.1 设计原则53.2 系统设计目标63.3 系统主要功能64 系统分析与设计84.1 模块的介绍设计84.2业务流程图105数据库结构设计与实现115.1数据库实体属性图115.2数据库表的设计126系统实现146.1数据库的连接146.2系统首页登录界面156.3管理员界面276.4教师界面216.5学生界面237系统测试267.1软件测试的目的267.2系统测试用例267.3性能分析278总结27参考文献27致谢2837C语言精品课程网站设计摘要:随着网络技术的发展和网络的普及,网络教学已经成为当前的一个教育热点。本次设计是围绕C语言精品课程网站设计与实现而展开的,C语言精品课程网站设计是一个典型的基于WEB的网络教学平台,它是基于jsp和mysql技术实现的。其中本系统的功能主要包括:教学内容管理、考试管理、资料库管理、公告管理等,这些功能的设计实现使该网站功能完备,易使用,交互性强。关键词:java;c语言管理系统;jsp Design of a C language course websiteABSTRACTAlong with the development of networks technology and the popularity of networks, online teaching has already been an educational hotpot. This project designs and implements a choice courses teaching website of the subject of c language exquisite course .The website is a typical online teaching platform based on the Web.it is based on jsp and mysql technology.And the system mainly includes such functions as management of teaching content, schoolwork management, testing management, material management, and bulletins management and so on. The realization of such functions makes the very website a perfect, easy-to-use, high-interactive one.Key word:java; c language course;jsp1引言1.1选题背景在人才培养中,课程具有无可替代的重要性和基础性。课程是一种文化传递,它是人类智慧的结晶,是科学、技术、经济、文化发展历史的总结,又是现代发展前沿的反映。因此,课程是学生知识、能力、素质培养的重要载体。一所学校,不能认为只要能开出课,就是在办学。学校要根据自己的目标定位和发展方向来确定要开设的课程。在一所学校里,有计划、有目标地建设成一批辐射性强、影响力大的精品课程,可以大范围地推进全校的课程建设,可以营造一种良好的学习氛围,形成良好的校园文化。开发教学网站,是推进教育更新、实现教学管理创新的主要方面。在精品课程网站这个网络平台上可以看到相关课程的详尽信息。在课程介绍中,用户可以轻松找到要学课程的简单概述,能为用户对相关知识的学习指明方向,突出重、难点。而这些有可能会被老师忽略,或者老师讲过而你没有听清楚的情况下就会对你总体把握学习很有益处。在教师队伍中你可以比较详细的了解讲师或课程负责人的信息,在你学习中遇到难题时可以向这些老师请教。每个人的思考方式不同,你的任课老师的讲解重点的思路你可能理解不了,有可能换个老师以另外的思路讲解有可能就符合你的思维方式,也更易于理解。在教学大纲中向用户展示某一课程总体结构框架,列出课程的主要的知识点,有利于用户总体把握课程。资源下载为用户提供了很好的教学资源,供用户学习。而网上答疑更是体现了精品课程网站交互性的特点,在该项中用户可以就自己学习中遇到的问题提出来供其他用户共同思考解答,这是精品课程网站的一个十分优秀的特点,可以让用户之间相互探讨,共同进步。1.2发展现状在世界范围内来看,有关精品课程网站研究一直都在进行并且不断取得进步,特别是西方发达国家,他们在精品课程的理论研究与实际运用方法积累了大量的经验,虽然我们中国国内在精品课程网站这一方面的研究起步较晚,但我们同样也取得了大量丰硕的成果。各个高校相继创建了各自的精品课程网站,清华大学、人民大学、北京大学等一大批知名学府利用自身的资源优势,引领中国国内精品课程网站的发展方面。政府的大力支持,各高等学府的积极配合,使得我们国内精品课程网站的研究取得了不俗的成就。1.3目的和意义精品课程网站是高等学校教学质量与教学改革工程的重要组成部分,是学生自主学习、教学互动、学习交流的重要平台。C语言程序设计是计算机专业的一门必修课程。学生在学习的过程中,除了老师的引导外,还需详细了解课程的学习要求,了解课程的重点与难点,预习和复习课堂教授的内容,检查自己掌握知识的情况,并及时同老师交流学习中遇到的问题。这些在现实中受许多条件的制约是不太可能实现的,这就迫切需要提供一个平台,让学生与学生之间或学生与老师之间能相互交流相互学习,实现网上教学,针对每个学生网上辅导。精品课程网站是一种很好的课堂教学的辅助工具。在一个用户开始学习一种新的计算机语言时,课堂上的学习是必不可少的,而借助于精品课程网站在课外对重要课程进行进一步的学习,则为我们掌握一门学科提供了一个良好的渠道。这也必将改变传统教学方法,实现计算机技术与多媒体网络技术结合的一次教学改革。 2系统开发的相关技术2.1 jsp介绍JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行1。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。 JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。 JSP可用一种简单易懂的等式表示为:HTML+Java=JSP2。2.2jsp工作原理当一个JSP文件第一次被请求的时候,JSP引擎(本身也是一个Servlet)首先会把这个JSP文件转换成一个Java源文件。在转换过程中如果发现JSP文件有语法错误,转换过程将中断,并向服务端和客户端输出出错信息;如果转换成功,JSP引擎用javac把该Java源文件编译成相应的.class文件并将该.class文件加载到内存中。其次创建一个该Servlet的实例,并执行该实例的jspInit()方法(jspInit()方法在Servlet的生命周期中只被执行一次)。然后创建并启动一个新的线程,新线程调用实例的jspService()方法。(对于每一个请求,JSP引擎会创建一个新的线程来处理该请求。如果有多个客户端同时请求该JSP文件,则JSP引擎会创建多个线程,每个客户端请求对应一个线程)。浏览器在调用JSP文件时,Servlet容器会把浏览器的请求和对浏览器的回应封装成HttpServletRequest和HttpServletResponse对象,同时调用对应的Servlet实例中的jspService()方法,把这两个对象作为参数传递到jspService()方法中。jspService()方法执行后会将HTML内容返回给客户端。如果JSP文件被修改了,服务器将根据设置决定是否对该文件进行重新编译。如果需要重新编译,则将编译结果取代内存中的Servlet,并继续上述处理过程。如果在任何时候由于系统资源不足,JSP引擎将以某种不确定的方式将Servlet从内存中移去。当这种情况发生时,jspDestroy()方法首先被调用, 然后Servlet实例便被标记加入“垃圾收集”处理3。JSP的工作原理如图2.1所示:Tomcat容器来解析.jsp脚本JDBC驱动程序数据库客户浏览器向服务器发出.jsp文件请求Web服务器返回结果图2.1 jsp的工作原理2.3 Tomcat简介Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。这里的诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器4。2.4 mysqlMySQL作为一种开放源码数据库,以其简单易用的特点广泛被广大用户采用,MySQL虽然是免费的,但同Oracle, Sybase, Informix, Db2等商业数据库一样,具有数据库系统的通用性:(1)数据库管理系统。我们知道,所谓的数据库就是一些结构化的数据的联合体,要提供对这些数据的存取、增加、修改、删除或更加复杂的数据抽取等操作,需要有一个支撑系统,这就是数据库管理系统(DBMS),MySQL完全具有这方面的功能。(2)关系型数据库管理系统。在数据库的发展历程中,曾出现过多种不同形式的数据库系统,但关系型数据库管理系统(RDBMS)以其优越性而被广为采用,象现在几种广泛使用的数据库全为关系型数据库。同样,MySQL也是关系型的数据库系统,支持标准的结构化查询语言(Structured Query Language)。(3)开放源码数据库。同商业性的数据库相比,这是MySQL最大的特点。MySQL的源码是公开的,这就意味着任何人,只要遵守GPL的规则都可以对MySQL的源码使用、修改以符合自己特殊的需求。(4)技术特点。MySQL服务器端是多线程的,为客户端提供了不同的程序接口和链接库,如C、C+、Java、Perl、PHP、Tcl等,也提供了简单的管理工具,如mysqladmin,mysql等5。正因为MySQL的源码是公开的,使得我们有机会从源码级,更深入的了解MySQL。从这一层面上可以探求、了解MySQL数据库的特性:良好的内存管理机制,尤其是内存泄漏的管理,通过了Purify的严格测试;支持多种平台; 提供多种形式的API,为我们开发工具的选择提供了便利; 使用多线程的技术,可充分发挥系统的特点,避免在SMP系统中出现仅使用单CPU的现象;对磁盘表的管理采用B树加密及索引的技术,为我们快速访问数据提供了可能; 高性能的内存申请技术;临时表采用在内存中以哈希表实现;提供多种数据类型;支持定长的和变长的纪录;所有的列都有缺省值,为我们的某些“粗心”提供了方便;灵活、安全的权限和密码系统,密码在传输中加密传送,允许主机端验证密码;13)客户端可以通过TCP/IP、Unix套接字、命名管道(NT)连接到MySQL数据库服务器;对多种字符集的完全支持等等许多优点。MySQL有如此多的特点,又由于其免费的特点,这就给许多的中小应用提供了不错的选择。尤其是对一些中小企业,无论是从降低成本,还是从性能方面,采用MySQL作为其数据支撑系统,都是一种可行的方案。但也应当注意,采用MySQL作为应用数据库,就意味着所有的问题都需要自己解决,要承担一定的风险6。3需求分析3.1设计原则 本系统设计应遵循如下原则:经济性原则:建立适合在C语言精品课程系统用户自身需求的平台,提供广泛的涵盖用户多种需求的功能,数据处理方式灵活多样以满足需求,并确保其较好的拓展性和开放性;同时能够自主的对系统中大部分内容作更新、修改操作,提高了信息更新、查询的效率。扩充性原则:系统的整体规划及框架设计是具可扩充性的,系统在设计开发中充分考虑了移植、扩展的问题。这是每个系统都要考虑的重要问题。分层,细化模块可以很好的解决将来系统扩展中不改变基本架构的同时增加功能。数据库的设计能保证系统在更新后不会破坏系统的整体结构。法律可行性原则:同时,法律允许,我们的开发使用过程将严格遵守国家各项法律法规的基础上进行,将不会侵犯他人、集体和国家的利益。技术可行性原则:经过大学几年的学习,再通过查找资料,在技术上可以实现其功能。3.2系统设计目标系统稳定性:在设计该系统时,很重要的一个问题就是系统的长期稳定运行。考虑到系统的运行环境和用户的需求,必须从系统分析的高度给与足够重视,保证数据库能够的运行。具有较强的从错误状态恢复到正常状态的能力。应该从数据库平台、开发平台的选用等多方面进行综合考虑。数据安全性:系统的安全性至关重要,特别是数据库安全。应从系统分析上进行全盘考虑。首先要确保数据完整性和一致性,要确保数据经常性的备份,即使数据意外遭破坏,也要能及时恢复其次必须在操作人员对系统数据的操作权限上进行充分有效的限制另外在网络安全方面需要设置防火墙,对传输的数据进行加密。同时也应在系统设计的硬件配置上给与充分重视和考虑。系统健壮性:系统需要长期稳定地运行,而用户在日常的工作中要进行各种各样的操作,难免会产生各种各样的误操作和错误,这就打破了本系统的正常运行流程,可能导致预想不到的后果。因此,在本系统的设计过程中,我们将预先考虑各种各样的误操作及后果,采取相应的预防措施,确保不产生灾难性的后果,保证系统的健壮性。良好的适应性:系统必须具有良好的扩展能力和修改方便的特点,因此要求开发出的信息系统能够允许开发人员和用户经常改变处理过程。只有建立了稳定的模型,才能保证系统具有良好的适应性。界面友好:用户界面是用户和系统进行信息交互的接口,它直接关系到用户使用本系统的工作强度和工作效率。鉴于用户已熟悉和习惯了大众软件界面,所以,本系统将充分考虑用户的习惯和喜好,以方便用户使用为原则。3.3系统主要功能系统采用目前较为流行的B/S架构。整个系统采用了JSP技术,在应用服务器端使用Tomcat服务器,在数据库服务器上采用了mysql。用户可以分为管理员,教师和学生。1教师对功能的需求管理信息模块(1) 添加系统通知(2) 查看所有系统通知(3) 删除系统通知 个人信息模块(1) 修改密码(2) 个人信息查询资源管理模块(1) 查看选课(2) 课程查询(3) 查看选择题题库(4) 增加选择题题库(5) 修改选择题题库(6) 删除选择题题库(7) 查看所有学生的成绩(8) 上传课件资料交流社区模块(1) 与老师学生互动2学生对功能的需求个人信息模块(1) 个人信息查询(2) 修改密码(3) 个人选择老师(4) 选课一览交流社区模块(1) 学习论坛在线考试模块(1) 参加考试(2) 考试成绩查询下载资源模块(1) 下载课件资源3管理员对功能的需求个人信息模块(1) 修改密码(2) 个人信息查询管理信息模块(1) 添加新闻公告和系统通知(2) 查看新闻公告和系统通知(3) 删除新闻公告和系统通知管理用户模块(1) 查看所有用户(教师和学生)(2) 修改用户信息(3) 添加用户(4) 删除用户管理资源模块(1) 下载课件资源(2) 删除课件资源(3) 显示课程信息(4) 删除课程信息(5) 查看选择题题库(6) 删除选择题题库(7) 修改论坛(8) 删除论坛4系统分析与设计4.1模块的介绍设计根据系统功能模块的划分,如图4.1所示。图4.1系统的功能模块图系统登录模块该模块主要是通过不同的身份登录,从而进入不同的界面,有各自不同的功能实现学生管理模块该模块主要负责管理所有学生的个人信息。学生通过这个模块,可以查询自己的个人信息。管理者通过这个模块,可以添加、更新、删除、查询学生的信息。教师管理模块该模块主要负责管理所有教师的个人信息。教师通过这个模块,可以查询自己的个人信息。管理者通过这个模块,可以添加、更新、删除、查询教师的信息。课程管理模块该模块主要负责管理课程的信息。教师通过这个模块,可以查询课程。管理者通过这个模块,可以查看课程和删除课程以及有学生对应的教课老师。课件管理模块该模块主要负责管理课件的信息。管理者通过这个模块,可以查看课件资源,删除课件资源,教师通过该模块可以上传课件资源和查看课件资源,学生通过该模块可以下载课件资源。试卷管理模块该模块主要负责管理试卷的信息。管理者通过这个模块,可以查看试卷题目,删除试卷题目,教师通过该模块可以增加题目,删除题目,查看题目,修改题目。论坛管理模块该模块主要负责管理论坛信息。管理者通过这个模块,可以发表新主题,删除、修改、回复贴吧,教师通过该模块可以发表新主题,删除、修改、回复贴吧,学生通过该模块可以发表新主题,删除、修改、回复贴吧。公告管理模块该模块主要负责公告管理。管理者通过这个模块,可以增加、删除、查看公告内容,教师通过该模块可以查看公告内容,学生通过该模块可以查看公告内容。系统通知模块该模块主要负责通知管理。管理者通过这个模块,可以增加、删除、查看通知内容,教师通过该模块可以增加、删除、查看通知内容,学生通过该模块可以查看通知内容。在线考试模块该模块主要负责在线考试管理。教师通过该模块可以查看学生得分情况,学生通过该模块可以进行考试,并查看分数。4.2业务流程图系统流程图是描绘物理系统的传统工具.它的基本思想是用图形符号以黑盒子形式描述系统里面的每个部件(程序,文件,数据库,表格,人工过程等等).系统流程图表达的是信息在系统各部件之间流动的情况,而不是对信息进行加工处理的控制过程,因此尽管系统流程图使用的某些符号和程序流程图中使用的符号相同,但是它确是物理流程图而不是程序流程图。 系统登录流程图: 图4.2 系统登录流程图管理员信息管理流程图:图4.3 管理员信息管理流程图5数据库结构设计与实现5.1数据库实体属性图数据库在一个系统中起着十分重要的作用,数据库设计的好坏将直接影响到系统的效率和实现的效果。本实例的实体有:用户信息实体、新闻公告实体、系统通知实体、教师实体、学生实体、课程信息实体、试卷题库实体、下载资源信息实体、成绩表实体、论坛互动实体。5.1 系统E-R图5.2数据库表的设计表1用户信息表user,记录管理员和普通用户信息列名数据类型允许空说明IdInt(4)用户idusernameVarchar(20)yes用户名userpasswordVarchar(20)yes用户密码userclassInt(4)yes用户级别emailVarchar(30)yes用户邮箱表2新闻公告表列名数据类型允许空说明IdInt(11)公告idtitleVarchar(255)yes公告主题contentVarchar(500)yes公告内容ndatedatetimeyes公告发布时间deliverVarchar(30)yes公告发布者表3系统通知表列名数据类型允许空说明IdInt(11)通知id续表 3列名数据类型允许空说明notice_titleVarchar(255)yes通知主题notice_contentVarchar(500)yes通知内容notice_datedatetimeyes通知发布时间notice_deliverVarchar(30)yes通知发布者表4教师表列名数据类型允许空说明IdInt(11)教师idteacher_numberVarchar(20)yes教师号teacher_nameVarcahr(20)yes教师名称emailVarchar(50)yes教师邮箱teacher_courseVarchar(50)yes教学课程表5学生表列名数据类型允许空说明IdInt(11)学生idstudent_numberVarchar(20)yes学生号student_nameVarchar(20)yes学生名称student_sexVarchar(5)yes学生性别student_classVarchar(20)yes学生班级student_teacherVarchar(20)yes学生选课教师emailVarchar(50)yes学生邮箱表6课程信息表列名数据类型允许空说明IdInt(11)课程idtitleVarchar(30)yes课程名称InfoVarchar(500)yes课程简介表7试卷题库表列名数据类型允许空说明IdInt(11)试卷idtitleVarchar(255)yes试卷题目Option1Varchar(100)yes选项AOption2Varchar(100)yes选项BOption3Varchar(100)yes选项COption4Varchar(100)yes选项DanswerVarchar(100)yes答案表8下载资源信息表列名数据类型允许空说明IdInt(11)下载资源idfilenameVarchar(200)yes资源名称filedeliverVarchar(50)yes资源上传者filedatedatetimeyes上传时间表9成绩表列名数据类型允许空说明score_numberVarchar(20)学生号score_sgradedoubleyes考试成绩表10论坛互动表列名数据类型允许空说明IdInt(11)论坛idpidInt(11)yes判断此条记录是不是主题rootidInt(11)yes主题的idtitleVarchar(255)yes论坛主题conttextyes论坛内容pdatedatetimeyes论坛发布时间isleafInt(11)yes论坛级别6系统实现6.1数据库连接数据库连接在DB1.java文件中,返回一个到数据库的连接,它是一个公共类,其他类如果要连接数据库,只需要构造这个类的对象就可以了。源代码如下所示:public class DB1 public static Connection getConn() Connection conn = null;try Class.forName(com.mysql.jdbc.Driver);conn = DriverManager.getConnection(jdbc:mysql:/localhost:3306/jpkc, root, 123); catch (ClassNotFoundException e) e.printStackTrace(); catch (SQLException e) e.printStackTrace();return conn;6.2 系统首页登录页面启动服务器,在浏览器里输入相应的地址(在本机上输入:http:/localhost:8080/ComputerTrainingPlatform/),进入系统所设定的index(首页),如图6.1所示:图6.1系统登录首页其中登录页面的关键代码为:request.setCharacterEncoding(GB18030); String username = request.getParameter(username);String userpassword = request.getParameter(userpassword);System.out.println(username);System.out.println(userpassword);int userClass = Integer.parseInt(request.getParameter(userClass);System.out.println(userClass);if (username = null | username.trim().equals()| userpassword = null | userpassword.trim().equals() request.getRequestDispatcher(index.jsp).forward(request,response); else Connection conn = DB1.getConn();System.out.println(conn);Statement stmt = DB1.createStmt(conn);String sql = select * from user where username = + username+ and userpassword = + userpassword + ;ResultSet rs = DB1.executeQuery(stmt, sql);System.out.println(conn);if (rs.next() session.setAttribute(username, username);request.setAttribute(username, username);request.setAttribute(userClass, userClass);int uc = rs.getInt(3);if (uc = userClass) if (uc = 1) response.sendRedirect(student.jsp); else if (uc = 2) response.sendRedirect(teacher.jsp); else if (uc = 3) response.sendRedirect(manager.jsp); else out.println(请选择正确的登录身份);out.println(返回主页); else out.println(用户名/密码错误,请输入正确的用户名和密码!);out.println(返回主页);DB1.close(rs);DB1.close(stmt);DB1.close(conn);6.3.管理员界面管理员登录后,能够对系统进行管理,具体包括:管理用户,管理课件资源,管理试卷,管理论坛。具体描述如下图: 图6.2管理员界面在点击左侧树中“新闻公告”时,在右侧内容页面中会显示新闻公告的信息,可以添加新闻公告,查看信息公告内容和删除新闻公告,具体描述如下图:图6.3管理员新闻公告界面点击左侧树中“添加学生资料”时,在右侧内容页面中会显示添加学生的页面,具体描述如下图:图6.4 管理员学生添加界面关键代码:添加学生信息姓名:学号:Email:性别:男女教师:%for (int i = 0; i optionvalue=班级:计算机一班计算机二班计算机三班计科一班计科二班在点击左侧树中“管理论坛”时,在右侧内容页面中会显示所有论坛信息,可对信息删除和修改,也可以发表新主题和回复贴吧,具体描述如下图:图6.5 管理员管理论坛界面关键代码:主题发帖时间%int lineNumber = 0; for (Iterator it = articles.iterator(); it.hasNext();) Article a = it.next();String classStr = lineNumber % 2 = 0 ? jive-even: jive-odd;%tr class=a href=modify.jsp?id=MODahref=delete.jsp?id=&isLeaf=&pid=&from=DELaid=jive-thread-1href=articleDetailFlat.jsp?id=&articleTitle=6.4教师界面在登陆页面,选择教师角色,输入用户名001,输入密码1,然后经过验证,登录到管理员页面,具体描述如下图:图6.6教师登录界面点击左侧树中“管理选择题题库”时,在在右侧内容页面中会显示所有题目的信息,可对题目修改、查看和删除,具体描述如下图:图6.7教师选择题题库界面关键代码:管理选择题库题目操作%for (Iterator it = cqs.iterator(); it.hasNext();) ChoiceQuestion cq = new ChoiceQuestion();cq = it.next();%ahref=amanagerCQdelete.jsp?delId=删除a href=teachermanagerCQdetil.jsp?detId=查看a href=updatetimu.jsp?detId=更新共页 第页 - 首页 |a href=teachermanagerCQ.jsp?pageNo=上一页a href=teachermanagerCQ.jsp?pageNo=下一页 |a href=teachermanagerCQ.jsp?pageNo= class=尾页 %for (int i = 1; i option value= 第页6.5学生界面图6.8学生登录界面 点击左侧树中“课件下载”时,在在右侧内容页面中会显示所有课件的信息,具体描述如下图:图6.9学生下载课件界面关键代码:request.setCharacterEncoding(GB18030);String fileId = request.getParameter(fileId);Connection conn = DB1.getConn();Statement stmt = DB1.createStmt(conn);String sql = select * from sourcefile where id = + fileId;ResultSet rs = DB1.executeQuery(stmt, sql);SourceFile sf = new SourceFile();rs.next();sf.initFromRs(rs);String filename = sf.getFileName();System.out.println(filename);SmartUpload su = new SmartUpload();su.initialize(pageContext);su.setContentDisposition(null);su.downloadFile(this.getServletContext().getRealPath(/)+/source/filename);7点击左侧树中“学习论坛”时,在右侧内容页面中可以与教师学生进行互动,具体描述如下图:图6.10学生论坛互动界面点击左侧树中“在线考试”时,在右侧内容页面中学生可以在线考试,具体描述如下图:图6.11学生在线成绩界面关键代码:input type=hidden name=selectTotalNumbervalue= /input type=hidden name=selectScorevalue= /考试学生学号:input type=hidden name=studentNumbervalue= /一,单项选择题(共题,每题分%for (Iterator it = cqs.iterator(); it.hasNext();) ChoiceQuestion cq = new ChoiceQuestion();cq = it.next();%,input type=hidden name=questionTitlevalue= /input name=selectedAnswer type=radiovalue= /A,input name=selectedAnswer type=radiovalue= /B,input name=selectedAnswer type=radiovalue= /C,input name=selectedAnswer type=radiovalue= /D,7系统测试7.1 软件测试的目的软件测试的目的决定了如何去组织测试。如果测试的目的是为了尽可能多地找出错误,那么测试就应该直接针对软件比较复杂的部分或是以前出错比较多的位置。如果测试目的是为了给最终用户提供具有一定可信度的质量评价,那么测试就应该直接针对在实际应用中会经常用到的假设。软件测试是为了发现错误而执行程序的过程。一个好的测试用例是在于它能发现至今未发现的错误。一个成功的测试是发现了至今未发现的错误的测试。测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误的分布特征,可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。同时,这种分析也能帮助我们设计出有针对性地检测方法,改善测试的有效性。其次,没有发现错误的测试也是有价值的,完整的测试是评定测试质量的一种方法。详细而严谨的可靠性增长模型可以证明这一点。87.2 系统测试用例1. 系统登录在用户名和密码中分别输入gao 和123,点击登陆,可以正确进入C语言精品课程系统。2.系统操作进入管理员界面后,分别对教师,学生,课程,论坛,通知,公告,进行相应的增、删、改、查操作,然后计入后台数据库,查看后台的数据库时候已经更新完毕。3.角色更换重新退回到首页,变换不同的角色 ,然后登录到不同的界面,针对不同的界面进行不同的操作,测试各个模块的各个功能是否准确无误。4. 点击退出系统,系统正确退出。7.3 性能分析本系统是严格按照软件设计的步骤进行的。对软件的需求分析,系统整体的设计基本是从一般用户的角度出发,尽可能的考虑用户的实际操作感受。这样,系统对于操作员的要求就不是太高了,只要懂得电脑最基本的操作,就都能胜任,这符合一般软件的设计要求,比较实用。就系统已经实现的功能,目前看来,还是比较稳定的。但系统仍然遗留了许多问题等待解决。系统能完成大部分用户需要的功能,能一定程度上的满足用户的需求,但一些功能还是无法实现。但是在统计报表和安全管理的代码还需要完善。8总结通过这次的毕业设计,我不仅拓宽了自己的知识面,还在实践过程中巩固和加深了自己所学的理论知识,使自己的技术素质和实践能力有了进一步的提高,同时我的专业水平也有了很大的进步。同时,在软件开发方面也累积了不少经验,特别是在对软件开发工具不很熟悉的情况下,通过自己的学习和导师的指导完成了设计任务。并在设计过程中,自己分析问题和解决问题的能力都得到了锻炼和提高,完善了自己的知识结构,加深了对知识的理解。这次毕业设计完成后,体会颇多,在学与做的过程中,取长补短,不断学习新的知识,吸取经验,达到进步的目的。在学与做的过程中自身的努力以及相关图书资料的帮助,逐渐熟悉了JSP在数据库方面的应用知识。程序开发的一般过程和对数据库知识的进一步的了解,在这个快速发展的当代社会里,数据库已经普遍应用在各个领域。在这次的毕业设计中我学习到不少的数据库知识,但由于自己的理论知识水平有限,实践知识和设计经验不足,在设计过程中难免存在一些问题,甚至错误。恳请各位老师批评指正,以使我在以后的工作和实践中加以改进和提高。参考文献1李中尉 马文强 陈丹丹著,JAVA从入门到精通清华大学出版社 2004,42paul wilton,Jeremy mcpeak著,施宏斌译,JAVASCRIPT入门经典清华大学出版社 2009,2-23Gary J.Bronson著,张珑 刘雅文译,java编程原理清华大学出版社 2004,59-594 陈菁菁著,TOMCAT原理与JAVAWEB系统开发清华大学出版社 2009,35-365MySQL 简介_zhenhuaqin-ChinaUnix 博客 /uid-21411227-id-1826914.html,2012年5月1日访问6 Matthw Stucky著,金旭军,苗晓辉译,mysql:创建用户接口人民邮电出版社2002,24-247 Vivek Chopra, Jon Eaves, Rupert Jones等著,张文静, 林琪等译,jsp程序设计,人民邮电出版社2006,20-208软件测试 互动百科/wiki/%E8%BD%AF%E4%BB%B6%E6%B5%8B%E8%AF%95,2012年5月1日访问致谢四年的大学生活就快走入尾声,我们的校园生活就要划上句号,心中是无尽的难舍与眷恋。从这里走出,对我的人生来说,将是踏上一个新的征程,要把所学的知识应用到实际工作中去。 回首四年,取得了些许成绩,生活中有快乐也有艰辛。感谢老师四年来对我孜孜不倦的教诲,对我成长的关心和爱护。学友情深,情同兄妹。四年的风风雨雨,我们一同走过,充满着关爱,给我留下了值得珍藏的最美好的记忆。能够顺利地完成这次毕业设计,首先要感谢校领导、老师给予我的大力支持与鼓励,使我的毕业设计能够达到预期的效果。在毕业设计期间,最辛苦的就是我的指导老师。不论是学习还是工作,老师都是一丝不苟。他认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我受益匪浅。这对于我以后的工作和学习都是一种巨大的帮助。同时在她身上我也学到了兢兢业业、奋发向上的精神,这种精神是我今后人生前进道路上的明灯。在这里我还要感谢那些和我一起走过这段岁月,帮助我、关心我、鼓励我的同学们。有了他们的支持、鼓励与帮助,我才能更加地坚定自己的信念,将毕业设计做的更好。与此同时,我自身也有了长足的进步与发展。学到了一些新的技术,增强了自身的知识储备,扩大了知识面。同时我也深深地体会到了团队精神的重要性。无论是在工作还是在学习与生活中,我们都不能离开团队而独立生活。我们要的是集体主义精神而不是个人主义精神,只有我们团队中的每个成员都好了,我们的团队才能壮大,我们自身的价值才能被充分地肯定与体现。最后,再次对所有关心我、帮助我、支持我、鼓励我的人说一声“谢谢”。附录 数据库建库脚本CREATE DATABASE /*!32312 IF NOT EXISTS*/jpkc /*!40100 DEFAULT CHARACTER SET utf8 */;USE jpkc;/*Table structure for table choicequestion */DROP TABLE IF EXISTS choicequestion;CREATE TABLE choicequestion ( id int(11) NOT NULL AUTO_INCREMENT, title varchar(255) DEFAULT NULL, option1 varchar(100) DEFAULT NULL, option2 varchar(100) DEFAULT NULL, option3 varchar(100) DEFAULT NULL, option4 varchar(100) DEFAULT NULL, answer varchar(100) DEFAULT NULL, difficulty int(11) DEFAULT NULL, PRIMARY KEY (id) ENGINE=InnoDB AUTO_INCREMENT=44 DEFAULT CHARSET=gbk;/*Data for the table choicequestion */*Table structure for table course */DROP TABLE IF EXISTS course;CREATE TABLE course ( id int(11) NOT NULL AUTO_INCREMENT, course_number varchar(20) DEFAULT NULL, title varchar(30) NOT NULL, teacher varchar(20) NOT NULL, info varchar(500) DEFAULT NULL, courseType int(11) NOT NULL, course_studentno varchar(20) DEFAULT NULL, PRIMARY KEY (id) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=gbk;/*Data for the table course */*Table structure for table message */DROP TABLE IF EXISTS message;CREATE TABLE message ( id int(11) NOT NULL AUTO_INCREMENT, title varchar(50) DEFAULT NULL, info varchar(500) DEFAULT NULL, mdate datetime DEFAULT NULL, PRIMARY KEY (id) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=gbk;/*Data for the table message */*Table structure for table news */DROP TABLE IF EXISTS news;CREATE TABLE news ( id int(11) NOT NULL AUTO_INCREMENT, title varchar(255) DEFAULT NULL, content varchar(500) DEFAULT NULL, ndate datetime DEFAULT NULL, deliver varchar(30) DEFAULT NULL, PRIMARY KEY (id) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=gbk;/*Table structure for table notice */DROP TABLE IF EXISTS notice;CREATE TABLE notice ( id int(11) NOT NULL AUTO_INCREMENT, notice_title varchar(255) DEFAULT NULL, notice_content varchar(500) DEFAULT NULL, notice_date datetime DEFAULT NULL, notice_deliver varchar(30) DEFAULT NULL, PRIMARY KEY (id) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=gbk;/*Table structure for table score */DROP TABLE IF EXISTS score;CREATE TABLE score ( score_number varchar(20) NOT NULL, score_sgrade d
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。