吕太之
(1.江苏海事职业技术学院 信息工程系,南京 211170;2.南京理工大学 计算机科学与技术学院,南京 210094)
在教育领域,普遍存在着教师资源和教学资源分配不平衡的现象。作为高校,有着提高全民素质的责任和义务,通过建设开放式教学资源库,可以使优质教学资源得到更加高效、广泛的运用,在一定程度上缓解教育资源分配不均的现象,为提高全民素质发挥更大作用。
我国高职高专院校目前正处于高速发展期,创建高职院校教学资源库平台是国家示范性高等职业院校建设的主要内容之一。高职院校教学资源库平台是将各个专业作为教学资源库的基本单元,建设内容包括专业教学目标与标准、精品课程体系、教学内容、实验实训、教学指导、学习评价等要素,以满足学生自主学习需要,为高端技能型专门人才培养和构建终身学习体系搭建公共平台。
该系统使用了B/S的体系结构,采用当前主流的J2EE框架。在实现中,按照MVC的模式将系统分成了数据层(Model)、视图层(View)和业务逻辑层(Controller),极大地提高了系统的开发效率,降低了后期的维护成本。本系统以MySql作为后台数据库,MyEclipse为开发工具,Tomcat作为Web服务器,Linux作为服务器操作系统,开发者可以方便灵活地使用这些工具集,满足其特定需求。
本系统的主要目标是一方面要整合、开发校内各专业的优质教学资源,另一方面还要引进吸收国内外相关专业、相关行业成型的资源。各院校应该特别强调具有自主知识产权的原创性资源开发,强调对国内外先进成熟的教学资源的引进。在建设方案上应该充分考虑系统的开放性、共享性、可扩展性和高可靠性原则,重点做好技术架构设计、功能模块设计、资源开发接口设计、网络教学应用模块设计、资源校际共享模块设计、资源管理模块设计。在界面要求上要具有优良的人机交互特性。
在系统处理功能的设计上,力求使每个模块具有较强的内聚度,而且模块之间耦合度低。整个系统包含两个子系统:前台浏览、后台管理。前台浏览主要是课程体系的查看,课程信息包括教学大纲、授课计划、课件、实验、视频资源、电子书、课程论坛等。后台管理包括系统维护和相关资源的管理。
本系统采用MySql作为底层关系数据库,该数据库由一系列产品组成,功能强大,不仅能够满足最大的数据处理系统和商业Web站点存储数据的需要,还能为个人或小企业提供易于使用的数据存储服务。
数据库主要包含以下几部分:(1)基本信息,包括系部表,专业表,教师表,学生表,字典表等基础数据;(2)资源库表,包括课程计划表,课程大纲表,视频资源表,课件表,电子书表,样卷表,实验实训表等资源数据;(3)交互表,包括课程论坛表,教师博客表,学生作业表等交互数据。
数据库连接池技术是指:在系统初期或者是初次使用时,完成数据库的连接,以后不再释放此连接而是在处理后面的请求时,反复使用这些已经建立的连接。这种方式既可以大大减少数据库的处理时间,又利于系统整体性能的发挥。连接池一般比直接连接更有优越性,因为它在提高了性能的同时还保存了宝贵的资源。打开数据库连接是CPU和网络的重要任务,在整个应用程序的使用过程当中重复打开直接连接将导致性能下降,而池连接只在服务器启动时打开一次,从而消除了这种性能问题。有关连接参数的特有信息,只对池驱动程序有效,如数据库用户名称和密码,从而增强了系统的安全性和可管理性。
Ajax(Asynchronous JavaScript and XML)技术是目前深受Web用户欢迎的一项技术,它利用JavaScript、DOM、XMLHttpRequest实现客户端与服务器的异步交互。本系统中多处用到Ajax技术。
为了能在Web浏览器上显示,要求用户界面使用HTML以及图片的方式来展现数据,传统的一些利用操作系统本身的控件来开发的用户界面无法适应琳琅满目的客户端。为了创建一个可以在Web浏览器上查看的图表,可以直接在Web服务器端生成图表图片文件后发送给浏览器。在本系统中我们采用JAVA的图表引擎JFreeChart来产生基于Web的图表。它主要用来生成各种各样的图表,包括:饼图、柱状图(普通柱状图以及堆栈柱状图)、线图、区域图、分布图、混合图、甘特图以及一些仪表盘等等。这些不同式样的图表基本上可以满足目前的客户需求。我们使用JFreeChart来显示各资源的使用情况,让用户可以对资源的使用情况一目了然。
文件上传是Web应用程序的基本功能之一。系统利用jakarta apache公司提供的commonsfileupload组件实现文件上传,我们运用文件上传功能将用户各类资源上传到服务器的文件夹中。
由于学校原有系统采用了各自独立的用户库和用户认证体系,致使每个应用系统中都有独立的账号,没有一个统一的用户账号,进入每一个应用系统前都需要以该应用系统的账号来登录。这给用户使用带来了不便,如果能在登录任一应用系统之后不必再经过其他应用系统的认证直接进入其他应用系统将为用户提供极大的方便。本系统采用了单点登录简称SSO,是指在多个应用系统中,用户只需要登录一次就可访问所有相互信任的应用系统,无须记忆多个用户名、密码,也无须进行多次登录访问。这一特点不仅给用户使用带来了方便,也为应用系统的安全性提供了新的解决方案。
本系统的实现大部分采用开源软件,极大地降低了开发成本。操作系统上我们选择了Linux,Linux不仅在安全性等性能方面比Windows高,更重要的是它是开源的。数据库管理系统采用开源数据库中最优秀的MySQL,MySQL数据库完全能够满足系统的正常使用。Web服务器采用Apache,安全性等性能方面都是非常优秀的。
如何将学院原有教务系统和其他系统有效整合成为系统成功的关键。本系统采用了SOA架构,有利于与原有系统的整合。面向服务的体系结构(service-oriented architecture,SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。SOA与平台无关,减少了业务应用实现的限制。其具有低耦合性特点,所以增加或减少业务伙伴对整个业务系统的影响较低。
安全方面该系统采用了访问控制技术和加密技术。访问控制技术主要用于确定合法用户对计算机网络中信息资源所享有的权限,以防止非法用户的入侵和合法用户使用非权限内的信息资源。采用加密技术可以预防网络监听等行为,最大限度地保障信息的安全性。
在很多实际的软件开发项目中,安全测试已经成为软件开发生命周期一个不可或缺的组成部分,并成为整个项目过程中的长期任务。在测试中开发者经常通过单元测试和集成测试来检验代码设计,发现bug后及时修改。一个系统即使投入使用后,也需要进行长期的维护。
Apache JMeter是一个专门为运行和服务器装载测试而设计的、100%的纯Java性能测试工具。使用JMeter模拟50个用户并发操作系统,运行结果良好。
以上介绍了如何运用MVC模式来进行系统的设计与实现。随着Web应用程序的不断发展,使用MVC模式可以很好地将Web系统分为三层,使得程序开发人员更清楚地掌握项目的进度,从而对系统进行更好的管理,在这种规范下设计出的Web应用程序大大提高了软件的可扩展性和重用性,保证了系统的稳定性、灵活性、易维护性。
[1]Ryan Asleson.Foundations of Ajax[M].北京:人民邮电出版社,2006:247-250.
[2]赵晓峰.利用AJAX构建动态WEB应用[J].深圳信息职业技术学院学报,2006(4):47-50.
[3]袁嘉.基于Struts+Spring+Hibernate的 Web开发框架[J].网络安全技术与应用,2008(4):210-214.
[4]潘峰,宋扬.基于Struts框架的商务网站平台设计[J].商场现代化,2008(9):172-176.
[5]李歆.基于J2EE的网上交易系统的开发[J].咸宁学院学报,2007(6):54-58.
[6]田小波.陈蜀宇MVC设计模式在J2EE架构下的研究与应用[J].西华大学学报(自然科学版),2007(2):27-31.