这是一篇数据库有关毕业论文范文,与“计算机网页后台+手机版”在线教育系统的设计与实现相关电大毕业论文。是论文下载专业与数据库及在线考试及旅游经济学方面相关的免费优秀学术论文范文资料,可作为数据库方面的大学硕士与本科毕业论文开题报告范文和职称论文论文写作参考文献下载。
【摘 要 】设计一款手机App来实现在线教育和在线考试在本校学生中的应用,包括在线下载最新课程的信息和在线进行考试计分系统.为了与使用者有更好的联系,本系统集成现有流行的推送功能,在设计中使用远程数据库服务器和Android手机程序方法.
【关 键 词 】在线教育系统推送远程数据库
【中图分类号】TP311【文献标识码】A【文章编号】1674-4810(2014)34-0187-02
2014年7月22日百度新闻,“中国互联网络信息中心发布的《中国互联网络发展状况统计报告》显示,网民上网设备中,手机网民规模83.4%,首次超越传统PC网民规模,手机网民规模达5.27亿,手机已经成为第一大上网终端.”根据本校情况,赣州技师学院学生拥有手机数量接近100%,而拥有个人电脑数量不足4%.故迫切需要开发一个基于手机应用程序的在线教育系统.本系统要实现:推送功能,在线查看教学内容,在线考试计分功能等.在技术上来说,主要实现上传下载数据到远程数据库和在手机上实现考试计分功能.
一推送功能
本系统使用极光推送插件.极光推送集成方法是首先加载极光jpushjasdk开发包到本系统中的lib目录中.然后在极光上生成应用信息包括应用包名和应用标识(AppKey),然后把它们加载到系统的配置文件中.
package.c***x.j***k,<,!--加载应用包-->,
二在线查看教学内容
1.远程数据库技术
我们使用phone->,Web->,Database方式.上传时先访问一个网页,向网页传输命令与数据,再由网页的动态脚本来操作数据库.下载时由该网页把数据打包成Json格式发送到手机,再由手机来解释成所需的数据.
StringURL等于"http://***.asp",//决定使用的网页,包括上传和下载数据.手机端核心代码如下:
HttpPosthp等于newHttpPost(URL),//使用HttpPost类.
List上传内容等于newArrayList(),
params.add(newBasicNameValuePair("上传参数名","上传参数值"),
hp.setEntity(newUrlEncodedFormEntity(上传内容,HTTP.UTF_8)),//上传内容按UTF8编码
HttpResponse回值等于newDefaultHttpClient().execute(httpPost类),//执行网络功能
返回文本等于EntityUtils.toString(回值.getEntity(),"GB2312"),//下载内容按中文编码.
服务器网页端核心代码如下:
接收数据:接收文本等于request("上传参数名")
返回数据:response.write("这里是要返回的数据,以Json文本方式编写")
2.下载新增课程
服务器数据库数据为下表:
课程编号
课程名
p0001
旅游经济学
p0002
旅游规划与开发
p0003
旅游法学
返回的Json格式为{"p0001":"旅游经济学","p0002":"旅游规划与开发","p0003":"旅游法学"}
如果要得到第一门课的内容,需要下列代码:
JSONObjectr等于newJSONObject(j),//声明JSONObject类
Stringn等于r.getString("p0001"),//取出相应的值
先声明一个JSONObject类用来接收上面的Json格式文本.再从JSONObject类中按变量名取出相应的值,上面n变量的值为“旅游经济学”五个字.
3.下载图片
显示网络上的图片,先根据url找到图片的网络地址,然后把该图片转化成ja的InputStream,然后把该InputStream流转化成BitMap,BitMap可以直接显示在程序的ImageView控件里.
三在线考试计分系统
首先下载课程信息,方法同下载新课程.同样把数据打包成Json格式.在这里我们需要用到试题内容、ABCD选项内容和ABCD四个单选框内容.所以在界面配置xml文件中我们使用如下配置:五个分别为试题和选项文本,一个,在其下包括四个分别用于ABCD选项答案的接收.
本模块先上传要下载的考试科目代码到服务器,然后再下载所有考试内容到手机上.按照考题顺序排列出现在手机界面上.
增加一个“下一题”按钮,用于计录答案和生成下一题,在下用一个ArrayList链表来记录每一次的答案.链表项为文本,代码如下:
ArrayListyour_answer等于newArrayList<,String>,(),
记录方式为:if(选项.isChecked()){your_answer.add("A"),},
即把每一次的回答都加到链表的最后一个.
增加一个“上一题”按钮,来回退到上一题的值上.ArrayList列表要删除最后一个值.
your_answer.remove(your_answer.get(your_answer.size()-1)),
再增加一个“成绩”按钮来计算总分.就是比较“上一题”记录下的值与下载的值是不是相同,如果相同就增加一个答对数.代码如下:
Stringr等于result.getString("当前JSON的正确答案"),
if(i
if(your_answer.get(i-1).equals(r))//如果服务器返回的正确答案与考生相同就加1分
your_cg等于your_cg+1,
r等于"\n标准答案为("+r+")."+"您的答案为("+your_answer.get(i-1)+").\n",}
其中your_cg就是考试成绩.
效果如右图.
〔责任编辑:庞远燕〕