论文-基于Android的学籍管理系统的设计与实现_第1页
论文-基于Android的学籍管理系统的设计与实现_第2页
论文-基于Android的学籍管理系统的设计与实现_第3页
论文-基于Android的学籍管理系统的设计与实现_第4页
论文-基于Android的学籍管理系统的设计与实现_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

太原理工大学毕业设计(论文)任务书第1页毕业设计(论文)题目:基于安卓的学生管理系统毕业设计(论文)要求及原始数据(资料):深入了解java,android的应用;熟练掌握java语言,android技术,训练编写android小程序的能力;熟练掌握android;深入分析学生管理系统需要实现的功能;训练检索文献资料和利用文献资料的能力;训练撰写技术文档与学位论文的能力。第 第2页毕业设计(论文)主要内容:1.综述java,android在程序中的使用;2.了解android的相关技术和学生管理系统所需实现的功能;3.熟悉android以及SQLite数据库的使用;4.设计学生管理系统的基本流程;5.深入分析学生管理系统的业务逻辑;6.熟练掌握基于android编写;7.设计与实现学生管理系统。学生应交出的设计文件(论文):1.内容完整、层次清晰、叙述流畅、排版规范的毕业设计论文;2.包括毕业设计论文、源程序等内容在内的毕业设计电子文档及其它相关材料。第3页主要参考文献(资料):C.J.Date.Datebasesystemimplementation[M].北京:机械工业出版社,2000.HectorGarcial-Molina,JeffreyD.Ullman,JenniferWidom.AnintroductiontoDatabaseSystems(SeventhEdition)[M].北京:机械工业出版社,2001.RetoMeier.Android2高级编程.(第2版)北京:清华大学出版社,2010.林陈雷,郭安源,葛晓东.教育信息化系统开发实力导航[M].北京:人民邮电出版社,2003.谢希仁.计算机网络[M].北京:电子工业出版社,2008.张立科.数据库开发技术与工程实践[M].北京:人民邮电出版社,2004.孟小峰,王珊.数据库系统导论[M].北京:机械工业出版社,2000.李佐彬.Android开发入门与实战体验[M].北京:机械工业出版社,2001.刘腾红,孙细明.信息系统分析与设计[M].北京:科学出版社,2003.杨丰盛.Android应用开发揭秘[M].北京:机械工业出版社,2011.专业班级软件1124班学生王昊程要求设计(论文)工作起止日期2015年3月23日~2015年7月3日指导教师签字日期2015年3月23日教研室主任审查签字日期系主任批准签字日期基于Android的学籍管理系统的设计与实现摘要近年来,随着移动互联网和电子信息技术的迅猛发展,使用Android技术开发的手机软件越来越多。人们已经从电脑中解放出来,可以采用更简巧的设备--手机,进行娱乐,工作。本文通过对Android应用开发的初步研究,设计出了一款基于Android平台的学籍管理系统。在对系统进行详细需求分析的基础上,确定了系统的基本功能要求,对系统的菜单界面、布局、系统数据获取、数据库操作进行了设计,最终实现学籍管理系统简单的功能,包括管理员管理界面,教师界面,学生界面。本文介绍了实现学籍管理系统的相关理论基础、运行平台和实现技术,重点研究了SQLite数据库的技术特点及数据的存取,提高数据的存取效率,并合理布局系统界面,使界面更加美观和人性化,实现了学籍系统的基本功能,最后,论文对学籍系统的各个模块进行了功能和性能测试。关键词:Android;学籍;系统;SQLiteThedesignandimplementationofstudentstatusmanagementsystembasedonAndroidAbstractInrecentyears,withtherapiddevelopmentofmobileInternetandelectronicinformationtechnology,theuseofAndroidtechnologydevelopmentmoreandmoremobilephonesoftware.Havebeenliberatedfromthecomputer,canusemoreJaneartfuldevices,mobilephones,entertainment,work.ThisarticlethroughtothepreliminaryresearchontheAndroidapplicationdevelopment,designedabasedonAndroidplatformofstudentstatusmanagementsystem.Inthesystemindetail,onthebasisofdemandanalysis,todeterminethebasicfunctionsofthesystemrequirements,thesystemmenuinterface,layout,dataacquisitionsystemdesigning,databaseoperations,andultimatelyachievesimplestudentstatusmanagementsystemfunction,includingtheadministratormanagementinterface,interfaceofteachers,studentsinterface.Thispaperintroducesthetheoreticalbasis,relativetotheimplementationofstudentstatusmanagementsystemplatformandtheimplementationtechnology,focusesonthetechnicalcharacteristicsofSQLitedatabaseanddataaccess,improvetheefficiencyofdataaccess,andreasonablelayoutofthesysteminterface,maketheinterfacemorebeautifulandhumanization,hasrealizedthebasicfunctionofsystem,finally,thepaperonthemodulesofsystemfunctionandperformancetest.Keywords:Android;One'sstatusasastudent;system;SQLite目录84151.绪论 1295541.1引言 1309761.2课题背景介绍 1240991.2.1教育系统发展现状 1276191.2.2手机的应用市场发展现状 241681.2.3Android平台介绍 354811.2.4Android管理学生学籍的意义 5197211.3学籍管理系统概述 5141591.3.1开展该系统的原因 5211181.4相关技术介绍 627151.4.1Android的系统框架 6159291.4.2Android的特性 7257791.4.3Android的开发环境的搭建 8280831.4.4Android的数据库 9235722.系统整体规划 12145302.1数据库的设计 1280562.2系统流程图 14226563.系统分析 15316443.1系统需求分析 1598873.1.1性能需求 15112023.1.2功能需求 15713.2系统功能分析 16132103.3可行性分析 16125243.3.1操作可行性 16136373.3.2技术可行性 17114513.3.3社会可行性 1732053.4方案选择 17226564.系统功能实现 15244674.1项目建立 20155234.2类的创建 20126264.3.1用户登录界面 2181554.3.2用户注册界面 22235684.3.3学生用户界面 22301854.3.4教师用户界面 23261504.3.5管理员界面 2486315.系统详细设计与实现 26174135.1系统工程的创建 2617865.2界面UI设计 27278265.2.1主要界面布局 27274405.2.2角色界面布局 28282716.编码 29326326.1登录界面的编码 29305286.2角色界面的编码 31239886.2.1学生角色界面 31239886.2.2教师角色界面 31239886.2.3管理员角色界面 32281527.系统测试 34242757.1测试环境介绍 34237897.2功能模块测试 3445407.3系统性能分析 38106797.4小结 38770总结 391563致谢 401563参考文献 411563附录 411.绪论1.1引言在信息高速发展的今天,学生学籍管理系统成为学校不可或缺的部分。作为学生学籍管理系统,应该能够提供查询功能和删除功能,很便捷的为学校管理者提供了便捷。长久以来,学校一直采取人工的方式管理学籍,这样的方式,已经远远不能适应当今社会的需求,其效率低,保密性差,可维护性差以及容易丢失的缺点无法满足学校的的需要。这时候,计算机技术日渐成熟,强大的功能,被大家接受,那么,是不是可以采用计算机技术,编写一款程序,专门统计,管理学生学籍呢?于是,便有了今天这个课题--学生学籍管理系统。对比传统的学籍管理方式,新型的学生学籍系统具有检索快,查询方便,可靠性高,存储内容大,保密性好,成本低的特点。这些特点,不仅仅成为其取代传统方式的原因,也适应了当今时代的要求,使得学校与科学化,正规化,与世界接轨。本课题,主要是开发一款学生学籍管理系统,采用java和Android语言进行了编写,利用Android技术的开发可视化,人性化,使这款学籍管理系统软件具有了强大的吸引力,能给用户带来挑战、刺激、新鲜、成就感等多种感受。在下面的开发过程中,涉及到了开发的过程和遇到的各种问题及解决方案。1.2课题背景介绍HYPERLINK1.2.1教育系统发展现状现今科技发展,对教育事业的发展产生了巨大而深远的冲击,通过计算机,手机查看信息已经几乎取代了日常生活中直接查阅书籍查询资料的地位。人们通过便捷的方式,迅速的查询到自己所需要的知识,解除了查阅图书的费时费力。即将要设计的这款学生学籍管理系统应提供一便捷的界面,可以方便不同的角色迅速的查询到相关的信息,提高学生教师的查询效率和管理者的管理速率。HYPERLINK1.2.2手机的应用市场发展现状目前移动设备越来越普及,根据工信部的统计公报,自13年1月,我国手机用户已经超过11.12亿户,普及率达到了82.6部/户。设备的普及,刺激了设备底层运行平台的发展。目前国内最常见的移动开发平台有Symbian,iPhone,Windows

Phone以及当下正在逐步兴起的Android。目前,国内已经有很多Android系统的用户。Android和手机应用市场正处于起步阶段,相比较其他平台,Android具有这样的特点,其中Android系统最震撼人心之处在于其开放性和服务的免费性方面。Android是一个对第三方软件完全开放的平台,开发者在为其开发程序时拥有更大的自由度,突破了iPhone等只能添加为数不多的固定软件的枷锁;同时与WindowsPhone、Symbian等厂商不同,Android免费向开发人员提供,这样可节省30%的成本。此外,它突出的特点有:1.开放性

在优势方面,Android平台首先就是其开放性,开发的平台允许任何移动终端厂商加入到Android联盟中。显著的开放性可以使其拥有更多的开发者,随着用户和应用的日益丰富,一个崭新的平台也将很将走向成熟,苹果的IOS系统封闭;无向任何厂商提供,WindowsPhone系统封闭,厂商需要花高价购买;Nokia的Symbian之前也一直是封闭,现在已经末落了。2.摆脱运营商限制

在过去很长的一段时间,特别是在欧美地区,手机应用往往受到运营商制约,使用什么功能接入什么网络,几乎都受到运营商的控制。自从Android上市,用户可以更加方便地连接网络,运营商的制约减少。随着EDGE、HSDPA这些2G至3G的逐步过渡和提升,手机随意揍人网络已不是运营商口中的笑谈。3.丰富的硬件选择

这一点还是与Android平台的开放性相关。由于Android的开放性,众多的厂商会推出丰富多彩、各具特色的多种产品。功能上的差异和特色却不会影响到数据同步、甚至软件的兼容性。好比用户从诺基亚的Syrnbian风格手机一下改用装载Android系统的手机,同时还可将Symbian中优秀的软件带到新手机上使用,联系人等资料更是可以方便地转移。4.不受任何运营商限制Android平台提供给第三方开发商~个十分宽泛、自由的环境,因此不会受到各种条条框框的阻挠,可想而知,这样会有多少新颖别致的软件会诞生。但这也有其两面性,血腥、暴力、情色方面的程序和游戏如何控制正是留给Android开发人员的难题之一。5.无缝衔接Google应用

如今Google在互联网领域已经走过十多年历史,从搜索巨人到全面的互联网渗透,Google服务如地图、邮件、搜索等已经成为连接用户和互联网的重要纽带,而Android平台手机将无缝结合这些Google应用。市场和消费者需要个接受的过程,众多开发者也都在积极探索盈利模式。Android开发者实现盈利主要依赖两方面因素,一是全球Android手机终端的爆发,另外就是海外付费应用程序的模式逐渐形成。目前Android应用开发个人或团体虽未取得规模盈利,但也开始逐渐向盈利模式转移,获得不错收益。HYPERLINK1.2.3Android平台介绍Android--基于Linux内核的智能机平台上的一种操作系统,在Android上市仅两年时间后,它便超过塞班系统而跃居全球手机市场第一的位置,在中国市场的占有率达到90%,并扩张到平板电脑等其它移动设备领域迅速发展。Android平台因为开放性使得这个平台具有非常好的发展前景。主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。Android操作系统最初由AndyRubin开发,主要支持手机。2013年底,Android平台手机已占据了全球市场的78.1%的份额。最初,提到Android一词首先想到的是机器人,这也是它的本意。同时Android也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,由操作系统、中间件、用户界面和应用软件组成该平台。Android构建在开源代码的框架之上,并且提供强大的SDK库和开放的理念的特点,使得它为广大没有开发任何移动应用程序经验的新手开辟了一条开发移动应用程序的方便之路。而富有经验的移动开发人员现在也可以方便地扩展到Android平台上来,利用它独特的功能来改进现有产品或者开发其他新颖产品。Android的系统架构和其操作系统一样,采用了分层的架构。从架构图看,Android分为四个层,由高到低的顺序是应用程序层、应用程序框架层、系统运行库层和Linux内核层。Android开发中有四大组件分别是:活动(Activity):用于表现功能。服务(Service):后台运行服务,不提供界面呈现。广播接收(BroadcastReceiver):用于接收广播。内容提供商(ContentProvider):支持在多个应用中存储和读取数据,相当于数据库。Android还有其平台优势。Android平台优势首先就是其开放性,Android平台允许任何移动终端厂商加入到Android联盟中来。显著的开放性可以使其拥有更多的开发者,随着用户和应用的日益丰富,一个崭新的平台也将很快走向成熟。其次是其丰富的硬件,这一点还是与Android平台的开放性相关,由于Android的开放性,造成的结果自然是众多的厂商会推出千奇百怪,功能特色各具的多种产品。功能上的差异和特色,却不会影响到数据同步、甚至软件的兼容,如同从诺基亚Symbian风格手机一下改用苹果iPhone,同时还可将Symbian中优秀的软件带到iPhone上使用、联系人等资料更是可以方便地转移。最后是方便开发,Android平台提供给第三方开发商一个十分宽泛、自由的环境,不会受到各种条条框框的阻扰,可想而知,会有多少新颖别致的软件会诞生。Android系统的开源性能为无疑是Android快速占领市场的一个重要因素,Android系统的开源行为用户提供了很多的便利,首先是系统的拓展性优势,只要有开发代码的知识和能力就可以自己开发和拓展各种自己需要的软件,还能提供一种市场盈利的有效途径,最让人无法抵御的是在于Android手机系统的开放性和服务免费。Android是一个第三方软件完全开发的平台,开发者开发程序拥有更大的自由度,突破了iPhone等只能添加位数不多的固定软件枷锁,并且Android操作系统免费性为开发人员节省了将近三成的成本。Android应用软件发展现状与前景分析:

Android系统自其推出,就以明显的优势迅速扩大自己的市场份额,尤其在国外,其呼声日高,正处于蓬勃发展阶段。据美国某市场调研机构2012年发布的一份最新报告显示。2012年一季度在美国,基于Android系统的智能手机的销售量已占据全美手机销售量的28%份额,而大名顶顶的IPhone手机其市场份额紧追其后,占到21%的市场份额,已经确定了Android系统的市场占有比。据业内人士分析,随着Android系统相应软件的不断开发应用,选择Android系统手机或者无线终端设备的人会越来越多,其市场霸主的地位在更新更好的系统出现之前是不可动摇地。

中国是世界上最大的手机销费国。由于3G业务的不断推广,对整个手机业起大了巨大的促进作用,当前国内手机市场正在快速向智能手机推进,而Android系统无疑是最大的市场需求。各大中小型手机制造商近两年都在引入Android工程师,开发基于Android系统的智能手机。

未来基于Android系统的应用软件将进入飞速发展的全新阶段。Android系统的应用绝不仅局限于手机产业,几年来其迅速扩张到相关领域,例如平板电脑、车载系统、电视STB、智能电器、智能会议系统等。目前,各IT厂商都在努力的研发前沿应用软件,以期在Android系统发展这一群雄逐鹿的关键阶段,占领更多的市场份额。

Android应用软件的开发技术不是孤立的,它不仅要掌握Android三层框架同时,也必须融合Java层框架内的通信机制、Java与C/C++整合开发的技术、核心服务框架的关键机制、HAL驱动框架及其API、云服务(CloudService)框架及其API等技术。移动应用分析公司Flurry最新报告指出,仅从今年1月到10月期间,国内的Android应用下载总量就较去年全年增长了870%。但同时,仅有20%左右的应用来自于Google官方的AndroidMarket。Android应用市场现状:基于Android平台自身的开放特性,更多的参与者开始脱离Google,建立起一个个小型的生态系统。在国内,以运营商、终端厂商以及第三方应用商店为主的应用市场超过70家,移动广告联盟超过30家,相关论坛大概在10万的数量级别。同时,以百度、腾讯、360为代表的传统互联网巨头也开始对这个市场虎视眈眈。尽管Google仍未透露将在何时以何种方式进入中国,但目前的竞争环境已足以有了白热化的趋势。HYPERLINK1.2.4Android管理学生学籍的意义相比于,传统的纸质管理学生学籍,这样的机制,已经不能适应当今这快速发展的时代要求,因为他浪费了许多人力物力,且种种弊端,难以被人接受。在信息时代,这种传统的管理方式,必然会被取代,而作为目前移动端新贵的Android,已经成为不可阻挡的势头,用以取代纸质,取代普通的计算机管理。作为软件工程系的学生,我们需要分析出当今时代的潮流,趋势,不去跟风追随已经过去的潮流,而应该创造,应用,发现新的趋势,用于去推进,适应社会发展。1.3学籍管理系统概述1.3.1开展该系统的原因由于现今的学籍管理非常繁琐,需要管理人员耗费大量的工作时间,效率很低,因此为了提高工作效率,减轻工作的负担,决定改变开发学籍管理系统软件。1.3.2基本目标开发这个学籍管理系统,为学校的管理员提供了便捷的学籍管理条件,方便的进行查询,增删。此外,也允许学生,教师查看信息,及时的了解学校的动态。学生界面实现:查询个人信息,查看系统公告,全体学生的成绩查询,开设课程查询和考试安排查询。教师界面实现:查询个人信息,查看系统公告,全体学生的成绩查询,全体学生的信息查询。管理员界面实现:查询学生信息,查询老师信息,录入学生成绩并可查询,添加教师,学生用户,发布公告,安排考试,课程管理。1.3.3开发的环境及开发工具介绍AndroidSDK是作为一个ZIP文件发布的,可以将该文件解压到硬盘上的一个目录中。表示用于编译、测试和调试某一类软件的API库和基本开发工具。ADT本质是Eclipse的插件,让Eclipse这个JavaIDE拥有开发安卓应用程序的诸多特性。ADT很容易与AndroidSDK混淆,因为二者经常同时出现。但是很显然,ADT是Eclipse的插件,而AndroidSDK主要指API库和基本的开发工具。两者不是包含与被包含的关系,只不过协同工作而已。Eclipse是一个开放源代码的,是一种基于Java的整合型可扩展开发平台,也是目前最著名的开源项目之一。就它本身而言,它只是一个框架和一组服务,用于通过插件组建构建开发环境。通过开发插件,它能扩展到任何语言的开发,甚至能成为图片绘制的工具。Eclipse是一个开放源代码的项目,任何人都可以下载Eclipse的源代码,并且在此基础上开发自己的功能插件。Eclipse主要由Eclipse项目,工具项目和技术项目三个项目组成,具体包括四个部分组成:EclipsePlatform,JDT,CDT和PDE。1.4相关技术介绍1.4.1Android的系统框架Android的系统架构,采用了和其操作系统一样的分层架构。Android分为四个层,依次是应用程序层、应用程序框架层、系统运行库层和Linux核心层。(1)APPLICATIONS。在Android平台上,已存在着一些关键的应用程序,如网页浏览器、邮件、日历、收发客户端程序短信等。鉴于平台的开放性特点,更多富有特色且功能强大的Android应用程序正在被广大开发者共同努力参与研发中。(2)APPLICATIONFFRAMEWORK。应用程序框架已随Android一同安装,但开发人员仍可以根据自己的需要来使用组件扩展该框架。该框架中,最重要的部分主要包含有:在控制应用程序的生命周期的同时维护着一个公共的"后退栈"来供用户导航的活动管理器;内容提供者,用来提供一些如联系人信息之类的需要在应用程序之间共享的数据;涉及非代码内容的资源管理器;让Android手机能随时获取目前所处的位置信息的位置管理器;通知用户如收到信息、临近约会时间等事件的通知管理器。(3)LIBRARIES(C/C++函数库)。Android本机库是由一套C/C++函数库构成的,它们服务于上层Android应用程序组件,并通过这些组件将功能传递给开发者使用。这些函数库主要包括:浏览器引擎(采用的是Webkit库)、2D和3D图形库、SQL数据库(一些轻量级的SQLite数据库引擎)、媒体功能库以及界面管理器等。(4)AndroidRuntime(Android运行时)。该层主要包含了Dalvik虚拟机和Java核心库,它们起到了将Android程序的运行过程有效优化的作用。(5)LINUXKERNEL。Android操作系统是基于优化了的Linux内核之上的,在作为手机软硬件的连接层的同时,也让Android通过它完成进程管理、内存管理、网络以及其他操作系统服务工作。1.4.2Android的特性Android系统是工作于智能手机之上的操作系统,处处体现了与手机相关的特性。由于手机硬件配置的关系Android系统与PC机上的操作系统有着很大的差异。只有在充分了解Android系统特性才能开发出适合手机运用的软件。以下为Android的主要特性:1.应用程序框架支持组件的重用与替换。这样我们可以把系统中不喜欢的应用程序删除,安装我们喜欢的应用程序。2.Dalvik虚拟机专门为移动设备进行了优化。Android应用程序将由Java编写、编译的类文件通过DX工具转换成一种后缀名为.dex的文件来执行。Dalvik虚拟机是基于寄存器的,相对于Java虚拟机速度要快很多。3.内部集成浏览器基于开源的WebKit引擎。有了内置的浏览器,这将意味着WAP应用的时代即将结束,真正的移动互联网时代已经来临,手机就是一台“小电脑”,可以在网上随意遨游。4.优化的图形库包括2D和3D图形库,3D图形库基于OpenGLES1.0。强大的图形库给游戏开发带来福音。在3G最为重要的的应用莫过于手机上网和手机游戏。5.SQLite用作结构化的数据存储。6.多媒体支持包括常见的音频、视频和静态印象文件格式如MPEG4、H.264、MP3、AAC、AMR、JGP、PNG、GIF。7.GSM电话(依赖于硬件)。8.蓝牙(Bluetooth)、EDGE、3G、WiFi(依赖于硬件)。9.照相机、GPS、指南针和加速度计(依赖于硬件)。10.丰富的开发环境包括设备模拟器、调试工具、内存及性能分析图表和Eclipse集成的开发环境插件。Google提供了Android开发包SDK,其中包含了大量的类库和开发工具,并且针对Eclipse的可视化开发插件ADT。1.4.3Android的开发环境的搭建为了在PC主机上得到Android的开发环境,我们选择在Windows操作系统中进行对Android开发环境的搭建,具体步骤如下:(1)JDK安装首先下载JDK,按照提示安装成功后,最重要的是进行环境变量的配置,步骤如下:我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量:Java_HOME值为:C:\ProgramFiles\Java\jdk1.6.0_20(安装JDK的目录)CLASSPATH值为:.;%Java_HOME%lib\tools.jar;%Java_HOME%\lib\dt.jar;%Java_HOME%\bin;Path值:添加C:\ProgramFiles\Java\jdk1.6.0_20\bin;(2)Eclipse安装可下载一个绿色版的Eclipse,无需安装,和安装版一样都能为Android开发提供功能。(3)AndroidSDK安装在AndroidDevelopers下载Android-sdk_r07-windows.zip,下载完成后解压到任意路径。运行SDKManager.exe,出现如图以下界面,点击AvailablePackage。选择希望安装的SDK及其文档或者其它包,点击InstallationSelected、AcceptAll、InstallAccepted,开始下载安装所选包。下载完成后出现如下图的所有Android-sdk_r07-windows文件夹内容;(4)ADT安装ADT实际上是一个工具,它可以连接sdk和Eclipse,帮助Eclipse找到sdk打开Eclipse界面,进入进入菜单中的“Help”->“InstallNewSoftware”,点击Add按钮弹出对话框要求输入Name和Location,完成之后,选择Window>Preferences;在左边的面板选择Android,然后在右侧点击Browse;并选中SDK路径,本机为;D:\YJSH\Android\Android-sdk_r07-windows;点击Apply、OK。配置完成。(5)创建AVD为使Android应用程序可以在模拟器上运行,必须创建AVD,步骤如下:在Eclipse中,选择Windows>AndroidSDKandAVDManager,点击左侧面板的VirtualDevices,再右侧点击New,填入Name,选择Target的API,SDCard大小任意,Skin随便选,Hardware目前保持默认值,点击CreateAVD即可完成创建AVD。1.4.4Android的数据库 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。数据库的基本结构分三个层次,反映了观察数据库的三种不同角度。⑴物理数据层。它是数据库的最内层,是物理存贮设备上实际存储的数据的集合。这些数据是原始数据,是用户加工的对象,由内部模式描述的指令操作处理的位串、字符和字组成。⑵概念数据层。它是数据库的中间一层,是数据库的整体逻辑表示。指出了每个数据的逻辑定义及数据间的逻辑联系,是存贮记录的集合。它所涉及的是数据库所有对象的逻辑关系,而不是 它们的物理情况,是数据库管理员概念下的数据库。⑶用户数据层。它是用户所看到和使用的数据库,表示了一个或一些特定用户使用的数据集合,即逻辑记录的集合。简而言之,以内模式为框架所组成的数据库叫做物理数据库;以概念模式为框架所组成的数据叫概念数据库;以外模式为框架所组成的数据库叫用户数据库。数据库不同层次之间的联系是通过映射进行转换的。应用的设计和使用离不开数据库,而数据库有可以分为大、中、小三种类型数据库,Oracle属于大型数据库,中心数据库以MSSQLServer和MySQL为代表。第三种是微小型数据库,在Android应用中主要以SQLite关系型数据库为主。本应用所使用就是SQLite关系型数据库SQLite是D.RichardHipp用C语言编写的开源嵌入式数据库引擎。它支持大多数的SQL92标准,并且可以在所有主要的操作系统上运行。SQLite由以下几个部分组成:SQL编译器、内核、后端以及附件。SQLite通过利用虚拟机和虚拟数据库引擎(VDBE),是调试、修改和扩展SQLite的内核变得更加方便。所有SQL语句都被编译成易读的、可以在SQLite虚拟机中执行的程序集。SQLite的数据库权限只依赖于文件系统,没有用户帐户的概念。SQLite有数据库级锁定,没有网络服务器,并且可以实现多数SQL92标准(但不是全部)。SQL92标准的其他一些主要功能是外键和检查限制。了解哪些SQL92功能未实现。这意味着事务是原子的,因为它们要么完全执行,要么根本不执行。事务也是一致的,因为在不一致的状态中,该数据库从未被保留。事务还是独立的,所以,如果在同一时间在同一数据库上有两个执行操作的事务,那么这两个事务是互不干扰的。而且事务是持久性的,所以,该数据库能够在崩溃和断电时幸免于难,不会丢失数据或损坏。SQLite通过数据库级上的独占性和共享锁定来实现独立事务处理。这意味着当多个进程和线程可以在同一时间从同一数据库读取数据,但只有一个可以写入数据。在某个进程或线程向数据库执行写入操作之前,必须获得独占锁定。在发出独占锁定后,其他的读或写操作将不会再发生。SQLite实现了完备的、可嵌入的、零配置的SQL数据库引擎。它的特点包括:1、事务处理是原子的、一致的、独立的和持久的(ACID),即使在系统崩溃和掉电以后。2、零配置,即不需要设置和管理。3、实现了绝大部分的SQL92标准。4、一个单独的磁盘文件存储一个完整的数据库。5、数据库文件在机器之间可自由共享。6、支持数据库文件大小至2TB。7、字符串和BLOG的大小只受限于可用存储器容量。8、代码量小,即小于30K的C代码行和小于250K的代码空间(gcc在i486上)9、对于绝大多数普通操作来说,比流行的C/S模式的数据库引擎运行速度快。10、API简单、易用。可以看出,基于以上特点,SQLite非常适合应用于嵌入式移动数据库。SQLite的版权允许无任何限制的应用,包括商业性的产品。SQLite官方主站上可以下载到编译后的SQLite程序。SQLite是无数据类型的数据库。虽然在生成表结构的时候,要声明每个域的数据类型,但SQLite并不做任何检查。开发人员要靠自己的程序控制输入与读出数据的类型是正确的。这里有一个例外,就是当主键为整型值时,如果要插入一个非整型值时会产生异常。另外,虽然在插入或读出数据的时候是不区分类型的,但在比较的时候,不同数据类型是有区别的。2.系统整体规划2.1数据库的设计在系统设计过程中,首先建立的就是数据库,本软件采用了SQLiteDateBase数据库来构造。一共使用了8个表,分别是学生信息表,教师信息表,学生帐号密码表,教师帐号密码表,课程表,学生成绩表,考试安排表,消息公布表。HYPERLINK 学生信息:包括的数据项有:学号,姓名,性别,民族,专业,班级,生日,身份证号,家庭住址;1.学生信息表(tb_student):表2.1学生信息表字段名数据类型说明是否为空是否为关键字_idinteger学生学号NotnullPrimaryKeynamevarchar(20)学生姓名Notnullsexyvarchar(4)性别Notnullnationalvarchar(4)民族Notnullmajorvarchar(10)专业Notnullclassvarchar(10)班级NotnullbirthdayVarchar(10)生日Notnullcardvarchar(20)身份证号Notnulladdressvarchar(100)家庭住址Notnull教师信息:包括的数据项有:职工号,姓名,性别,民族,专业,所教班级;2.教师信息表(tb_teacher):表2.2教师信息表字段名数据类型说明是否为空是否为关键字_idinteger教师职工号NotnullPrimaryKeynamevarchar(20)教师姓名Notnullsexyvarchar(4)性别Notnullnationalvarchar(4)民族Notnulltypevarchar(10)所教专业Notnullclassdecimal所教班级Notnull学生账号密码:包括的数据项有:序号,密码,学号,角色;3.学生帐号密码表(tb_pwd):表2.3学生帐号密码表字段名数据类型说明是否为空是否为关键字_idinteger学生学号Notnullpasswordvarchar(20)学生设定的密码Notnulljidinteger序列号NotnullPrimaryKeystatusvarxchar(20)角色Notnull教师账号密码:包括的数据项有:序号,密码,职工号,角色;4.教师帐号密码表(tb_thpwd):表2.4教师帐号密码表字段名数据类型说明是否为空是否为关键字_idinteger教师职工号Notnullpasswordvarchar(20)教师设定的密码Notnulljidinteger序列号NotnullPrimaryKeystatusvarxchar(20)角色Notnull发布公告:包括的数据项有:编号,信息;5.消息公布表(tb_flag):表2.5消息公布表字段名数据类型说明是否为空是否为关键字_idinteger序号NotnullPrimaryKeyflagvarchar(200)待发布的信息Notnull考试安排:包括的数据项有:编号,课程,地址。6.考试安排表(tb_test):表2.6考试安排表字段名数据类型说明是否为空是否为关键字_idinteger序列号NotnullPrimaryKeycoursevarchar(10)考试科目Notnulladdressvarchar(100)考试地点Notnull课程管理:包括的数据项有:编号,课程;7.课程表(tb_course):表2.7课程表字段名数据类型说明是否为空是否为关键字_idinteger序列号NotnullPrimaryKeymajorvarchar(10)开设的专业课程Notnull成绩录入:包括的数据项有:学号,姓名,课程,成绩;8.学生成绩表(tb_grade):表2.8学生成绩表字段名数据类型说明是否为空是否为关键字_idinteger序列号NotnullPrimaryKeynamevarchar(20)学生姓名Notnullcoursevarchar(10)课程名Notnullgradedecimal成绩Notnull2.2系统流程图学籍管理系统的使用,应该达到以下目标:(1)系统开发符合学校实际需求,切合实际,能够提高工作效率,降低成本。(2)用户可以根据自己的实际情况查看,对比系统录入信息,并可以查看与当前角色相关的功能信息。(3)系统根据用户实际设计,使用方便,设计统一的学籍界面。(4)能够及时提供相关数据和报表,用以支持学校相关调查。(5)系统运行稳定、安全可靠。图2.2.1学籍管理系统流程图图2.2.2学籍管理系统框架图3.系统分析3.1系统需求分析学籍管理系统是一个学校不可缺少的一部分,它的内容对于学校的管理来说是至关重要的,因此,学籍管理系统应该能够为用户提供充足人事管理的信息和查询手段,但一直以来人们使用传统的人工方式管理信息,这种管理方式存在着许多缺点,诸如效率低,保密性差等,而且时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。作为计算机应用的一部分,使用计算机对学籍信息进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学籍管理的效率,也是学校的科学化、信息化管理,与世界接轨的重要条件。因此,开发一个学籍管理系统是很有必要的,具有其特有的技术意义和管理意义。3.1.1性能需求作为一个数据库系统,首先,系统要有很好的稳定性和可维护性,使得系统易于维护;其次,系统要有很好的可扩展性,能够在现有框架不变的前提下增加新的业务逻辑,进行二次开发;第三,系统要有很好的可移植性,在Windows系统下开发,适合觉得部分用户,以满足不同用户的需求;第四,系统要考虑使用该系统的所有用户的实际操作水平,尽可能使界面简洁、美观、操作简单。3.1.2功能需求本软件由登陆界面需要分别进入学生界面,教师界面,管理员界面。学生界面实现:查询个人信息,查看系统公告,全体学生的成绩查询,开设课程查询和考试安排查询。教师界面实现:查询个人信息,查看系统公告,全体学生的成绩查询,全体学生的信息查询。管理员界面实现:查询学生信息,查询老师信息,录入学生成绩并可查询,添加教师,学生用户,发布公告,安排考试,课程管理。3.2系统功能分析该系统的开发目标是实现学生学籍管理的方便化,信息化,规范化,能够使管理员便捷的管理,用户方便的查看自己需要的信息。所以,具体的功能要求如下:学生信息的管理:可存储学生的基本信息,可进行添加,删除操作。教师信息的管理:可存储教师的基本信息,可添加,可删除,可查询学生的信息。课程的管理:可查询当前开设的课程,可添加,可删除。成绩的管理:可查询学生成绩,可添加,可删除。考试安排的管理:可为相关的专业考试安排具体的考试地址,可删除。消息发布机制的管理:可发布学生,教师相关的信息,供学生,教师注意,可删除,可添加。登陆账号密码的管理:可根据相应注册的帐号密码以及对应的角色选择,三者共同确定,登录相应的应用界面,可添加,可删除。3.3可行性分析3.3.1操作可行性对于一个学籍系统来说,其操作可行性是它成功与否的关键,应作为设计的首要考虑因素。系统操作方法应设计合理。操作方法符合用户的操作习惯,简单直观。并且在进入系统以及点击按钮时通过弹出框进行游戏操作提示,这不仅保证了系统能顺利进行,而且能让用户感受到系统的人性化设计。3.3.2技术可行性Android的开发利用是基于Java语言的,而JDK是Java程序进行开发时必需含有的开发包。在Android应用程序开发前需先搭建起合适的开发环境,在这些开发环境中作为基于Java的可扩展整合型平台的Eclipse则是个不错的选择。Eclipse不仅是款免费并且优秀的开源IDE,在安装了Google公司提供的Android平台开发插件ADT后即可充当Android开发平台。Android平台为开发人员提供了源码开放的SDK(软件开发包),其中包含有Android平台应用程序开发所必要的工具和各组件(API)。在这些插件的配合下,可以实现从企业级Java应用平滑过度到智能机终端Android游戏的开发。Eclipse还是很好的动画游戏制作软件。鉴于其具有面向对象编程的特点,大大提升了程序开发效率。而且Eclipse自带着一些常用的组件,这为我们的开发提供了很大的便利。综上所得,此次系统开发在技术上是可行的。3.3.3社会可行性社会趋势在向着越来越便捷的方式进行,手机运行软件已经隐约成为一种主流,出现在人们生活中,涉及着方方面面。Android的出现,带着更漂亮,更贴近趋势的形象,深深吸引着用户。3.4方案选择实施学籍管理系统,选择SQLite作为后台数据库,选择Java、JSP、Eclipse作为应用程序开发工具,运用Tomcat服务器技术。SQLite:是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合。Java:是由SunMicrosystems公司推出的Java面向对象程序设计语言(简称Java语言)和Java平台的总称。Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网。由四方面组成:●Java编程语言,即语法。●Java文件格式,即各种文件夹、文件的后缀。●Java虚拟机(JVM),即处理*.class文件的解释器。●Java应用程序接口(JavaAPI)。JSP:是由SunMicrosystems公司倡导和许多公司参与共同建立的一种使软件开发者可以响应客户端请求,而动态生成HTML、XML或其他格式文档的Web网页的技术标准。JSP技术是以Java语言作为脚本语言的,JSP网页为整个服务器端的Java库单元提供了一个接口来服务于HTTP的应用程序。JSP使Java代码和特定的预定义动作可以嵌入到静态页面中。JSP句法增加了被称为JSP动作的XML标签,它们用来调用内建功能。另外,可以创建JSP标签库,然后像使用标准HTML或XML标签一样使用它们。标签库提供了一种和平台无关的扩展服务器性能的方法。Eclipse:是著名的跨平台的自由集成开发环境(IDE)。

Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。最初主要用来Java语言开发,通过安装不同的插件Eclipse可以支持不同的计算机语言,如C++和Python等开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。Tomcat:是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。Tomcat是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能,具备了基本的Web服务功能。3.5任务概述学籍管理系统主要实现通过不同角色的登录,看到不同的界面,实现不同的功能。其中学生,教师只具有查询功能,而管理员,具有查询,并删除功能。通过调查,学籍系统需要有以下功能:学生登录页面:用于学生登录后,查询与自己相关的信息,比如:个人信息,考试成绩,考试安排,学校开设的课程,学校的公告;教师登录页面:用于教师登陆后,查询个人信息,查询学生的信息,学生的成绩,学校的公告;管理员登录页面:用于管理员登陆后,查询学生,老师信息,添加用户,发布公告,考试安排,课程管理,录入成绩。4.系统功能实现经过需求分析已经功能模块的设计之后,进入详细设计阶段。这个阶段将对系统的主要模块进行论述,将对主要模块的功能实现的方法和所用到的技术进行相应的解释。4.1项目建立打开安装好的Eclipse软件,进入开发环境后,新建项目,创建一个Android工程SystemOfStudent。如图4.1所示:图4.1新建项目图4.2类的创建提前编写出需要用到的类,如图4.2所示:图4.2工程架构图4.3用户界面的实现4.3.1用户登录界面本软件是专门设计为学生学籍管理软件,所以,应该在登陆界面就体现出来系统的主旨,并且,为了实现不同用户登录进入不同界面的功能,还需要与角色的选择进行相适应,故大致的页面设置如图4.3.1所示:图4.3.1系统登陆界面图如图,将“登录”,“退出”两个按键作为事件的响应按钮,当读取到的帐号密码内容在数据库中存在,并且与所选角色一致时,可进入相应的界面,当不一致时,提示错误。4.3.2用户注册界面点击“注册”按钮,进入注册界面,填入相应的信息,最终点击“确定”按钮,将所填内容存入数据库,或者点击“取消”按钮,取消注册,退回到主界面。这个表设计了一个开关按钮,用于区分注册教师与学生。如图4.3.2所示:图4.3.2系统注册界面图4.3.3学生用户界面在登录条件满足,进入学生界面后,将进入一个学生使用的界面,该界面应该具备查看学校发布的公告的功能,并且登陆进去就显示个人信息,此外还应该能够查询成绩,查询开设的课程,查询考试的安排,如图4.3.3所示:图4.3.3学生用户登陆界面图当条件符合下面的要求时,方可进入该界面:if(select=="学生"){cursor=te(db,id,pwd); if(cursor.getCount()==0){ Toast.makeText(FirstActivity.this,"帐号密码出错",Toast.LENGTH_SHORT).show();} else{Intentintent=newIntent(); intent.putExtra("id",id); intent.setClass(FirstActivity.this,StudentActivity.class); startActivity(intent);} }4.3.4教师用户界面在登录条件满足,进入教师界面后,将进入一个教师使用的界面,该界面应该具备查看学校发布的公告的功能,并且登陆进去就显示个人信息,此外还应该能够查询学生成绩,查询学生信息,如图4.3.4所示:图4.3.4教师用户登陆界面图当用户满足这个判断条件时,才能进入:if(select=="教师"){ cursor=tr(db,id,pwd); if(cursor.getCount()==0){ Toast.makeText(FirstActivity.this,"帐号密码出错",Toast.LENGTH_SHORT).show();} else{Intentintent=newIntent(); intent.putExtra("id",id); intent.setClass(FirstActivity.this,TeacherActivity.class); startActivity(intent);} }4.3.5管理员界面 登录条件满足,进入管理员界面后,将进入一个管理员使用的界面,该界面应该具备查询学生,教师信息的功能,添加用户的功能,成绩录入功能,发布公告功能,考试安排功能以及课程管理功能,如图4.3.5所示:图4.3.4管理员登陆界面图如果满足这个条件,将进入管理员界面。 if(select=="管理员"){if("123".equals(idEt.getText().toString())&&"123".equals(pwdEt.getText().toString())){ startActivity(newIntent(FirstActivity.this,ManagerActivity.class)); } } }这里将管理员帐号密码默认为123,并且不允许注册,因为管理员的权限特殊,涉及到种种隐私,故不准增加其他帐号密码。4.4小结本章的主要内容为系统基本功能的实现,先介绍了开发环境的搭建,再介绍系统工程的创建,继而诠释了主要界面,基本的学籍管理功能已经确定。一款学生学籍管理软件的基本功能已经呈现出来,接下来需要做的,就是具体功能逻辑的编辑,具体的实现各模块的功能。243595.系统详细设计与实现HYPERLINK5.1系统工程的创建 进入开发环境后,创建一个Android工程SystemOfStudent。如图5.1所示:图5.1工程架构图80085.2界面UI设计113235.2.1主要界面布局图5.2主界面效果图6515.2.2角色界面布局角色界面分为三部分,分别是学生界面,教师界面,管理员管理界面。如图4.3所示: 学生界面 教师界面管理员管理界面图5.3角色界面效果图120636.编码128026.1登录界面的编码1:获取帐号密码:idEt=(EditText)findViewById(R.id.id);pwdEt=(EditText)findViewById(R.id.pwd);Stringid=idEt.getText().toString();Stringpwd=pwdEt.getText().toString();2:根据相应的角色选择,对比查找数据库中是否存在该数据:当选择学生时:cursor=te(db,id,pwd); if(cursor.getCount()==0){ Toast.makeText(FirstActivity.this,"帐号密码出错",Toast.LENGTH_SHORT).show();} else{Intentintent=newIntent(); intent.putExtra("id",id); intent.setClass(FirstActivity.this,StudentActivity.class); startActivity(intent);}调用数据库查询语句,查询学生帐号密码表数据:publicCursorte(SQLiteDatabasedb,Stringid,Stringpwd){ returndb.rawQuery("select*fromtb_pwdwhere_id=?andpassword=?",newString[]{id,pwd});}当选择教师时:cursor=tr(db,id,pwd); if(cursor.getCount()==0){ Toast.makeText(FirstActivity.this,"帐号密码出错",Toast.LENGTH_SHORT).show();} else{Intentintent=newIntent(); intent.putExtra("id",id); intent.setClass(FirstActivity.this,TeacherActivity.class); startActivity(intent);}调用数据库查询语句,查询教师帐号密码表数据:publicCursortr(SQLiteDatabasedb,Stringid,Stringpwd){ returndb.rawQuery("select*fromtb_thpwdwhere_id=?andpassword=?",newString[]{id,pwd});}3:点击登录按钮的事件监听响应:login=(Button)findViewById(R.id.login);login.setOnClickListener(newOnClickListener(){ publicvoidonClick(Viewv){});128026.2角色界面的编码HYPERLINK6.2.1学生角色界面1.按钮的获取:grade=(Button)findViewById(R.id.grade); course=(Button)findViewById(R.id.course); test=(Button)findViewById(R.id.test); helper=newMySQLiteDataBaseHelper(this,"account.db",null,1); db=helper.getReadableDatabase();2.listview视图的构建,用于显示学生的基本信息: lv=(ListView)findViewById(R.id.lv); list=(ListView)findViewById(R.id.list); Cursorcursor=news(db); setListData1(cursor); Intentintent=getIntent();Stringvalue=intent.getStringExtra("id"); Cursorcursors=stunews(db,value); setListData(cursors); }3:查询学生信息publicCursorstunews(SQLiteDatabasedb,Stringvalue){ return db.rawQuery("select*fromtb_studentwhere_id=?",newString[]{value+""});4:将查询到的学生信息,设置在listview视图上: publicvoidsetListData(Cursorcursor){ SimpleCursorAdapteradapter=newSimpleCursorAdapter(this,R.layout.add11_item,cursor,newString[]{"_id","name","sexy","national","major","class","birthday","card","address"}, newint[]{R.id.id,R.,R.id.sexy,R.id.national ,R.id.major,R.id.clas,R.id.birthday,R.id.card,R.id.address}, SimpleCursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER); lv.setAdapter(adapter); }}5:查询学校公告:publicCursornews(SQLiteDatabasedb){return db.rawQuery("select*fromtb_flag",null);}6:将公告设置在listview视图上:publicvoidsetListData1(Cursorcursor){ SimpleCursorAdapteradapter=newSimpleCursorAdapter(this,R.layout.add_flag,cursor, newString[]{"_id","flag"}, newint[]{R.id.id,R.id.news}, SimpleCursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER); list.setAdapter(adapter);}HYPERLINK6.2.2教师角色界面教师界面与学生界面相似,只需要相应的获取到学生信息和学生成绩,以及个人信息即可。HYPERLINK6.2.3管理员角色界面管理员的功能很多,包括管理学生,教师信息,添加新用户,为学生记录考核成绩,安排考试地点,公布信息,开设科目管理等。1:通过相应的按钮,进入不同的功能界面:这里以其中的两个界面为例,进行了举例。publicvoidmyBtn(Viewview){ switch(view.getId()){ caseR.id.btn1: startActivity(newIntent(ManagerActivity.this,LookGradeActivity.class)); break; caseR.id.btn2: startActivity(newIntent(ManagerActivity.this,AddUserManActivity.class)); break;}2:用户添加功能的实现:A.构建方法,将所填的信息插入到相应表的数据库中:publicvoidinsert(SQLiteDatabasedb,Stringname,Stringsexy, Stringnational,Stringmajor,Stringclass1,Stringid,Stringdate,Stringcard,Stringaddress){ db.execSQL("insertintotb_student(_id,name,sexy,national,major,class,birthday,card,address)values(?,?,?,?,?,?,?,?,?)", newString[]{id,name,sexy,national,major,class1,date,card,address}); }B.调用该方法:insert(db,name,sexy,national,major,class1,id,date,card,address);3:消息发布功能的实现: 1)删除无用的消息:publicvoidmydelete(SQLiteDatabasedb,intid){ db.execSQL("deletefromtb_flagwhere_id=?",newString[]{id+""}); }2)插入新的消息: publicvoidmyinsert(SQLiteDatabasedb,Stringflag){ db.execSQL("insertintotb_flag(flag)values(?)",newString[]{flag});}3)查询消息: publicCursormynews(SQLiteDatabasedb){ return db.rawQuery("select*fromtb_flag",null);}4)显示消息:publicvoidsetListData(Cursorcursor){ SimpleCursorAdapteradapter=newSimpleCursorAdapter(this,R.layout.add_flag,cursor, newString[]{"_id","flag"}, newint[]{R.id.id,R.id.news}, SimpleCursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER); list.setAdapter(adapter); }128026.3小结代码的编写,到这里基本告一段落,这个系统的功能相对简单,但实现起来很复杂,需要不断的创建表,调用表,查询,添加,删除信息。在编码的时候,遇到了各种各样的问题,其中最常见的就是.NullPointerException,导致这个问题的原因很多,比如有数据库表的查询时,查询的表并不存在,或者列表项并不存在;也有可能是在构建类之后,并没有在AndroidManifest.xml中声明activity权限。在建表的时候,因为擅用默认的id属性,导致的一系列问题。120637.系统测试128027.1测试环境介绍因为条件有限,我分别采用了Eclipse模拟器和华为3C手机测试。9837.2功能模块测试登录界面测试:测试方法:通过输入已有帐号密码,并选择相应的角色,点击登录能否实现点击跳转到相应界面。测试结果:帐号密码无误时,点击按钮,能顺利跳转到各个页面。当帐号密码为空,错误或者角色选择错误时,提示帐号密码错误。、(2)角色模块:测试方法:分别进入相应模块,点击查看,使用该模块具有的功能。测试结果:成功。学生模块: 教师模块: 管理员模块:7.3系统性能分析经过对系统进行测试和运行。总结出学籍系统性能如下:(1)界面友好,操作方便系统风格风趣,界面简单,功能较完善,操作简单,易懂。(2)系统响应较快,运行较稳定在系统运行时,消息响应处理很快,且系统整体运行安全且稳定。7.4小结在对系统进行测试的过程中,发现了不少问题和缺陷,之后及时对其进行了修正。总体上,本次系统的设计与开发达到了预期目标,基本实现了系统设计时的各项需求,完成后的系统其性能也很安全稳定。这标志着本次基于Android平台的学籍管理系统开发工作圆满完成。HYPERLINK总结大学四年学习的编程思想和编程技巧,在最后的毕业设计当中得到了运用。经过此次毕业设计,充分认识到了自己编程能力方面的缺陷,感觉到自己的基础比较薄弱。但在这段时间里,我不断地发现自己的问题,并且找出问题产生的原因,根据相关的方法解决问题。几个月的努力没有白费,终于基本上

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论