基于安卓的苏州市教育考试院移动APP的研究与应用

来源 :中学课程辅导·教师教育(上、下) | 被引量 : 0次 | 上传用户:sbwww
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:作为在江苏省教育考试系统中走在前列的苏州市教育考试院,本着更方便广大考生及家长的服务精神,开始着力于移动APP的开发。本文就是在此背景下,基于Android平台,对苏州市教育考试院移动APP的框架模式、数据库结构、功能模块的实现进行研究和应用。
  关键词:Android;MySql;MVC;考试院APP
  中图分类号:G463 文献标识码:A 文章编号:1992-7711(2016)01-007-2
  在江苏省教育考试机构中,苏州市教育考试院无论是在技术创新还是在业务能力方面都在全省位列前茅。苏州市教育考试院在全省是第一个采用中考网上报名、考试网上阅卷、全程标准化考点等技术革新的考试机构,针对现今江苏教育考试机构移动APP这一块的空白,苏州教育考试院率先迈出第一步,来实现考生移动信息查阅,方便广大考生和家长。
  一、系统需求分析
  一个好的系统的实现前期最为重要的工作就是需求分析,通过需求分析,来确定要做什么。并通过UML图的辅助,来确定最终要实现什么样的效果和功能。
  1.用户需求分析
  从以下几方面对用户需求进行分析:
  界面需求分析:安卓客户端界面要求简洁明了,后台服务器端的界面则要求层次分明。
  服务器端用户需求:管理员拥有最高权限,可以查看安卓端所有显示的新闻内容,并对其进行编辑。
  安卓客户端用户需求分析:考生通过查看安卓客户端,能够查新闻,查询数据,进行留言等。
  系统安全性需求分析:由于系统内涉及的数据有一部分是考生的个人信息,为保证考生的信息不泄露,要通过一定的方式保证数据的安全性。
  系统数据导入需求分析:针对考生查询的数据,由于涉及大批量的数据,只做单独的数据添加、编辑、删除已不能满足这个要求,为此要提供能够大批量数据导入这个功能。
  2.系统功能模块图
  本系统由Android客户端和Web服务器端两大模块组成,两个模块下面又分别有各种小模块,具体见图11。
  3.系统数据流图
  图12为整个系统的一个总体的数据流图。针对的对象一个是用户,一个是管理员。两者通过数据流和考试院移动APP管理系统连接起来。
  二、系统结构
  C/S结构的优点是能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器。对应的优点就是客户端响应速度快。考虑到苏州市教育考试院所发布内容的重要性、考生数据的私密性以及用户使用的方便性,结合上述C/S的优点,本系统最终采用的是C/S体系结构。
  三、数据库设计
  MySQL具有体积小、速度快、总体拥有成本低等特点。基于这些好处,同时结合本系统的数据量和资金承受能力,最终选择了MySql数据库进行数据的存储。
  本系统中用的是Hibernate来进行数据库的连接。那是因为Hibernate提供一个易用的框架来实现把一个面向对象的域模型映射到一传统的关系数据库。它不仅负责从Java类到数据库表格的映射,而且还提供数据查询和检索能力,并能大大减少花在SQL和JDBC手工数据处理上的开发时间。另外,Hibernate的查询语言HQL完全是面向对象的,查询的是持久对象,而不是数据库的记录。这一点对存有考生个人信息这些重要内容的数据库有着一定的安全性保障。
  四、客户端设计
  客户端设计主要分为两个部分,一个是主界面设计,一个是各功能的详细页面设计。客户端主界面设置成块状图片按钮规则排列,这样可以有利于用户一目了然的知道点击哪个按钮能做些什么。本系统主界面的布局采用的线性布局嵌套的形式。这样既简化了布局复杂度,又能实现大小不一致的按钮有序的排列。效果如图41。
  但在安卓模拟器中实际运行时发现,在界面较小的安卓模拟器中,主界面上的按钮不能完全显示出来,只能显示部分按钮。这个给操作带来了很大的不便。为了解决这个问题,本系统在主界面布局中又加入了ScrollView。ScrollView即滚动视图,它是一种可供用户滚动的层次结构布局容器,允许显示比实际多的内容。同时将页面最上方的“苏州市教育考试院”LOGO和最下方的考试院地址设置成相对布局,这样避免这两项因页面滚动而不可见,做到良好的界面交互。
  各功能的详细页面设计时涉及的内容比较多,其中最需要注意的有三点:标签按钮的动态加载、客户端和服务器端数据的转换、线程的开启。
  标签的设计一般会采用Tab与TabHost,即标签页视图。苏州教育考试院这个移动客户端,由于主界面中5个按钮点击进入的新闻列表页面布局完全一样,只是标签名称不同。如果用TabHost,就要编写5个新闻列表页面,每个列表页面下还有3个标签页面,每个标签页面都要进行布局。这个工作量是比较大的,而且都是做的重复工作。为了解决这个问题,本系统中文字新闻列表页设计成只有一个,标签以按钮的形式来实现。如在点击“高校招生”进入界面的时候,通过intent.getIntExtra()来获取“高校招生”按钮的id为1,再通过与数据库中所有按钮的parent_id进行检索,找出对应parent_id为1的标签按钮。这样就实现了根据点击不同功能主按钮,加载不同标签按钮的功能。
  在服务器端采用Json数据,因为它易于人阅读和编写,同时也易于机器解析和生成。在客户端,主要采用的是Map数据格式中的HashMap,因为它具有超级快速的查询速度。由于两者数据类型不同,需要进行相应的转换。转换时主要是通过数组的循环存放于读取来实现。
  在整个客户端设计时还必须考虑的一个问题就是并发问题。如果同一时间内数据量很大,客户端又是通过服务器端来进行数据查询的,非常有可能进行长时间的等待,甚至死机。这时就需要通过Handler的调用,在主线程下开启一个子线程,用子线程去执行耗时的操作从而不影响主线程的正常运行。
  五、服务端设计
  MVC模式是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型、视图和控制器。本系统采用的是EasyUI SpringMVC Hibernate的框架来实现MVC模式的。
  模型方面采用Hibernate进行数据访问,上文数据设计时已进行阐述。
  视图方面用的是jQuery EasyUI,它是一组基于jQuery的UI插件集合体。在本系统中,EasyUI的应用使得只需编写少数的HTML代码即可实现非常美观的界面,大大减少了程序的开发时间与费用。
  控制器方面则是通过Spring MVC来实现。Spring MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动的请求响应模型,框架的目的就是帮助我们简化开发,也简化了我们项目服务器端的Web开发。
  六、总结与展望
  这里基于研究工作进行总结,该系统适用于Android平台下的各种手机,实现了文字新闻、图片新闻的查看,提供了用户考点考场的查询,并可以在客户端提出问题,查看考试院在地图上的具体位置等功能。同时在服务器端还可以对客户端显示的内容进行一系列的操作。在整个研究过程中,也碰到了许多问题,如百度地图调用使用的Key是根据数字证书和项目包生成的唯一值,换了电脑就无法调用。如如何通过list来将Json数据和Map数据进行转换等等。最终通过努力相继将这些困难克服,这也加深了对Android的了解。
  后续其实还有很多东西可以研究,如客户端功能按钮根据用户类型进行动态显示,做到前端权限的划分,从而实现管理员的移动办公等等。在以后的工作中,将进一步做深入分析,并通过实际开发来实现这些功能,从而完善这个移动APP。
其他文献
根据岩心、铸体薄片、扫描电镜、X射线衍射黏土矿物分析和物性分析数据,分析了玛湖凹陷夏子街扇和黄羊泉扇下三叠统百口泉组砾岩中的自生绿泥石形成机制及其对储集层物性的影
摘要:绘本中有着许多不同类型的人物,他们形象生动、性格鲜明,有正直的好人,也有邪恶的坏人。大班幼儿已经能够自己翻开图书进行阅读,也对绘本中的各种角色有着不同的理解与喜好,但有时不同的幼儿对于绘本中的同一角色常常会有着十分不同的理解。因此作为教师的我对幼儿的这些偏好进行了一系列的探索,希望能够找到影响幼儿偏好的因素。  关键词:绘本角色;角色偏好;影响因素  中图分类号:G613文献标识码:A 文章
坡折带是层序地层划分对比、地层构型分析及层序模式建立的基础,虽然前人对不同类型坡折带做了大量研究,但基本集中于单一坡折带的分析。南海北部珠江口盆地新近纪以来存在双
<正>权力过度集中是滋生腐败的关键,其实,还有一个重要原因,就是不仅仅约束官员自身,还要在"家属问题"上多做规范和教育,才能引导官员拒腐防变"必须管好亲属和身边工作人员,
今年,岳池县建立了十部“跑官要官”监督档案,对“跑官要官”行为实行无缝监督。该监督档案从纪检监察机关的纪律处分决定书、检察机关的起诉书和审判机关的判决书中收集涉及跑
摘要:中国传统教育一直以来都是以“接受性学习”为主,学生只能对教师“惟命是从”。这种师生关系严重扼杀了学生学习的主动性,学生过度依赖,导致情商的依附性,再加上情感受到压抑,导致学生心理不健康,人格不健全,在性格上自私、孤僻,甚至仇视社会。为了改变这种应试教育下扭曲的师生关系,培养学生良好的情商,通过开展平等教育,给学生渗透正确的亲情、同学情和师生情,来提高学生的情商,形成一种新型的民主、平等、和谐
班主任是班级授课体制下的产物,班主任管理水平的高低决定着班集体建设的好坏.一个优秀的班主任可以使一个差 班变好,一 个不称职的班主任,可以使一个好班变差.本文从班主任