云服务的发展作为本次课题的一个重要研究方向,其意义重大。本课题不仅是对云服务现阶段的发展、展现方式做分析,更需要结合现有的技术,去探索和实现目前比较成熟的云服务,因而本次课题选择实现当下极其流行的“云盘”功能,进行实际的编码以了解云盘的实现原理及本质功能。具体实现效果仿照当下较为成熟的“百度网盘”,前台实现包括文件上传、下载、文件夹管理、回收站、文件分享等功能,后台实现文件重复上传检测、防注入等功能,力争贴合当前用户的习惯,希望通过此次课题的实现,加深对云服务内容的理解。
2 系统开发原理
2。1 系统开发目标
本系统设计为基于B/S模式的综合在线考评系统。拥有面试答题、员工在线考试、知识分享、专题投票及个人云服务等功能。其中,考试模块功能参考了当下较为流行的考试系统设计,采用试题随机抽取生成试卷,有效的避免了因试题重复产生的互相抄袭的缺点。考生提交试卷后,后台会根据考题类型,自动计算出选择题、判断题等拥有固定答案的试题分数,从而极大的节省了阅卷人改卷时间,阅卷人改卷时只需对简答题等无固定答案的题目进行评分即可。同时,在阅卷时系统可还原出考生提交的试卷,阅卷人可以此作为参考,了解考生的知识掌握情况。
而知识分享、专题投票作为本系统的综合性功能,作为辅助功能为员工提升开发能力,员工可将自己在工作中的分享在网站上供他人参考。专题投票可让管理员在进行各种活动时作为辅助的工具使用。
云服务作为本次课题的一个重要研究方向,着重对云服务当下的实现方式进行探索,暂选择实现较为流行的云盘系统作为本次课题的研究。
2。2 关键技术论文网
本课题使用java作为开发语言,因本系统是属于网站性质的系统,所以在开发时使用了SpringMVC作为主要的开发框架,其主要优点包括如下:
1)典型的三层架构体现出MVC的设计理念,有效降低开发时间及开发成本。
2)良好的可扩展性,使得很多暂不能实现的功能,通过日后集成扩展来实现。
3)良好的可维护性,因为三层架构中逻辑层与展示层的分离,使得需求修改的风险降到最低,无需担心业务的改变带来的程序上的修改。
4)优秀的解耦性,SpringMVC的三层架构,控制层依赖于业务逻辑层,但绝不与任何具体的业务逻辑组件耦合,只与接口耦合;同样,业务逻辑层依赖于DAO层,也不会与任何具体的DAO组件耦合,而是面向接口编程。采用这种方式的软件实现,即使软件的部分发生改变,其他部分也不会改变。
SpringMVC框架主要是由DispatcherServlet、处理器映射、处理器(控制器)、视图解析器、视图组成,下面逐个进行详细的介绍:
1)DispatcherServlet:这是SpringMVC所提供的一个接口,是作为一个前端控制器的存在,所有的客户端请求都是通过DispatcherServlet来进行统一的分发。其分发操作就是将请求分发给Controller的某个方法,而定位到具体的Controller则是需要借助Spring本身提供的HandlerMapping接口。
2)处理器映射:也就是HandlerMapping接口,这个接口用于将客户端的请求映射到具体的Controller中去。
3)处理器(控制器):也就是具体的Controller,这是一个需要每个Controller都实现的接口,因其是多例的也就是保证了线程安全且可以重复利用。Controller是最终处理用户请求的方法,并且在将业务处理完成后,Controller会给DispatcherServlet返回一个ModelAndView对象(包含了模型和视图),通过ModelAndView就可以确定之后的转发或者重定向到哪个具体的视图或其他方法去。