校园资源互动交流平台的设计与实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
校园资源互动交流平台的设计与实现
作者:毋世晓赵翠
来源:《计算机光盘软件与应用》2013年第20期
摘要:基于MVC的校园资源互动交流平台是以大学教师和在校大学生为研究对象的,共包括五个模块:登陆模块、资源上传模块、资源下载模块、关键字查询模块、BBS论坛模块,设计初衷是为了解决课后的文件资源共享问题以及师生的互动交流问题。通过该平台,教师可以上传学习文件,学生可以利用关键字查询查找资源并进行下载,师生可以使用BBS进行交流。
关键词:MVC;关键字查询;BBS;互动交流;资源共享
中图分类号:TP311.52
数字化校园是以数字化信息和网络为基础,在计算机和网络技术上建立起来的对教学、科研、管理、技术服务、生活服务等校园信息的收集、处理、整合、存储、传输和应用,使数字资源得到充分优化利用的一种虚拟教育环境。数字化校园最直接的体现就是教务管理系统,学生可以登录教务管理系统查询自己的成绩及选课情况,教师也可以登录该系统查询自己的课表,通过网络给学生打分。
遗憾的是,教务管理系统无法负责课下教师和学生的交流与互动。教师不能在该系统中上传课件资源、学习文件等,学生自习中遇到问题也不能及时向老师反馈。于是,我们设计了校园资源互动交流平台,该平台基于MVC 开发模式,学生可以通过关键字查询获取资源信息进而下载,老师可以上传学习文件,师生可以通过BBS进行交流,这对教学教务的发展都有很好地促进作用。
1 研究背景
Web开发技术主要集中分为三大类:基于C/S结构的应用程序开发;基于C/S结构和Web 技术的复合应用程序开发;基于B/S结构的动态网页技术。C/S是早期常用的开发技术,随着网络的发展,C/S的不足日渐明显,B/S结构系统逐渐成为了时尚[1]。而该结构的实现技术中,最流行的是.NET和JSP,从安全角度来说,JSP又更胜一筹。因此采用JSP技术开发该平台。
JSP网站开发标准给出了两种使用JSP的技术:JSP+JavaBean以及JSP+Servlet+Javabean。使用Servlet的优越之处在于实现Web系统的职能分开,用Servlet可以处理用户的请求并给出回应。而最典型的MVC(Model+View+Controller)就JSP+Servlet+Javabean的模式。MVC是一个框架模式,是最先进的Web服务和应用的开发模式[2]。它强制性的使应用程序的输入、
处理和输出分开[3]。在MVC的三个部件中,模型Model由JavaBean担当,视图View由JSP 担当,控制器Controller由Servlet程序担当[4]。
常见的MVC开发模式有很多,例如:Structs、Spring、Spring、Hibernate、ZF、.Net[5],而JSP+Servlet+Javabean是最典型的。MVC开发模式的优点在于耦合性低、重用性高、生命周期低、部署快、可维护性高等优点,但是也有不适合小型中等规模的应用程序、增加系统结构和实现的复杂性等缺点,因此我们只在关键字查询模块使用了MVC框架,其他使用
JSP+JavaBean模式,借以提高系统的运行效率。
2 模块设计与实现
校园资源互动交流平台是以全校教师和学生为服务主体,以校园环境为依托,整合有用信息资源,最终的目的是实现资源共享和课下师生的互动交流,建设人性化、多元化的教育环境,以课上课下双结合的方式来提高教育水平。登陆这个平台的人员分为以下三种:教师、学生、管理人员,其主要功能如下:
2.1 用户登陆模块
本模块的设置是为了控制校园资源的上传,上传模块的权限只有教师和管理者才有,对学生和访客不开放。也就是说,没有账号和密码的浏览者只能看到用户登陆、资源下载、关键字查询和BBS论坛4个模块。
该模块使用MVC开发模式,系统中只有一个servlet即ControlServlet,所有页面发起的以“*.do”的请求,都被web.xml配置给ControlServlet进行处理,在ControlServlet中根据…*‟的字符串(即解析用户请求的路径),调用ActionFactory生成的制定Action对象,在将处理后的URL转发给用户。
2.2 资源上传模块
本模块利用了JavaBean组件——SmartUpload进行上传[6],以每次上传3个文件为例(可多次上传),其网页的显示型式如图1:
2.3 资源下载模块
本模块利用SmartUpload模块进行下载,下载模块源文件包括两个页面,一个下载链接页面down.jsp,一个下载处理页面download.jsp,download.jsp的代码如下:
<%@ page contentType=””text/html;charset=gb2312”
import=”com.jspsmart.upload.*” %><%
SmartUpload su=new SmartUpload();
su.initialize(pageContext);
su.downloadFile(“/a.txt”); %>
进入下载界面,点击某个文件进行下载,弹出文件保存对话框,如下图2:
2.4 关键字查询模块
对于武汉商学院来说,有600多位教师,而且这些老师来自不同的学科,上传资源多而繁杂。需要进行数据管理,后台我们使用SQL Server数据库来进行数据管理。
本模块使用MVC开发模式,定义的类有3个:QueryVO类、PageQueryJB类、Controller 类,其中,Controller类为一个Servlet程序。
QueryVO类用于封装查询结果的一条记录,PageQueryJB类能够从输入的字符串中分离出多个查询关键字构造出相应的SQL查询条件,并连接数据库实施查询,从查询结果集中读取指定页面所需要的记录,将一条记录用一个QueryVO类对象封装,最后存入ArrayList集合中返回给调用程序。Controller类作为一个Servlet程序起到控制器的作用,功能是从表单读取关键字的值,调用JavaBean实现数据库查询,并将结果在JSP页面显示。
该模块还包括两个JSP页面:Input.jsp以及ShowResult.jsp。关键字查询结果页面如图3:
在这个模块中,Servlet程序也即类名为”Controller.java”的程序起到控制器的作用,其主要代码如下:
response.setContentType("text/html; charset=gb2312");
RequestDispatcher go=null;
String key=request.getParameter("key");
if(key==null || key.length()
{response.sendRedirect("key.jsp");return;}
PageQueryJB jb=new PageQueryJB();
List list=null;
Try
{list=jb.query(key); }catch(Exception e){…}