1、江苏海事职业技术学院 毕业论文专科毕业设计(论文)设计题目:高职院校软件技术专业教学资源库的设计与实现 系 部: 信息工程系 专 业: 软件技术 班 级: 软件技术081301 姓 名: 陈洁 学 号: 082118130125 指导教师: 吕太之 职 称: 讲师 20 11年6月 南京摘要本教学资源管理系统是采用Java服务器语言开发的。Java语言的强大网络功能,安全性和跨平台性,B/S模式的瘦客户端性,极大的增强了本系统的适用性、灵活性和安全性。本系统采用Dreamwaver MX 2004作为系统的前台开发工具,Microsoft SQL Server作为后台数据库开发工具。在Wind
2、ows XP 中使用JDBC驱动程序实现数据库的连接。系统实现了普通用户快速搜索、浏览、下载学校最新公告以及其所需教程、相关课件等信息;普通用户在线书写备忘录、收发留言、浏览、提出、回答各种问题等互动操作;此外,管理员能添加、删除和修改公告、教程和课件;对用户提出以及解答的各种问题进行有效的组织和管理等。关键词:教学资源管理系统;JSP;B/S模式;SQL ServerAbstractThe system for teaching resource is developed with Java Server Pages (JSP) and BrowseServer Model. With th
3、e help of JSPs high security, strong network function, and cross-platform as well as B/Ss simple client, the system has great advantage in applicability, flexibility and security. The WEB-based teaching resource management system, taking Dreamweaver MX 2004 as foreground development tool, and Micros
4、oft SQL Server as the backstage database development kit, and using the JDBC driver in Windows XP to achieve the connection between the database, can help the customer to make the fast searching, browsing, and downloading the school newest announcement as well as the need course and related coursewa
5、re. It also help the customer to propose the interactive operations such as writing the memorandum, sending and receiving message, browsing, asking and answering the questions online. In addition, the system manager can add, delete and modify the notes, courses without any difficulties, and to achie
6、ve the effective organization and management with all kinds of the questions of the users. Key words: teaching resource management systems; JSP; B/S mode; SQL Server目 录1绪论11.1教学资源管理系统的研究背景11.2 教学资源管理系统的研究目的和意义11.3教学资源管理系统的功能和特点22 需求说明32.1 需求分析32.2 可行性分析32.2.1技术可行性32.2.2经济可行性32.3.3操作可行性33系统构架及开发工具简介4
7、3.1应用系统架构方式43.1.1B/S架构概述43.1.2系统体系结构43.2开发工具简介43.2.1系统开发技术JSP43.2.2SQL Server简介54概要设计64.1系统功能64.1.1系统的整体功能模块64.1.2 管理员后台管理功能模块74.2数据库设计74.2.1逻辑设计74.2.2 数据库表设计85 后台管理功能模块在系统中的实现125.1 用户权限管理模块的实现125.2 教学资源信息管理模块的实现125.2.1 添加、修改公告135.2.2 删除公告165.3 “知道吧”模块的实现185.3.1 添加版块185.3.2 删除版块186 测试与编码206.1 测试概要20
8、6.2 模块测试计划20总 结22致 谢 语23参 考 文 献24- 5 -江苏海事职业技术学院 毕业论文1绪论1.1教学资源管理系统的研究背景随着教育改革的深入发展,改变传统课程中过于强调学生在课堂接受学习、机械训练、死记硬背的现状,倡导学生主动参与、勇于探索,培养学生搜集和处理信息的能力、获取新知识的能力、分析问题和解决问题的能力以及相互合作的能力是当今信息化教学的一个发展方向。教学的重心开始由“教”转向“学”,使学生从家教式、被动式学习状态转变为自主学习、双向交流的状态。随着网络的飞速发展,越来越多的人积极利用网络学习,并共享了网络上丰富的信息化资源。随着网络技术向高速、多媒体、宽带等方
9、向的发展,使得它更具人性化的应用方式大力推动了教学的信息化的飞速前进。校园网络的广泛建设,为教学现代化提供了有理的硬件基础。然而硬件配备齐全后,许多学校建立起来的校园网由于缺乏教学信息化资源,难以发挥其在教学与师生交流中应有的作用,造成了大量设备的闲置与资源的浪费。对于学校或者教育机构来说,如何对这些资源进行有效的管理和组织是相当有必要的。由此可见,基于校园网的教学资源管理系统的建设,在计算机辅助教学过程中是个里程碑式的转折。它使得教学过程由此前的封闭、传统的应用模式拓展为更加先进、开放、灵活的资源共享应用。因而,信息技术能更为全面、效率的服务于教学过程中,二者相辅相成。教学资源管理系统是专为
10、教学、学习而设计的一款结构化的资源库,资源内容主要针对一定范围内的使用者:教师、学生、系统管理员。为用户提供互联网多媒体教学资源服务,创造了更加良好绿色的网络学习环境。便于老师、学生之间的相互交流,提高教与学的效率。1.2 教学资源管理系统的研究目的和意义教学资源管理系统以教学应用为目的,以资源建设为重点,以平台建设为保障,能够提高教学资源的利用率,可以作为教师教学的助手,学生学习的工具。虽然网络教学资源管理系统的建设和重要性已经受到越来越多学校的认可,但还是有许多学校由于缺乏合适的教学资源系统而导致信息教学设备的闲置与浪费。因此,正确认识教学资源管理系统的建设,科学利用网络教学资源库,对高校
11、的教育教学十分有必要。本系统通过对教学资源库的设计,实现一个安全稳定、方便易用,可广泛共享的教学资源共享平台。其合理设计与建设,为学生提供了可视化的学习中心,培养学生自主学习的能力,利用网络获取知识,并从中查找解决问题的办法。通过教师和其他学生上传的课件等教学资源,潜移默化的提高学生的实践能力,真正引导学生自主学习。同时,教师与学生的交互平台,可以实现学生在网上直接完成作业及课程设计,通过与其他同学和老师的探讨来掌握知识,加深印象,真正体现网络教学的优势。本系统的建设,使得教师、学生和教学资源之间形成网状结构,较好的体现了“教”与“学” 的关系。教师可以直接在网上对学生进行指导,教学资料和课件
12、可以及时上传,随身备课。可以说,该系统对高校信息化教学建设具有一定的现实意义。1.3教学资源管理系统的功能和特点本系统能实现一般教学资源管理系统应该具有的基本功能。比如:学生用户快速搜索、浏览、下载学校最新公告和其所需教程、课件;教师用户发布课件、上传相关教学辅助材料、下载制作课件及其他教育教学工作中所需的各种文档、图片素材等。教学工作的开展是双向的,只有为师生之间的交流提供一个好的平台,营造出民主、和谐、平等的教学环境,才能提高教学效率,适应信息化社会对教育教学的要求。2 需求说明2.1 需求分析目前随着计算机网络技术在教育教学应用中的迅速发展,使得教学资源呈现出种类多、数量大、形式杂的状况
13、。对这些资源进行有效的组织和管理,让学生在众多的教学资源中能快速搜索、浏览所需信息,让教师能方便快捷地进行课件、教程发布是一个急需解决的问题。此外,本系统主要是为学校教育教学服务,目的在于提高教学效率,促进学生全面发展。用户群主要是教师和学生,使得教学成为一个师生交互、交流的过程,因此还要求系统能够实现一定的用户交互,成为一个生生、师生交流的平台1。2.2 可行性分析2.2.1技术可行性JSP运行和开发环境:操作系统:Windows XP;浏览器:IE;数据库:SQL Server;Web服务器:Tomcat;JSP引擎:Tomcat综合开发本系统应用到的JSP动态网页技术对开发环境的要求的考
14、虑,在技术上是可行的,而且可靠性很高24。2.2.2经济可行性本系统是为方便管理员对教学资源进行管理,便于教师与学生的“教”与“学”,运行该软件即可使用,系统成本少。投入运行后可为学校教学资源管理节约大量的人力物力。系统所带来的效益远大于系统软件的开发成本,方便有效,简单易行。2.3.3操作可行性本系统经过仔细的分析后所设计的界面简洁清晰,尽可能考虑用户使用时的习惯,操作简单,用户的每一个操作都会有所响应,数据读取灵活可靠,功能规范齐全,容易使用。3系统构架及开发工具简介3.1应用系统架构方式3.1.1B/S架构概述本系统采用B/S架构方式实现,即浏览器/服务器架构。B/S架构方式由浏览器和服
15、务器组成:浏览器是表示层,在该层中包含了系统的显示逻辑。它的任务是由浏览器向网络上的某一Web服务器提出服务请求,Web服务器对用户身份进行验证后用HTTP协议把所需的主页传送给客户端,客户端接受传来的主页文件,并把它显示在浏览器上5。本系统采用此构架方式主要基于以下几点考虑:在服务器上对数据进行处理并将处理结果生成网页,使得客户机上对数据的处理被进一步简化。客户机上以浏览器作为客户端的应用程序实现对数据显示,而不用再为客户端单独编写和安装其他类型的应用程序。由于数据的处理、存储都是在服务器上完成,因此将来对系统(无论是硬件还是软件)的升级都只是对服务器进行。所以,网络应用软件易于管理和维护,
16、而且扩展性好。3.1.2系统体系结构本教学资源管理系统最底层是操作系统Windows xp;第二层是数据库系统层;第三层是数据库接口层,通过应用服务器将数据信息采集到各接口系统中;第四层为服务层,通过JSP与应用服务器进行信息交换,同时通过HTTP与Browser进行信息交换;第五层为用户层,它面向最终用户,通过用户页面与系统进行信息交换。因此该系统设计包括用户页面设计(前台页面)、数据库设计、应用程序设计(后台页面)。3.2开发工具简介3.2.1系统开发技术JSPJSP(IAVA SERVER PAGES)是一种动态网页技术标准。JavaServer Page技术封装了许多功能,这些功能是在
17、易用的、与JSP相关的XML标识中进行动态内容生成所需要的。作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点6。3.2.2SQL Server简介本教学资源管理系统是以SQL Server作为平台开发的教学资源管理系统,适合一般规模学校使用。SQL Server 是一个关系数据库管理系统,是一个全面的、集成的、端到端的数据解决方案,它为用户提供一个安全、可靠和高效的平台用于数据管理。4概要设计4.1系统功能4.1.1系统的整体功能模块系统功能模块图如图1所示:系统首页登录页面返回登录页公告信息个人信息备忘录上传教参信息知道吧留言箱教程资料课件资料图1系统功能模块
18、图 用户登录模块:一般用户根据管理员分配的用户名、密码进行登录。首次登录后会提醒修改原始密码。 公告信息管理模块:一般用户点击公告标题链接可以浏览公告,可根据需要选择要下载、保存的公告内容; 教参信息(教程、课件)管理模块:本系统将教参信息分为教程和课件两大类。学生用户可以浏览、下载选择的教程、课件信息进行学习,教师用户可以浏览、下载各种教程、课件信息,包括各种课件制作素材等; 资料上传模块:一般用户登录成功后,可进入“上传区”进行教学资源的上传。个人信息管理模块:一般用户进入个人信息后,在备忘录中可以添加、删除、修改自己的备忘录信息。在留言箱中可以阅览收到的留言信息、删除留言、给其他用户发送
19、留言信息;知道吧信息管理模块:用户登陆以后,可以浏览问题、回答问题,也可以提出问题。实现用户间的非实时的交互。4.1.2 管理员后台管理功能模块管理员登录返回首页文章管理知道吧管理用户管理系统管理员管理浏览文章添加文章删除文章修改文章修改版块修改版主添加版块删除板块查询用户信息添加用户信息删除用户信息浏览管理员信息添加管理员信息删除管理员信息修改密码管理员用户登陆操作管理模块如图2所示:图2 管理员用户操作模块图 文章管理模块:管理员可以在后台对公告进行浏览、添加、删除和修改。 知道吧管理模块:管理员可以在后台对知道吧板块进行修改、添加、删除,另外,对每个板块的版主可以进行修改。 用户管理模块
20、:管理员在后台对本系统一般用户进行管理,主要可以添加和删除用户信息,对用户信息进行查询等。 系统管理员管理模块:管理员在后台对系统管理员进行浏览、添加和删除管理员信息,还可以对管理员的登录密码进行修改。4.2数据库设计数据库设计在整个管理系统中占有非常重要的地位,数据库结构设计的好坏将直接影响应用系统的效率以及实现的效果。合理的数据库结构可以提高数据存储效率,保证数据的完整性和一致性。在数据库建立时,大体上选建立一个总体的数据库存文件,以便统一调用数据库连接语句1011。4.2.1逻辑设计该系统有四个不同的用户身份,分别为游客、学生、教师、管理员。每个身份的用户权限不同。在系统用户中,游客不需
21、存储信息。学生用户和教师用户共用一个表,除了有学生学号、教师工号、姓名、登陆密码等登录必须的信息之外,还有在知道吧中涉及到的积分等的具体信息。管理员则只需要用户名和密码。另外,知道吧、备忘录、留言箱、上传区等模块分别有不同的表来存储信息。4.2.2 数据库表设计经过分析,初步设计如下十个表:管理员基本信息表(admin)包括:管理员编号、管理员用户名、密码、上次登录时间、最近登陆时间、登陆次数等信息;表1管理员基本信息表(admin)字段名称数据类型数据长度允许空说明idint4No自动编号(主键)adminidChar20Yes管理员姓名pwdChar20No管理员密码preloginDat
22、atime8Yes上次登陆时间logintimeDatatime8Yes最近登陆时间totleint4Yes登陆次数普通用户信息表(ts_user) 包括:用户编号、学号或者工号、姓名、密码、昵称、用户积分、知道吧等级、用户身份标识等信息;表2 普通用户信息表(ts_user)字段名称数据类型数据长度允许空说明IdInt4No自动编号(主键)UseridChar15yes学号UsernameChar20yes姓名UserpwdChar20No密码NicknameChar30yes昵称MarkInt4yes积分StatusInt4yes等级qxInt4yes身份标识(1:师2:生)文件信息表(t
23、s_article) 包括:文件编号、文件标题、文件内容、上传文件作者姓名、创建时间、文件全称、文件所属版块编号(1:公告类,2:教程类,3:课件类)、文件点击次数;表3 文件信息表(ts_article)字段名称数据类型数据长度允许空说明IdInt4No文件编号(主键)TitleChar100yes标题ContentVchar8000yes内容authorChar20yes作者Flag int4yes状态(1:过2:中3:未)CreatetimeDatetime8yes创建时间FilenameChar200yes文件名称SortidInt4yes版块编号hitint4yes点击次数文章类别信
24、息(ts_sortid) 包括:类别编号、类别名称;表4 文章类别信息(ts_sortid)字段名称数据类型数据长度允许空说明IdInt4No类别编号(主键)namechar20yes类别名称备忘录文件信息(ts_log) 包括:文件编号、创建时间、内容、作者号;表5 备忘录文件信息(ts_log)字段名称数据类型数据长度允许空说明IdInt4No编号(主键)CreatetimeDatetime8Yes创建时间ContentNchar500Yes内容useridchar15Yes作者学号留言信息(ts_news) 包括:留言编号、发送者号、接受者号、留言主题、留言内容、创建时间、留言状态标识等
25、;表6 留言信息(ts_news)字段名称数据类型数据长度允许空说明IdInt4No留言编号(主键)SenderChar15Yes发送者学号ReceiverChar15Yes接受者学号TopicChar50Yes主题ContentNchar500Yes内容createtimeDatetime8Yes创建时间flagint4yes留言状态(1:未读2:已读)答题信息表(know_answer) 包括:答案编号、答题时间、答案内容、回答者号、答案所对应的问题编号等;表7答题信息表(know_answer)字段名称数据类型数据长度允许空说明IdInt4No答案编号(主键)CreatetimeDate
26、time8Yes答题时间ContentVarchar5000Yes答题内容replierChar15Yes回答者学号articleidint4Yes问题编号问题信息表(know_article) 包括:问题编号、提问者号、问题标题、提问时间、问题解决时间、问题内容、问题补充内容、问题解决标识、问题分值、回答者号、问题所属版块编号、回答总数、最佳答案编号等;表8 问题信息表(know_article)字段名称数据类型数据长度允许空说明idInt4No问题编号(主键)AskerChar15yes提问者学号TitleChar60yes标题Createtimedatetime8yes提问时间Settl
27、etimedatetime8yes解决问题时间contentVarchar5000yes问题内容AddcontentVarchar3000yes问题补充内容Flagint4yes解决标记(1:未2:已)AwardChar10yes问题分值replierChar15yes回答者学号SortidInt4yes问题版块编号answeredInt4yes回答总数bestidchar10yes最佳答案编号问题版块信息表(know_sortid) 包括:版块编号、版块名称、版主姓名等;表9 问题版块信息表(know_sortid)字段名称数据类型数据长度允许空说明IdInt4No版块编号(主键)NameC
28、har50yes版块名称adminidchar20yes版主姓名积分等级表信息(know_step) 包括:积分等级标识、等级名称、积分范围等;表10积分等级表信息(know_step)字段名称数据类型数据长度允许空说明stepInt4No等级(主键)Stepnamechar20Yes等级名称rangeint4yes等级积分范围5 后台管理功能模块在系统中的实现5.1 用户权限管理模块的实现为了更好的实现用户权限管理,在数据库中用户表分成了管理员(admin)和一般用户(ts_users)两张表。一般用户表中,又通过“qx”字段区分身份。登录时,管理员跟一般用户通过不同登陆界面进入系统。管理员
29、登录后进入如图3所示的后台管理界面,对教学资源进行管理。图3 管理员后台 管理界面管理员在这个界面中可实现对一般用户以及教学资源信息的管理:包括对一般用户的批量或者个人的增加、修改、删除、查询;对发布信息(包括公告、教程、课件)的增加、修改和删除,发布信息的审查;对“知道吧”模块的板块内容的增加、修改、删除等。5.2 教学资源信息管理模块的实现教学资源信息包括有:公告、教程、课件三个部分,下面以“公告列表”为例,详细阐述本系统对教学资源信息的管理功能。5.2.1 添加、修改公告如图4所示,为管理员添加、修改公告的界面图:图4 管理员添加、修改公告界面在数据库设计中,公告、教程和课件共用arti
30、cle表,因而在实现上三者几乎无异。实现“添加公告”“修改公告”功能,是将页面中读取的公告信息通过SQL语句写入或更新至article表中,代码如下:/增加文章 public Boolean AddArticle() throws Exception Connection conn=null; PreparedStatement stmt =null; ResultSet rs =null; String sql =insert into ts_article (title,content,author,sortid,createtime,filename) values (?,?,?,?,?
31、,?); boolean result=false; try java.util.Date date=new java.util.Date(); Timestamp tt=new Timestamp(date.getTime(); conn=DBConn.getConn(); stmt= conn.prepareStatement(sql); stmt.setString(1,this.title); stmt.setString(2,this.content); stmt.setString(3,this.author); stmt.setInt(4,this.sortid); stmt.s
32、etTimestamp(5,tt); stmt.setString(6, this.filename); stmt.executeUpdate(); result=true; catch(Exception e) e.printStackTrace(); finally try if(rs!=null) rs.close(); if(stmt!=null) stmt.close(); if(conn!=null) conn.close(); catch(Exception e) e.printStackTrace(); return result; /修改文章 public Boolean E
33、ditArticle() throws Exception Connection conn=null; PreparedStatement stmt =null; ResultSet rs =null; String sql =update ts_article set title=?,content=?,author=?,sortid=?,filename=?,flag=? where id=?; boolean result=false; try conn=DBConn.getConn(); stmt= conn.prepareStatement(sql); stmt.setString(
34、1,this.title); stmt.setString(2,this.content); stmt.setString(3,this.author); stmt.setInt(4,this.sortid); stmt.setString(5,filename); stmt.setInt(6,this.flag); stmt.setInt(7, this.id); stmt.executeUpdate(); result=true; catch(Exception e) e.printStackTrace(); finally try if(rs!=null) rs.close(); if(
35、stmt!=null) stmt.close(); if(conn!=null) conn.close(); catch(Exception e) e.printStackTrace(); return result; 5.2.2 删除公告如图5所示,为管理员删除公告的管理界面图:图5 管理员删除公告界面点击“删除”后会跳出如图6所示的提示框,说明删除公告已经操作成功。图6 删除成功提示框实现“删除公告”功能,是通过读取页面中所选文章的Id号,用SQL语句将article表中所对应id的文章信息删除,代码如下:/删除文章 public Boolean DelArticle(int a_id)
36、throws Exception Connection conn=null; PreparedStatement stmt =null; ResultSet rs =null; String sql =delete from ts_article where id=?; boolean result=false; try conn=DBConn.getConn(); stmt= conn.prepareStatement(sql); stmt.setInt(1,a_id); stmt.executeUpdate(); result=true; catch(Exception e) e.prin
37、tStackTrace(); finally try if(rs!=null) rs.close(); if(stmt!=null) stmt.close(); if(conn!=null) conn.close(); catch(Exception e) e.printStackTrace(); return result; 5.3 “知道吧”模块的实现管理员对 “知道吧”模块的管理功能:对各版块的添加、删除,以及对版主的修改。5.3.1 添加版块如图7所示,为管理员添加版块的界面图:图7 添加版块5.3.2 删除版块如图8所示,为管理员删除版块的界面图:图8 删除版块 点击“删除”后会跳出
38、如图9所示的提示框,说明删除版块已经操作成功。6 测试与编码6.1 测试概要测试的基本概念。软件开发过程必须伴有质量保证活动。软件测试是软件质量保证的关键阶段,是对软件设计和编码的最终检查。软件测试的目的是找出错误所在。即软件测试是为了发现程序中的错误而执行程序的过程。测试的目的与地位。 测试是为了寻找错误而运行程序的过程。 一个好的测试用例是指很可能找到迄今为止尚未发现的错误的测试。 一个成功的测试是揭示了迄今为止尚未发现的错误的测试。6.2 模块测试计划首先,模块测试概念说明。模块测试又称单元测试。一个测试应该能够自我独立。它不应该与其他测试相关联,也不应该依赖任何具有特殊运行顺序的测试,
39、它应该能够获得你所写的所有测试,可以随意运行所有测试或者只运行其中的一部分,并且是以任何顺序,而且要能够确保它们无论怎样都应该正确的运行。其次, 模块测试内容。功能测试概述 。功能测试又称正确性测试,它检查软件的功能是否符合规格说明,对产品的各功能进行验证。安全测试概述。软件安全测试为了实现如上功能和保证一定的安全性。对于管理员用户我们采用白盒测试。我们可以通过修改删除一个数据后直接查看数据库的更新情况来进行判断;对于教师和同学, 我们在测试中使用了黑盒法。请一位不熟悉本系统的用户来进行随意性的操作,打破习惯的操作顺序,从中发现错误,在此阶段系统的大量错误得到了改正。管理员登陆测试如表11所示
40、:表11管理员登陆系统测试管理员ID密码结果当前登录者ID正确正确当前登录者ID错误错误非当前登录者ID正确错误非当前登录者ID错误错误乱码错误错误用户跨权限测试:该测试主要是指未登陆用户去进行登陆用户的操作,或者等级低的去操作等级高的。比如在本系统中当游客去访问个人信息页面时,会弹出提示窗口,要求用户登陆;在游客点击知道吧我要提问时,也会提示访客无权操作,必须选登录才行。这里判断是否跨权限,有两个方法,一个是通过session,一个就是通过验证用户名和密码来判断是否是授权用户。 安装测试概述。本系统作为一个软件应该进行安装部署设置。分为软件安装与数据库安装。测试安装部署主要是测试软件安装是否正常,安装后使用情况如何,是否丢失文件。数据库安装测试主要是数据库表的关系等是否安装成功以及能否正常使用。如表3为数据文件安装测试结果:表 3数据文件安装服务器名数据库登陆帐号密码结果空正确错误错误空错误错误错误正确名正确正确正确执行正确名错误正确错误乱码错误错误错误26总 结本教学资源管理系统功能基本达到不同用户需求。主要功能如下:实现学生用户浏览、搜索、上传及下载所需各种教学资源进行课外自主学习;教师上传教程课件等教学资源、及时发布、批改学生作业等。本系统创新之处在于:用户之间能通过留言板进行简单的交流;用户登陆后能进行在线提问、回答问题,实现生生之间、师生之