2016年全国职业院校技能大赛(高职组)“云计算技术与应用” B卷
第三部分:云应用开发
任务一、云存储Web应用开发(7分)
云存储网盘Web应用的开发,选用javaEE技术平台,使用集中部署的云存储服务。 开发环境:SDK(java joss) +(eclipse)+ JDK + Tomcat + Mysql + swift.sql + 案例cloudstorage_web。网盘Web应用的功能效果如图2所示。
图2 网盘Web应用功能效果图
1.搭建开发环境和导入项目(1分)
根据指定的账户名,密码等信息修改连接云平台的配置,解压
cloudstorage_web.zip,导入开发案例并运行。运行后按顺序提交浏览器登录页面截图、登录后的【全部文件】页面截图、修改的配置、java代码到答题框。 2.我的图片功能(3分)
基于SDK提供的接口,实现网盘Web应用的我的图片功能,通过我的图片导航展示当前网盘所有图片文件列表。实现后按顺序提交运行的网页截图和增改的java、JSP代码到答题框。 3.文件排序功能(3分)
基于SDK提供的接口和框架代码,在云网盘Web应用“全部文件”界面的操作栏增加“名称排序”按钮,不区分文件夹和文件,点击“名称排序”实现对内部云存储
第 11 页 共 11 页
2016年全国职业院校技能大赛(高职组)“云计算技术与应用” B卷
对象按照名称“降序”排序展示(如“a”排在“b”下面)。实现后按顺序提交运行的运行结果截图和增改的Java、JSP的代码到答题框。
任务二、大数据案例开发(5分)
1.单个Hadoop M-R分词统计
基于hadoop SDK提供的接口和Web开发框架代码,对目录路径下的“FourMasterpiecesofChina/txt/ RomanceoftheThreeKingdoms.txt”txt格式文件,使用hadoop map-reduce进行内容分析,通过词汇统计分析文章中出现次数最多的前10个词汇,将统计结果以可视化d3.js框架饼图(pie)的形式在单独一个Web网页展示出来。提交分词统计结果的网页截图和添加的Java、JSP代码到答题框。 2.两个文件Hadoop M-R分词统计
基于hadoop SDK提供的接口和Web开发框架代码,对同一目录路径下的选择“FourMasterpiecesofChina/txt/ RomanceoftheThreeKingdoms.txt”和
“FourMasterpiecesofChina/txt/ DreamofRedMansion.txt”2个文件,分别对这2个文件的内容进行词汇统计分析,并各取每个文件出现次数最多的前10个词汇,合成共计20词汇,通过可视化d3.js框架柱形图(column)的形式在单独一个Web网页展示出来。提交分词统计结果的网页截图和添加的Java、JSP代码到答题框。
任务三、云存储网盘客户端(8分)
云存储网盘客户端APP的开发,选用Android开源技术平台,使用集中部署的云存储服务。
开发环境:SwiftSDK(openstack-java-sdk)+Android开发环境
(adt-bundle-windows-x86_64)+JDK1.7+案例程序cloudstorage_android.zip程序的运行采用Genymotion模拟器。网盘客户端的功能效果如图3所示。
第 12 页 共 12 页
2016年全国职业院校技能大赛(高职组)“云计算技术与应用” B卷
图3 网盘客户端功能效果图
1.搭建开发环境和导入项目(1分)
根据指定的账户名,密码等信息修改连接云平台的配置,解压
cloudstorage_android.zip,导入开发案例并运行。运行后按顺序提交APP登录界面的模拟器截图、登陆后的模拟器截图及修改的java代码到答题框。 2.我的视频功能(2分)
基于SDK提供的接口,实现网盘APP的我的视频功能,通过我的视频导航展示当前网盘所有视频文件列表。实现后按顺序提交模拟器运行结果截图和增改的java代码到答题框。 3.文件的搜索功能(3分)
基于SDK提供的接口,完善工程的搜索功能,实现查找功能,展示搜索名称含有“txt”的所有文件和文件夹的列表。实现后按顺序提交运行的模拟器截图和增改的java代码到答题框。 2.上传文件功能(2分)
第 13 页 共 13 页
2016年全国职业院校技能大赛(高职组)“云计算技术与应用” B卷
基于SDK提供的接口,在全部文档列表中增加长按操作“上传文件”,上传Android工程下的“AndroidManifest.xml”到容器根目录下。按顺序提交运行的模拟器截图和增改的java代码到答题框。
任务四、排序算法(2分)
1.堆排序算法(2分)
云存储文件对象数组的编写堆(Heap)排序算法如下,试补充空格处的代码,共四处,每空一行提交到答题框。(2分)
/**
* 堆排序,结果从小到大 *
* @param values 输入待排序对象数组 * @param cp 比较器 */
public static void heapsort(StoredObject[] inputs, Comparator cp) { for (int i = inputs.length / 2; i >= 0; i--) { percDown(inputs, i, inputs.length, cp); }
for (int i = inputs.length - 1; i > 0; i--) { swap(inputs, 0, i);
percDown(inputs, ______, ______, cp);//填空一、二 } }
private static int leftChild(int i) { return 2 * i + 1; }
private static void percDown(Object[] objs, int i, int n, Comparator cp) { int child; Object tmp;
for (tmp = objs[i]; leftChild(i) < n; i = child) { child = leftChild(i); if (child != n - 1 &&
cp.compare(objs[child], objs[child + 1]) ______ 0)//填空三 child++;
if (cp.compare(tmp, objs[child]) ______ 0) //填空四 objs[i] = objs[child]; else
break; }
objs[i] = tmp; }
第 14 页 共 14 页
2016年全国职业院校技能大赛(高职组)“云计算技术与应用” B卷
第四部分:工作总结报告(5分)
结合以上云平台设计、部署、运维和云应用开发过程,编制项目实施的工作总结报告。工作报告包含以下内容:
1.以一个表格罗列PaaS的主要功能,按照平台和服务分类。
2.绘制云存储Web应用的架构图,说明架构图层次和层次之间的关系。 3.绘制Swift云存储的架构图并予以说明。 在答题框内进行内容编写,插入相关的图表。
第五部分:职业素养(5分)
依工作作风、安全意识、团队协作和遵守考场纪律情况由裁判现场判分。
第 15 页 共 15 页