工资查询系统的设计与实现.docx

上传人:b****5 文档编号:6134955 上传时间:2023-01-04 格式:DOCX 页数:27 大小:1.14MB
下载 相关 举报
工资查询系统的设计与实现.docx_第1页
第1页 / 共27页
工资查询系统的设计与实现.docx_第2页
第2页 / 共27页
工资查询系统的设计与实现.docx_第3页
第3页 / 共27页
工资查询系统的设计与实现.docx_第4页
第4页 / 共27页
工资查询系统的设计与实现.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

工资查询系统的设计与实现.docx

《工资查询系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《工资查询系统的设计与实现.docx(27页珍藏版)》请在冰豆网上搜索。

工资查询系统的设计与实现.docx

工资查询系统的设计与实现

毕业设计(论文)

题目名称:

基于Android的工资查询系统的开发

与实现

题目类型:

毕业论文

学生姓名:

安冠鼎

院(系):

信息与数学学院

专业班级:

信计11102班

指导教师:

孙玉秋

辅导教师:

孙玉秋

时间:

2014年12月至2015年6月

基于Android的工资查询系统的开发与实现

学生:

安冠鼎,信息与数学学院

指导教师:

孙玉秋,信息与数学学院

[摘要]Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。

2013年09月24日谷歌开发的操作系统Android在迎来了5岁生日,全世界采用这款系统的设备数量已经达到10亿台。

随着社会的快速发展,人们对生活质量的要求也越来越高。

城市生活的快节奏,使人们对信息的获取就有了更高的要求,及时和准确的获取信息是最基本的要求。

随着智能手机慢慢的普遍,手机将成为人们获取信息最方便的工具。

工资查询系统的设计与实现就是为了适应快速发展的要求。

工资查询系统主要有3个模块,各个模块的功能分别如下。

查工资,直接查询自己所需要的信息,一目了然,用户可以方便快捷的查询所需要的信息。

曝工资,让用户为数据库提供数据,使数据更加有说服力,使此系统的实用性大大提升。

排行榜,更直观、更快了解某城市和某职位的薪资水平。

[关键词]工资查询;Android;应用程序;薪资水平

 

DevelopingandImplementingSalaryQuerySystemBasedonAndroid

Student:

AnGuandingSchool of Information and Mathematics

Tutor:

SunYuqiuSchool of Information and Mathematics

[Abstract]Android is a kind of free and open source code based on Linux operating system, which is mainly used in mobile devices, such as smart phones and tablets, and open handset alliance led and developed by Google company. Sep 24th, 2013, the operating system Android  developed by Google company is ushered in the 5 years old birthday, the number of devices which is using this system all over the world has reached 1 billion units.

With the rapid development of society, people has higher requirement for the quality of life. The fast pace of modem life, make people access to information reach a higher level.Meanwhile, timely and accurate accessible to information is the most basic requirements. With the universality of  cell phone, smartphones will become the most convenient to information. The design and implementation of wage query system is aimed to adapt to the requirements of rapid development.

Salary query system mainly has three modules, the function of each module are as follows.

Query wages, query the information they need to make yourself directly, be clear at a glance, the user can query the information once they need conveniently.

Exposure wages, let users to provide data to the database, make the data more convincing,to enhance the practicability of this system.

List, more intuitive, faster to recognize a city and a position of wages.

[Keywords]Wagequery,Android,Theapplication,Paylevel

基于Android的工资查询系统的开发与实现

1绪论

随着各行各业技术的迅速发展,移动通信设备和Internet向移动终端的普及,年轻一代人的手机用户对移动终端的要求也越来越高了,Symbian,WindowsMobile,PalmOS等手机平台因为其封闭性,而不能很好的满足用户的需求,因此市场就迫切的需要一个开发性很强的平台。

在经过多年的发展后,3G技术得到了广泛的接受和使用,它使移动终端用户的数据传输速率变得更加快速。

随着3G网络的使用,移动终端不再仅仅是通讯网络的终端,还将快速成为互联网的终端。

所以,移动终端需要的服务和应用软件将会有很大的发展空间。

Google为此于2007年11月推出了一个专门为移动设备设计的软件平台——Android平台[1]。

Android是一个真正意义上的移动设备综合开发平台,它里面包括操作系统、中间件和一些关键的平台应用。

Android是由Linux和Java构成的开源软件开发平台,允许所有个人和厂商在其基础上进行开发。

Android平台的开放性等特点不仅能促进技术(包括平台本身)的创新,还有助于降低开发的成本,还可以让运营商能非常方便地设计自己特色化的产品。

因此,它市场发展潜力很大[2]。

根据中国互联网信息中心(CNNIC)发布的《中国互联网络发展状况统计报告》显示,截止到2008年6月底,我国网民的数量达到了2.53亿,首次大幅度的超过美国,网民的规模跃居为世界首位,其中手机网民共有7305万;截止2014年12月,我国网民规模达6.49亿,其中手机网民规模达5.57亿。

因此,手机上网成为了网络接入的一个重要发展方向。

已经工作的朋友,在一起聚会的朋友,工资常被作为一种谈资,可能是对他人的工资感兴趣,也可能想通过对比看看自己的待遇在同行业中是否合理,或者只是想通过知道别人的工资来自我定位、彼此攀比等等。

由此可见,工资这一话题已经融入人们的生活当中。

2开发概述

应届毕业生不清楚自己想从事的行业中的薪资水平,无法有根据的与用人单位洽谈薪酬,低了,那岂不是亏待了自己?

高了,用人单位又会觉得是在狮子大开口。

有经验的从业者想看看其他公司相同工作的待遇,谋求更高的工资待遇。

随着移动互联网快速的发展,基于安卓系统开发的工资系统是一个快捷、稳定的览视平台,是手机用户的最佳选择。

2.1手机操作系统的开发现状

PalmOS是一套专门为掌上电脑编写的操作系统,是一种比较开放的、轻量级操作系统,占用的内存比较小,用户可以在其基础上修改和编写相关软件,让支持的应用程序更加的丰富多彩。

PalmOS在其它一些方面也还存在不足,如PalmOS本身不具备MP3播放、录音功能等,但是它可以通过加入第三方硬件设备或软件来实现。

PalmOS代表性的产品有Palmm500、Palmm505、PalmIII等。

Symbian是一个多任务、实时性的纯32位的操作系统,具有内存占用少、功耗低等特点,非常适合在手机等移动设备上使用,经过不断完善,可以支持GPRS、蓝牙、SyncML (SynchronizationMarkupLanguage)和3G技术。

Windowsmobile系列操作系统是由微软计算机的Windows操作系统演变而来的。

Windowsmobile系列操作系统有强大的功能,并且支持该操作系统的智能手机基本上都使用了英特尔嵌入式处理器,主频比较高,比在其它硬件设置(如内存、储存卡容量等)上也使用其他操作系统的智能手机也要高出许多,所以速度比较快,性能也比较强劲。

Windowsmobile系列操作系统有SmartPhone以及PocketPCPhone两种平台。

PocketPCPhone主要应用于掌上电脑型的智能设备,而SmartPhone则主要为智能手机提供此操作系统[3]。

Linux操作系统源代码开放。

由于它的开源性,手机制造商可以根据自己的实际情况开放自己的Linux手机操作系统程度,从而也能够吸引越来越多软件制造商在其上开发更多的应用软件和丰富的第三方应用。

但是Linux操作系统也存在着一些缺点,基于Linux的产品和集成开发环境与PC的连接性相对较差等[4]。

2.2Android的构架分析和手机平台的优势

Android是一个移动设备的软件开发平台,是由Linux和Java构成的开源软件开发平台,它提供包括SDK、Middleware、KeyApps、LinuxKernel四个部分在内的全套手机软件的方案。

它也开放了基于Linux内核的开发工具,从而保证了内容的多样性和可移植性。

Android平台给我们开发应用程序提供了一整套很好的框架,我们可以在此平台的基础上开发出不同的应用程序,也可以开发新的组件让应用程序使用。

Android的整体架构包括Linux内核、C/C++函数库、Dalvik虚拟机、应用框架以及一些关键应用程序。

通过编译基于框架的应用程序可以降低开发负荷。

应用软件原则上是在Dalvik虚拟机上运行的。

图1Android架构

现在常见的智能手机平台有:

Symbian、WindowsMobile、Palm、Blackberry、iPhoneOS等。

Android平台的优势主要体现在以下几个方面。

(1)开放性

Android平台是一个开放性的平台,可以让所有移动终端厂商加入到Android联盟中来。

巨大的开放性可以使其拥有更多的开发者,应用和用户的日益丰富,使一个崭新的平台很快走向成熟。

开放性对于Android的未来发展而言,有助于积累更多的人气,这里的人气包括厂商和消费者,对于消费者来说,最大的受益是丰富的应用软件资源。

开放的平台也会带来更大竞争,这样一来,消费者将可以用相对较低的价位购得心仪的手机。

(2)挣脱运营商的束缚

在过去相当长的一段时间里,手机应用经常受到运营商制约,接入什么网络使用什么的功能,几乎都要受到运营商的掌控。

自从Android上市以来,用户可以更加方便地连接网络,运营商的制约相对减少。

EDGE、HSDPA这些2G至3G移动网络的不断过渡和提升,手机随意接入网络已经不再是运营商口中的笑谈。

(3)丰富的硬件选择

这一点其实还是与Android平台的开放性相关。

正是由于Android的开放性,众多的厂商才会推出功能特色各异的、千奇百怪多种产品。

功能上的特色和差异,却不会影响到数据的同步、甚至软件的兼容问题。

例如你从诺基亚Symbian系统手机一下改用苹果系统iPhone,同时还可将Symbian中喜欢的软件带到iPhone上来使用,联系人等个人资料更是可以方便地进行转移。

(4)开发手机软件不受任何限制

Android平台提供给第三方开发商一个十分自由、宽泛的环境。

所以不会受到各种规定的阻碍,可想而知,这样一来会有多少别致新颖的软件产生。

(5)无缝结合的Google应用

至今为止叱咤互联网的Google已经走过了十几年的历史。

从搜索巨无霸到全面的互联网渗透,Google服务如邮件、搜索、地图等都已经成为连接互联网和用户的重要纽带,而Android平台手机会无缝地结合这些优秀的Google服务。

正是因为Android具有以上的优点,所以2010年年末数据显示,仅仅正式推出两年的Android操作平台就超越称霸十几年的诺基亚Symbian操作系统,使Android成为全球最受欢迎的智能手机平台[5]。

2.3Android特征

应用框架:

用于开发可替代、可重用的组件。

Dalvik虚拟机:

Android使用的Java虚拟机使用的是自主开发的代号为Dalvik的虚拟机技术,不仅保证API方面兼容还针对移动手机进行了大幅度的优化设置,占用的资源比以前更小,运行效率比以前更高。

优化的图形:

拥有强大的自定义二维图形库。

基于OpenGLES1.0标准的3D图形功能,在移动3D开发中有着举足轻重的地位。

多媒体支持:

支持各种通用的静态图像、音频和视频格式,如JPG、PNG、MP3等。

OpenCore是Android多媒体框架的核心,Android平台的所有音频和视频采集与播放的操作都是由它来实现的。

通过OpenCore,开发者可以快速并方便的开发出想要的多媒体的应用程序。

SQLite数据库:

SQLite使数据存储结构化。

它是一款免费轻型的且开源的数据库,它以嵌入式为设计目标,它占用的系统资源非常低、需要的内存空间相对较少、支持事务处理功能和处理速度比较快等。

GSM技术:

(依赖硬件)GlobalSystemforMobileCommunications,全球通讯系统,俗称“全球通”,它是第二代移动通信技术,它的开发目的是让全球各地可以共用同一个移动电话网络标准,让所有用户使用一部手机就能走遍全球。

Camera,GPS,compass,accelerometer:

(依赖硬件)GPS(GlobalPositioningSystem),即全球定位系统,它是由覆盖全球的24颗卫星组成的卫星系统。

Compass是一个开放源码的Java搜索引擎框架。

蓝牙,EDGE,3GandWiFi:

(依赖硬件)WiFi和蓝牙都是一种短距离的无线连接技术,在短距离内可以实现数据和话音的无线传输。

EDGE(EnhancedDataRateforGSMEvolution),是加强型数据速率GSM改进技术。

强大的开发环境:

包括调试工具,一个设备模拟器,内存和性能检测,以及EclipseIDE的开发插件。

Eclipse是一个集成的开发环境[6]。

3相关技术概念

工资查询系统是利用Android面向对象的编程方法(OOP)以及基于Eclipse+ANDROIDSDK作为开发工具[7],后台管理采用Eclipse+Tomcat作为服务器,数据库使用MySQL+Workbench[8]。

所有的应用程序都是使用JAVA语言编写的。

其解释如下:

3.1应用程序框架

开发人员可以完全访问核心应用程序所使用的API框架。

该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的部分功能块并且所有其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。

同样,该应用程序的重用机制也让用户可以方便的替换程序的组件。

隐藏在每个应用后面的是一系列的系统和服务,其中包括:

丰富而又可扩展的视图(Views),它可以用来构建应用程序,它包括文本框(textboxes),按钮(buttons),列表(lists),网格(grids),甚至是可嵌入的web浏览器。

内容提供器(ContentProviders)让一个应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据资源管理器(ResourceManager)提供非代码资源的访问,如本地图形,字符串和布局文件(layoutfiles)。

通知管理器(NotificationManager)让应用程序可以在状态栏中显示自定义的提示信息。

活动管理器(ActivityManager)用来管理应用程序生命周期同时提供常用的导航回退功能[9]。

3.2系统运行库

3.2.1程序库

Android包含一些C/C++库,这些库能被Android系统中不同的组件来使用。

它们通过Android应用程序框架为开发者提供服务。

以下是一些核心库:

系统C库是一个从BSD继承来的标准C系统函数库(libc),它是专门为基于Linux的设备定制的。

媒体库基于PacketVideoOpencore;该库支持多种常用的音频、静态图像文件,同时支持视频格式回放和录制。

编码格式包括MP3,MP4,JPG,PNG,AMR等。

SurfaceManager对显示子系统的管理,并且为多个应用程序提供了2D和3D图层的无缝融合。

SGL底层的2D图形引擎。

LibWebCore一个最新的web浏览器引擎,支持Android浏览器和一个可嵌入的web视图。

FreeType位图(bitmap)和矢量(vector)字体显示。

3Dlibraries基于OpenGLES1.0APIs实现,该库可以使用硬件3D加速(如果可用)或者使用高度优化的3D软加速。

SQLite一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎[10]。

3.2.2运行库

Android包括了一个核心库,该核心库提供了Java编程语言核心库的大多数功能[11]。

每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。

Dalvik被设计成一个设备可以同时高效地运行多个虚拟系统。

Dalvik虚拟机执行的Dalvik可执行文件(.dex),该格式文件针对小内存使用做了许多优化。

同时虚拟机是基于寄存器的,所有的类都经由Java编译器进行编译,然后通过SDK中的"dx"工具转化成.dex格式由虚拟机进行执行。

Dalvik虚拟机依赖于Linux内核的一些基本功能,比如线程机制和底层内存管理机制等[12]。

3.3Linux内核

Android的核心系统服务依赖于Linux2.6内核,如内存管理、安全性、网络协议、进程管理和驱动模型。

Linux内核也作为硬件和软件之间的抽象层。

3.4Android应用的构成和工作机制

对于Android应用程序来说,是由Activity、BroadcastReceiver、Service、ContentProvider四部分组成,但每一个Android应用程序并不是都必须由这四部分组成。

它们在应用程序中使用时,需要在配置文件中所必需配置的,用于定义应用程序的组件、组件的功能以及必要条件等[13]。

Android应用的构成和工作流程图如下:

图2Android的构成和工作流程

3.4.1Activity

Activity是构成应用程序中最重要的构成部分,在Android应用程序中,基本都是通过Activity来与用户进行交互,因此Activity主要负责的就是创建与用户进行交互的显示窗口,开发者可以在这些窗口里通过调用setContentView(View)方法来显示自己的用户界面。

3.4.1.1活动生命周期

活动(Activity)在系统中以活动栈的形式进行管理。

当一个新的Activity启动后,它被放到了栈项,成为了运行Activity,而新Activity之前的Activity在活动栈里总位于新Activity之下,直到新的Activity退出才重新回到前台。

Activity有三个关键的循环:

(1)活动的整个生命期:

从首次调用onCreate()开始,到最终调用onDestroy()结束。

在onCreate()中进行所有初始化,在onDestroy()时进行清理工作,释放资源。

(2)活动的可见生命期:

从调用onStart()开始,到onStop()被调用为止。

在这段时间内,即使活动不与用户进行交互,用户也可以在屏幕上看到它。

在这两个方法调用之间,可以维护活动显示给用户的资源。

onStart()和onStop()方法可以多次调用,因为活动随时可以在可见和隐藏之间进行转换。

(3)活动的后台生命期:

从调用onResume()开始,到onPause()被调用为止。

在这段时间内活动处于其它所有活动之前,并与用户进行交互。

一个活动可以不断在resumed状态和paused状态之间变换[14]。

3.4.1.2活动之间的切换

Android使用了Intent类来实现活动之间的切换工作。

Intent负责对应用中一次操作的动作、动作涉及的数据和附加数据进行描述。

根据Intent的描述,负责找到对应的组件,将Intent传递给调用的组件并完成组件的调用。

因此,Intent起着一种媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦合。

在应用中,我们可以以两种形式来使用Intent:

直接Intent,指定了component属性的Intent,通过指定具体的组件类,通知应用启动对应的组件。

间接Intent,没有指定component属性的Intent,则需要包含足够的信息,这样系统才能根据这些信息,在所有的可用组件中,确定满足此Intent的组件[15]。

3.4.2BroadcastReceiver

BroadcastReceiver是用于对外部事件的响应,当外部事件发生时,会使用NotificationManager通知用户。

当一个BroadcastReceiver被触发时,系统会在需要的时候启动对应的应用程序。

各种应用还可以通过使用Context.broadcastIntent()将它们的BroadcastReceiver广播给其它的应用程序,实现应用之间的通讯[16]。

3.4.3Service

Service是不带IJI提供连续信息的应用程序。

它是运行于应用程序后台的服务,在用户进行其它活动的时候,这个服务将一直运行在后台直到用户停止该服务或服务运行结束[17]。

3.4.4ContentProvider

ContentProvider应用程序能够将它们的数据保存到文件、SQLite数据库和其它的存储设备中。

当应用程序需要使用存储设备中的数据时,可以使用ContentProvider来完成。

使用ContentProvider能够灵活的替换底层使用的存储设备,使开发者可以专注于应用逻辑的开发,不用考虑底层存储设备的细节,从而使应用系统具有良好的数据迁移性[18]。

3.5Android与其他手机操作系统的比较

我们主要从手机操作系统的Portability、Reliability、Connectivity、ProductDiversity、OpenPlatform、KernelSize、Standards、Security和SpecialFeatures这九个方面进行了比较,具体的比较结果如下表:

表1手机操作系统比较表

比较条件

Android

WindowsMobile

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1