基于安卓的快递运单管理系统毕业(论文)设计_第1页
基于安卓的快递运单管理系统毕业(论文)设计_第2页
基于安卓的快递运单管理系统毕业(论文)设计_第3页
基于安卓的快递运单管理系统毕业(论文)设计_第4页
基于安卓的快递运单管理系统毕业(论文)设计_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

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

文档简介

基于Android和C/S的快递运单扫描管理系统设计海南大学毕业论文(设计)题目:基于Android和C/S的快递运单扫描管理系统设计学号:***********姓名:***年级:2010级学院:信息科学技术学院系别:计算机科学与技术系专业:计算机科学与技术指导教师:***(副教授)完成日期:2014年5月4日I摘要移动互联网是一种通过智能移动终端,采用移动无线通信方式获取业务和服务的新兴业态,包含终端、软件和应用三个层面。终端层包括智能手机、平板电脑、电子书、MID等;软件包括操作系统、中间件、数据库和安全软件等。应用层包括休闲娱乐类、工具媒体类、商务财经类等不同应用与服务。随着宽带无线接入技术和移动终端技术的飞速发展,人们迫切希望能够随时随地乃至在移动过程中都能方便地从互联网获取信息和服务,移动互联网应运而生并迅猛发展。越来越多的人希望在移动的过程中高速地接入互联网,获取急需的信息,完成想做的事情。所以,出现的移动与互联网相结合的趋势是历史的必然。移动互联网正逐渐渗透到人们生活、工作的各个领域,短信、铃图下载、移动音乐、手机游戏、视频应用、手机支付、位置服务等丰富多彩的移动互联网应用迅猛发展,正在深刻改变信息时代的社会生活,移动互联网经过几年的曲折前行,终于迎来了新的发展高潮。物流模块作为电子商务的一个重要环节,紧跟移动互联网的步伐是必然选择。本课题的目的是开发基于Android的快递运单条码扫描系统手机客户端,与传统的快递运单管理系统相结合,实现提货、发货、到货和签收等业务阶段都是能用手机扫描条形码货单号,然后通过移动网络提交信息到系统服务器,使快递的物流系统与移动互联网对接,方便快递公司查询和统计货物的流通状况,实现货物流通数据的信息化。关键词:移动互联网;Android;运单扫码;快递物流

AbstractMobileInternetisasmartmobileterminalbyusingamobilewirelesscommunicationsservicesandaccesstonewindustryservices,includingterminals,softwareandapplications.Terminallayerincludingsmartphones,tabletPCs,e-books,MID,etc.Softwareincludingoperatingsystems,middleware,databaseandsecuritysoftware.Applicationlayerincludesrecreation,toolsinmedia,businessfinanceandeconomicsofdifferentapplicationsandservices.Withtherapiddevelopmentofbroadbandwirelessaccesstechnologiesandmobileterminaltechnology,Peopleareeagertobeabletoeasilyaccessinformationanytime,anywhereandservicesfromtheInternetevenduringthemove,andtherapiddevelopmentofmobileInternetcameintobeing.Moreandmorepeoplewantintheprocessofmovinghigh-speedaccesstotheInternet,accesstoinformationneededtocompletethewanttodo.So,there’sacombinationofmobileandInternettrendsisahistoricalnecessity.MobileInternetisgraduallypenetratedintopeople'slives,inallareasofwork,SMS,bellimagedownload,mobilemusic,mobilegames,videoapplications,mobilepayments,locationservicesandothercolorfulrapiddevelopmentofmobileInternetapplications,areprofoundlychanginginformationagesociallife,themobileInternetafewyearsagoafteratortuousline,finallyusheredinanewsurgeofdevelopment.LogisticsModulepaceofe-commerceasanimportantpartofkeepingthemobileInternetisaninevitablechoice.ThepurposeofthisprojectistodevelopAndroid-basedcourierwaybillmobileclientbarcodescanningsystem,combinedwiththetraditionalcourierwaybillmanagementsystem,delivery,shipping,arrivalandsignbusinessphonecanscanbarcodesstagesaremanifestnumber,andthensubmittheinformationtothesystemserverviathemobilenetwork,sothatthecourierlogisticssystemsandmobileInternetdockingfacilitatethecirculationstatusofthecouriercompanytoqueryandstatisticsofgoods,toachieveinformationflowofgoodsdata.Keywords:MobileInternet;Android;waybillscancode;ExpressLogistics目录TOC\o"1-3"\h\u摘要 IAbstract II1绪论 11.1课题背景 11.2课题相关技术的国内外研究现状 11.2.1移动互联网简介及现状 11.2.2移动电子商务的发展与现状 31.3课题任务 51.4论文篇章结构 51.5本章小结 62开发环境及相关技术 72.1客户端技术简介 72.1.1Android平台介绍 72.1.2Android系统架构 82.1.3Android平台优势 102.2系统服务端相关技术简介 112.3本课题涉及的数据库介绍 122.4本章小结 133系统的需求分析 143.1系统的可行性分析 143.2系统功能描述 143.2.1系统功能 143.2.2系统架构 153.3基于用例图的用户需求分析 163.4业务流程分析 183.6本章小结 204快递运单扫描管理系统的概要设计 214.1系统总体设计 214.2客户端系统设计 214.3系统数据库设计 224.3.1基于E-R图的数据库设计 224.3.2数据库表设计 264.4本章小结 285快递运单扫码管理系统详细设计与实现 295.1开发环境搭建 295.2客户端登录功能模块实现 305.2.1登录模块功能界面 305.2.2登录模块设计说明 325.3客户端主菜单界面实现 385.4客户端用户扫描模块实现 395.4.1运单扫描 395.4.2摄像头扫描 405.5客户端运单录入模块实现 465.5.1运单录入模块功能界面 465.5.2录入模块设计说明 465.6服务器端用户登录模块 505.6.1登录模块功能界面 505.6.2登录模块设计说明 505.7服务器运单录入模块 525.7.1运单录入模块功能界面 525.7.2运单录入模块设计说明 535.8本章小结 536总结与展望 54致谢 55参考文献 561绪论1.1课题背景移动互联网,就是将移动通信和互联网二者结合起来,成为一体。移动通信和互联网成为当今世界发展最快、市场潜力最大、前景最诱人的两大业务,它们的增长速度都是任何预测家未曾预料到的,所以移动互联网可以预见将会创造经济神话。移动互联网拥有广阔的前景,对互联网企业来说,可谓是一块巨大的蛋糕,谁都想抢先进入这个市场,赢得先机大咬一口。同时,物流行业正面临飞速发展,也迎来了日趋激烈的竞争局面。客户需求也呈现多元化、个性化的发展趋势。传统的物流运作方式,已显示出不足。物流快递企业的核心竞争力:执行效率、服务水平、管理能力和成本管控都急需一套全面提升的解决方案。在此背景下,将传统快递物流系与移动互联网相结合,打造一套移动物流快递信息化平台正是适时之举。由手持终端构建的移动信息处理平台能实现前台业务的快速的业务受理,精确的追踪定位,及时的任务更新,合理的资源调配,具有强大的信息处理能力并且可以提高物流行业执行效率。整合无线通讯技术和计算机技术,利用条码自动识别,赋予了移动手持终端新的使命。1.2课题相关技术的国内外研究现状1.2.1移动互联网简介及现状移动互联网是一种通过智能移动终端,采用移动无线通信方式获取业务和服务的新兴业态,包含终端、软件和应用三个层面。终端层包括智能手机、平板电脑、电子书、MID等;软件包括操作系统、中间件、数据库和安全软件等。应用层包括休闲娱乐类、工具媒体类、商务财经类等不同应用与服务。随着技术和产业的发展,未来,LTE(长期演进,4G通信技术标准之一)和NFC(近场通信,移动支付的支撑技术)等网络传输层关键技术也将被纳入移动互联网的范畴之内。随着宽带无线接入技术和移动终端技术的飞速发展,人们迫切希望能够随时随地乃至在移动过程中都能方便地从互联网获取信息和服务,移动互联网应运而生并迅猛发展。然而,移动互联网在移动终端、接入网络、应用服务、安全与隐私保护等方面还面临着一系列的挑战。其基础理论与关键技术的研究,对于国家信息产业整体发展具有重要的现实意义。《计算机学报》刊登的“移动互联网:终端、网络与服务”一文,从移动终端、接入网络、应用服务及安全与隐私保护4个方面对移动互联网的研究进展进行阐述与分析,并对未来的研究方向进行了展望。移动互联网有十大业务模式(一)移动社交将成客户数字化生存的平台:在移动网络虚拟世界里面,服务社区化将成为焦点。社区可以延伸出不同的用户体验,提高用户对企业的黏性。(二)移动广告将是移动互联网的主要盈利来源:手机广告是一项具有前瞻性的业务形态,可能成为下一代移动互联网繁荣发展的动力因素。(三)手机游戏将成为娱乐化先锋:随着产业技术的进步,移动设备终端上会发生一些革命性的质变,带来用户体验的跳跃:加强游戏触觉反馈技术,可以预见,手机游戏而作为移动互联网的杀手级盈利模式,无疑将掀起移动互联网商业模式的全新变革。(四)手机电视将成为时尚人士新宠:手持电视用户主要集中在积极尝试新事物、个性化需求较高的年轻群体,这样的群体在未来将逐渐扩大。(五)移动电子阅读填补狭缝时间:因为手机功能扩展、屏幕更大更清晰、容量提升、用户身份易于确认、付款方便等诸多优势,移动电子阅读正在成为一种流行迅速传播开来。(六)移动定位服务提供个性化信息:随着随身电子产品日益普及,人们的移动性在日益增强,对位置信息的需求也日益高涨,市场对移动定位服务需求将快速增加。(七)手机搜索将成为移动互联网发展的助推器:手机搜索引擎整合搜索概念、智能搜索、语义互联网等概念,综合了多种搜索方法,可以提供范围更宽广的垂直和水平搜索体验,更加注重提升用户的使用体验。(八)手机内容共享服务将成为客户的黏合剂:手机图片、音频、视频共享被认为是未来3G手机业务的重要应用。(九)移动支付蕴藏巨大商机:支付手段的电子化和移动化是不可避免的必然趋势,移动支付业务发展预示着移动行业与金融行业融合的深入。(十)移动电子商务的春天即将到来:移动电子商务可以为用户随时随地提供所需的服务、应用、信息和娱乐,利用手机终端方便便捷地选择及购买商品和服务。1.2.2移动电子商务的发展与现状电子商务包括电子货币交换、供应链管理、电子交易市场、网络营销、在线事务处理、电子数据交换(EDI)、存货管理和自动数据收集系统。在此过程中,利用到的信息技术包括:互联网、外联网、电子邮件、数据库、电子目录和移动电话。电子商务即使在各国或不同的领域有不同的定义,但其关键依然是依靠着电子设备和网络技术进行的商业模式,随着电子商务的高速发展,它已不仅仅包括其购物的主要内涵,还应包括了物流配送等附带服务。移动电子商务是指通过手机、PDA、掌上电脑等手持移动终端从事的商务活动。移动电子商务(M-Commerce),它由电子商务(E-Commerce)的概念衍生出来,现在的电子商务以PC机为主要界面,是“有线的电子商务”;而移动电子商务,则是通过手机、PDA(个人数字助理)这些可以装在口袋里的终端与我们谋面,无论何时、何地都可以开始。有人预言,移动商务将决定21世纪新企业的风貌,也将改变生活与旧商业的地形地貌。与传统通过电脑(台式PC、笔记本电脑)平台开展的电子商务相比,拥有更为广泛的用户基础。目前,中国互联网用户不到2300万,而手机用户已超过1.1亿,并具有数量众多的PDA;据预测,到2005年,中国手机用户将达到3亿,远远地超过互联网的8000万用户,因此它具有更为广阔的市场前景。与传统的电子商务活动相比,移动电子商务具有如下几个特点:(一)更具开放性、包容性。移动电子商务因为接入方式无线化,使得任何人都更容易进入网络世界,从而使网络范围延伸更广阔、更开放;同时,使网络虚拟功能更带有现实性,因而更具有包容性。(二)具有无处不在、随时随地的特点。移动电子商务的最大特点是“自由”和“个性化”。传统电子商务己经使人们感受到了网络所带来的便利和快乐,但它的局限在于它必须有线接入,而移动电子商务则可以弥补传统电子商务的这种缺憾,可以让人们随时随地结账、定票或者购物,感受独特的商务体验。(三)潜在用户规模大。目前我国的移动电话用户己接近4亿,是全球之最。显然,从电脑和移动电话的普及程度来看,移动电话远远超过了电脑。而从消费用户群体来看,手机用户中基本包含了消费能力强的中高端用户,而传统的上网用户中以缺乏支付能力的年轻人为主。由此不难看出,以移动电话为载体的移动电子商务不论在用户规模上,还是在用户消费能力上,都优于传统的电子商务。(四)能较好确认用户身份。对传统的电子商务而言,用户的消费信用问题一直是影响其发展的一大问题,而移动电子商务在这方而显然拥有一定的优势。这是因为手机号码具有唯一性,手机SIM卡片上存贮的用户信息可以确定一个用户的身份,而随着未来手机实名制的推行,这种身份确认将越来越容易。对于移动商务而言,这就有了信用认证的基础。(五)定制化服务。由于移动电话具有比PC机更高的可连通性与可定位性,因此移动商务的生产者可以更好地发挥主动性,为不同顾客提供定制化的服务。例如,开展依赖于包含大量活跃客户和潜在客户信息的数据库的个性化短信息服务活动,以及利用无线服务提供商提供的人口统计信息和基于移动用户当前位置的信息,商家可以通过具有个性化的短信息服务活动进行更有针对性的广告宣传,从而满足客户的需求。(六)移动电子商务易于推广使用。移动通信所具有的灵活、便捷的特点,决定了移动电子商务更适合大众化的个人消费领域,比如:自动支付系统,包括自动售货机、停车场计时器等;半自动支付系统,包括商店的收银柜机、出租车计费器等;日常费用收缴系统,包括水、电、煤气等费用的收缴等;移动互联网接入支付系统,包括登录商家的WAP站点购物等。(七)移动电子商务领域更易于技术创新。移动电子商务领域因涉及IT、无线通讯、无线接入、软件等技术,并且商务方式更具多元化、复杂化,因而在此领域内很容易产生新的技术。随着我国3G网络的的兴起与应用,这些新兴技术将转化成更好的产品或服务。所以移动电子商务领域将是下一个技术创新的高产地。1.3课题任务本课题的目的是开发手机端的条码扫描系统,实现提货、发货、到货和签收等业务阶段都是能用手机扫描条形码货单号,然后通过移动网络提交信息到公司的服务器端,方便快递公司查询和统计货物的流通状况,实现货物流通数据的信息化。本系统系统设计包括两大部分Android手机客户端和服务器端。手机客户端实现功能用户登录,手机运单扫码识别,对运单收件、派件、签收等状态进行修改,运单详细信息查询。服务器使用JSP+Servlet+JDBC技术,实现用户登录,运单信息录入,运单信息查询,用户信息管理等功能。本文主要讲解了客户端与服务器端的设计与实现工作,再完成了分析和设计后,进行了编码实现,论文中详细叙述了客户端实现过程和重要的核心代码,完成了系统实现本文基本上完成了课题的主干内容。1.4论文篇章结构本文总分为六章,其中各章主要内容如下所示:第一章是绪论,主要介绍了运单扫描管理系统的研究背景,相关技术移动互联网和移动电子商务在国内外的发展与现状,以及课题任务和论文结构。第二章是开发环境及相关技术,课题所研究内容是基于Android平台下设计与实现的,所以开始讲解了系统的开发环境及相关技术,开发环境包括Android开发环境搭建,服务端开发环境的搭建。所设计到的核心技术包括JAVA语言、Android编程、JSP+Servlet+JDBC技术、SQLServer数据库等。第三章是快递运单扫码管理系统的需求分析,主要介绍了快递运单扫码管理系统的可行性分析、功能需求分析以及系统的非功能性需求分析,在功能需求分析中主要采用了面向对象需求分析方法的用例图和活动图等。第四章是快递运单扫码管理系统的设计,首先介绍了客户端各个功能模块的设计,得出具体各个功能模块的其次。其次介绍了数据的设计,以E-R图的形式详细描述了数据库概念结构设计,得出数据库的表结构实现了数据库的设计。第五章是快递运单扫码管理系统的实现,主要介绍了客户端各个功能模块的实现过程,以后在编码过程中使用的技术和核心代码。论文中以截图展示了客户端系统的具体成果。第六章是总结和展望,对整个课题的开发过程做了一个总结,其中描述了自己在开发过程中的参与的工作和一些收获、看法。1.5本章小结本章是论文的开篇描述,主要从课题背景、课题相关技术发展状况、课题主要任务、论文主要内容、论文篇章结构这几个方面做了介绍,对开发基于Android和C/S快递货单管理系统的可行性进行探讨描述,以及对论文整体结构做了简单部署,接下来将是对快递运单管理系统中涉及到的内容作详细介绍。

2开发环境及相关技术2.1客户端技术简介2.1.1Android平台介绍Android,中文俗称安卓,是一个以Linux为基础的开放源代码移动设备操作系统,主要用于移动设备,由Google成立的OpenHandsetAlliance(OHA,开放手持设备联盟)持续领导与开发中。安卓已发布的最新版本为Android4.4.2—KitKat。Android系统最初由安迪·鲁宾(AndyRubin)等人开发制作,最初开发这个系统的目的是创建一个数码相机的先进操作系统;但是后来发现市场需求不够大,加上智能手机市场快速成长,于是Android被改造为一款面向智能手机的操作系统。于2005年8月被美国科技企业Google收购。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商成立开放手持设备联盟来共同研发改良Android系统,随后,Google以Apache免费开放源代码许可证的授权方式,发布了Android的源代码。让生产商推出搭载Android的智能手机,Android操作系统后来更逐渐拓展到平板电脑及其他领域上。2009年第二季度,根据市场研究公司Canalys的数据显示,Android占据全球智能手机操作系统市场2.8%的份额,这个数字在2010年第四季度的全球份额中增长到了33%,Android操作系统也因此击败了诺基亚的Symbian系统成为了全球第一大智能手机操作系统。2012年5月,根据市场调查公司的数据显示,Android操作系统在全球智能手机操作系统中的份额已经过半,达到了60%,全球有一半的智能手机使用Android操作系统。2010年5月的数据显示,Android操作系统在2010年第一季度的销量超过了对手iOS平台,成为美国最大的智能手机操作系统。根据本土市场研究公司ComScore的数据显示,2009年11月时,Android在美国的智能手机操作系统市场的占有率为5.2%,在2010年2月时,这个数字变成了9.0%,而在2010年第三季度末时,Android已经占据了美国市场的21.4%的份额[。截止至2011年6月,Google表示,每日通过Google服务器激活的Android设备达到了55万部[],并且以每周4.4%的速度增长。2011年8月1日,Canalys的数据显示,Android已占据美国48%的智能手机市场份额。2011年10月13日,Google表示,全球市场上有1.9亿部Android设备通过Google认证,而在2011年11月16日,全球市场上已有2亿部Android设备通过Google认证。但是,搭载Android操作系统的平板电脑在所有Android设备中占的比例却只有1.8%的份额,只有380万Android蜂巢平板被卖出,远远低于苹果公司的iPad的销量。2012年6月,Google在2012GoogleI/O大会上表示全球市场上有4亿部Android设备被启动,每日启动约一百万部。另一方面Android系统的平板电脑的市占率为45.8%,相较之下iOS的市占率为52.8%。2013年5月,Android在中国的占有率有71.5%,超过其主要竞争对手苹果公司约50%。世界占有率亦有近70%。]而2013年装载Android系统的平板电脑市占率达61.9%,超过iOS的36%。2.1.2Android系统架构Android的系统架构和其操作系统一样,采用了分层的架构。从架构图看,Android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和Linux内核层。应用程序Android会同一系列核心应用程序包一起发布,该应用程序包包括客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。应用程序框架开发人员也可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性)。同样,该应用程序重用机制也使用户可以方便的替换程序组件。隐藏在每个应用后面的是一系列的服务和系统,其中包括;丰富而又可扩展的视图(Views),可以用来构建应用程序,它包括列表(Lists),网格(Grids),文本框(Textboxes),按钮(Buttons),甚至可嵌入的web浏览器。内容提供器(ContentProviders)使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据资源管理器(ResourceManager)提供非代码资源的访问,如本地字符串,图形,和布局文件(Layoutfiles)。通知管理器(NotificationManager)使得应用程序可以在状态栏中显示自定义的提示信息。活动管理器(ActivityManager)用来管理应用程序生命周期并提供常用的导航回退功能。系统运行库Android包含一些C/C++库,这些库能被Android系统中不同的组件使用。它们通过Android应用程序框架为开发者提供服务。以下是一些核心库:系统C库-一个从BSD继承来的标准C系统函数库Libc),它是专门为基于Embeddedlinux的设备定制的。媒体库-基于PacketVideoOpenCORE;该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。编码格式包括MPEG4,H.264,MP3,AAC,AMR,JPG,PNG。SurfaceManager-对显示子系统的管理,并且为多个应用程序提供了2D和3D图层的无缝融合。LibWebCore-一个最新的web浏览器引擎用,支持Android浏览器和一个可嵌入的web视图。2.1.3Android平台优势1.开放性在优势方面,Android平台首先就是其开发性,开发的平台允许任何移动终端厂商加入到Android联盟中来。显著的开放性可以使其拥有更多的开发者,随着用户和应用的日益丰富,一个崭新的平台也将很快走向成熟。开发性对于Android的发展而言,有利于积累人气,这里的人气包括消费者和厂商,而对于消费者来讲,最大的受益正是丰富的软件资源。开放的平台也会带来更大竞争,如此一来,消费者将可以用更低的价位购得心仪的手机。2.不受束缚在过去很长的一段时间,特别是在欧美地区,手机应用往往受到运营商制约,使用什么功能接入什么网络,几乎都受到运营商的控制。自从2007年iPhone上市后,用户可以更加方便地连接网络,运营商的制约减少。随着EDGE、HSDPA这些2G至3G移动网络的逐步过渡和提升,手机随意接入网络已不是运营商口中的笑谈。3.丰富的硬件这一点还是与Android平台的开放性相关,由于Android的开放性,众多的厂商会推出千奇百怪,功能特色各具的多种产品。功能上的差异和特色,却不会影响到数据同步、甚至软件的兼容,如同从诺基亚Symbian风格手机一下改用苹果iPhone,同时还可将Symbian中优秀的软件带到iPhone上使用、联系人等资料更是可以方便地转移。4.方便开发Android平台提供给第三方开发商一个十分宽泛、自由的环境,不会受到各种条条框框的阻扰,可想而知,会有多少新颖别致的软件会诞生。但也有其两面性,血腥、暴力、情色方面的程序和游戏如何控制正是留给Android难题之一。5.Google应用在互联网的Google已经走过10年度历史,从搜索巨人到全面的互联网渗透,Google服务如地图、邮件、搜索等已经成为连接用户和互联网的重要纽带,而Android平台手机将无缝结合这些优秀的Google服务。2.2系统服务端相关技术简介本课题中的服务器端采用JSP+Servlet技术进行架构进行系统开发,采用MVC设计模式进行系统设计。JSP全名为JavaServerPages,其根本是一个简化的Servlet设计,他实现了Html语法中的java扩张(以<%,%>形式)。JSP与Servlet一样,是在服务器端执行的。通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户端。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。通常JSP页面很少进行数据处理,只是用来实现网页的静态化页面,只是用来提取数据,不会进行业务处理。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。JSP(JavaServerPages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。Servlet是使用JavaServletAPI编写的、适用于B/S模式的、运行在服务器端的JAVA累。Servlet对于Web服务器就好像Applet对于Web浏览器一样,如他们都有生命周期,生命周期都有所在的容器管理。所不同的是,Servlet运行在Web服务器中,二Applet在浏览器中执行。Servlet与JSP是密不可分的。一方面,Servlet是JSP的基础,从JSP角度看,Servlet实际上是JSP被解释执行时的中间过程,JSP实际是为了让Servlet开发相对容易而采用的脚本语言形式。学好Servlet对JSP会有更加深刻的理解。另一方面,在实际开发中,往往是将JSP和Servlet两种技术结合使用,JSP主要用来表现页面,而Servlet主要用来响应用户的请求,完成请求的逻辑处理。Servlet有以下主要优点:可移植性。Servlet皆是利用Java语言来开发的,因此,延续Java在跨平台上的表现,不论Server的操作系统是Windows、Solaris、Linux、HP-UX、FreeBSD、CompaqTru64、AIX等等,都能够将我们所写好的Servlet程序放在这些操作系统上执行。强大的功能。Servlet能够完全发挥JavaAPI的威力,包括网络和URL存取、多线程(Multi-Thread)、影像处理、RMI(RemoteMethodInvocation)、分布式服务器组件(EnterpriseJavaBean)、对象序列化(ObjectSerialization)等。若想写个网络目录查询程序,则可利用JNDIAPI;想连接数据库,则可利用JDBC,有这些强大功能的API做后盾,相信Servlet更能够发挥其优势。性能优良。Servlet在加载执行之后,其对象实体(instance)通常会一直停留在Server的内存中,若有请求(request)发生时,服务器再调用Servlet来服务,假若收到相同服务的请求时,Servlet会利用不同的线程来处理。安全性。Servlet也有类型检查(TypeChecking)的特性,并且利用Java的垃圾收集(GarbageCollection)与没有指针的设计,使得Servlet避免内存管理的问题。由于在Java的异常处理(Exception-Handling)机制下,Servlet能够安全地处理各种错误,不会因为发生程序上逻辑错误而导致整体服务器系统的毁灭。2.3本课题涉及的数据库介绍本课题研究研究内容涉及到数据存储工具服务端为SQLServer数据库。SQLServer是一个关系数据库管理系统。它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个OS/2版本。在WindowsNT推出后,Microsoft与Sybase在SQLServer的开发上就分道扬镳了,Microsoft将SQLServer移植到WindowsNT系统上,专注于开发推广SQLServer的WindowsNT版本。Sybase则较专注于SQLServer在UNⅨ操作系统上的应用。SQLServer2000是Microsoft公司推出的SQLServer数据库管理系统,该版本继承了SQLServer7.0版本的优点,同时又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行MicrosoftWindows98的膝上型电脑到运行MicrosoftWindows2000的大型多处理器的服务器等多种平台使用。2.4本章小结本章主要介绍了课题中涉及到的开发技术,着重介绍了Android开发平台。同时介绍服务器端所使用的JSP和Servlet技术。交代完项目所使用的技术背景,下章将对系统进行需求分析。

3系统的需求分析3.1系统的可行性分析在当前快递物流行业迅速发展的同时,物流企业既面临激烈地竞争,又要面对车、货安全、运期延误、空载率高、服务投诉等等物流企业最为头疼的问题。竞争的加剧也要求企业能够更快速地响应市场需求,缩短产品运输周期,使物流系统与市场需求结构相匹配。解决这些难题的唯一出路就是实现物流系统的信息化,移动化,使物流企业的管理人员可以及时快速地了解和掌控物流的全过程和每一个细节,信息化系统自动地帮助管理人员处理物流面对的流程和问题。运用信息化手段提高运输质量和运输效率,提高客户服务能力和企业管理能力,从而提高物流企业的核心竞争力。3.2系统功能描述3.2.1系统功能1、手机客户端功能(1)客户端系统登录。业务员通过用户名和密码登陆手机客户端,可选择是否自动登录,选择后下次登录客户端时自动登陆进入主界面(2)运单状态管理使用手机摄像头对运单条形码扫描或者手动输入获取运单号,发送至服务器并对运单状态修改。运单查询使用手机摄像头对运单条形码扫描或者手动输入获取运单号,通过服务器查询运单信息。(4)个人信息业务员个人信息查看与修改(5)系统设置注销账户2、服务端功能(1)系统登录登录进入系统管理界面运单管理管理运单录入,运单查询,运单信息修改取派件签收录入,签收查询扫描管理收件扫描,发件扫描,到件扫描,派件扫描基本资料网点信息,客户信息,员工信息,个人资料3.2.2系统架构1.系统物理架构手机客户端通过移动互联网访问系统服务器,将客户端信息提交给服务器后台,对数据库的操作也通过服务器后台实现。图3-1后台系统物理构架3.3基于用例图的用户需求分析快递货单管理系统面向的用户是快递公司,涉及到的角色分为业务管理员和系统管理员业务管理员业务管理员即快递公司的业务员,业务员将手机端管理系统安装到手机上,即可登录进入对运单信息进行管理,提件、发件、到件、派件、签收,也可以对个人信息进行修改。同时,业务员也可以登录Web端管理系统进行业务管理。用例图如图3-3和图3-4所示。图3-2手机客户端业务员用例图图3-3web端业务员用例图2、系统管理员角色。该角色是服务端的管理员,在Web端登陆,管理企业员工的基本信息以及本地信息数据库的管理。用户的用例图如下图3-5所示。图3-4web端系统管理员用例图3.4业务流程分析本系统主要是基于移动互联网的应用,企业员工只要通过Android客户端就能完成大部分业务操作,企业管理员主要是通过服务端进行系统设置、员工信息管理、业务信息查询工作,具体的业务流程如下。1、企业业务员。用户在得到系统管理员分配的账号后可以登录系统,业务员所能做的操作为个人信息管理、系统设置、业务管理等,具体的业务流程如下图3-6所示。图3-5企业业务员手机端流程图图3-6企业业务员web端流程图2、系统管理员用户。系统管理员通过登录服务器后台管理系统,系统管理员能够对企业网点信息、员工信息进行管理。具体的业务流程如下图3-8所示。图3-7企业系统管理员流程图3.6本章小结本章从系统功能、系统架构、用例图和流程图等几个方面做了分析,得出整个系统大体构思,为下一步系统的设计做好准备。

4快递运单扫描管理系统的概要设计系统概要设计是开发过程中一个重要的阶段,根据前面的需求分析得出系统的整个框架设计,然后拆分为对各个功能模块的设计,基于上文得出具体的数据表设计。4.1系统总体设计服务器系统整体功能模块图如下图4-1所示图4-1后台系统功能模块4.2客户端系统设计客户端整体功能模块如图4-2所示图4-2手机端系统功能模块4.3系统数据库设计4.3.1基于E-R图的数据库设计概念设计的目标是产生反应企业组织信息需求的数据库概念结构,即设计出独立与计算机硬件和DBMS(数据库管理系统)的概念模式。E-R模型是主要设计工具。本系统除了Android客户端和中间移动网络,还要有强大的数据库做支持。建立系统运行的数据库是快递运单扫码管理系统的一个重要部分,本系统Android客户端采用SQLite数据库,服务端采用SQLServer数据库,并提供了客户端数据库和服务端数据库的同步功能,提高了程序的运行效率。数据库模型设计得到的是实体联系模型(E-R模型),根据系统功能分析,本系统实体主要有以下4个,运单,企业员工,快递网点、客户。(1)实体和属性定义运单表(运单ID,出发网点,目的网点ID,支付人,负责人ID,订单时间,订单状态ID,备注,发件客户ID,收件客户ID,货物名,货物数量,货物重量,接单时间,截止时间)运单ID即运单号,运单表包含运单等所有信息,网点ID连接网点列表,保存网点信息。负责人ID连接员工表,记录操纵云淡的业务员。状态ID连接运单状态表,记录运单状态。企业员工表(员工ID,用户名,姓名,密码,性别,电话,权限级别)企业员工表包含企业中所有员工的信息,员工用用户名和密码登陆,根据权限级别区分普通用户和系统管理员。快递网点表(网点ID,网点名字,负责人,电话,地址,邮箱)快递网点列表存储快递公司在全功各地的网点信息。客户表(客户ID,客户单位名,客户姓名,电话,地址,录入时间)客户表包括所有收件人和发件人的信息。各个实体属性图如图所示图4-3运单实体属性图4-4企业员工实体属性图4-5网点实体属性图4-6客户实体属性(2)实体联系E-R图也称实体-联系图(EntityRelationshipDiagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。是表示概念模型的一种方式,用矩形表示实体型,矩形框内写明实体名;用椭圆表示实体的属性,并用无向边将其与相应的实体型连接起来;用菱形表示实体型之间的联系,在菱形框内写明联系名,并用无向边分别与有关实体型连接起来,同时在无向边旁标上联系的类型(1:1,1:n或m:n)。在系统中各个实体有着密不可分的关系,分析得出整个系统的E-R图,如下图4-7所示图4-7系统整体E-R图4.3.2数据库表设计数据库逻辑结构设计的目的是把概念设计阶段设计好的全局E-R模式转换成与选用的具体机器上的DBMS所支持的数据模型相符合的逻辑结构(包括数据库模式和外模式)。数据库的物理设计是对于给定的数据模型选取一个最适合应用应用环境的物理结构的过程。数据库的实现变现为在数据库中的数据表,本应用的涉及到的表如下所示:员工信息表表名UserInfo字段名字段类型特别属性备注UserIDintPK(10000)员工信息表主键,自增长字段UserNamevarchar(50)unique员工用户名UserRNamevarchar(50)notnull员工真实姓名UserPasswordvarchar(50)notnull密码UserSexvarchar(50)notnull性别UserPhonevarchar(50)联系电话Roleint用户权限级别图4-8企业员工信息表网点信息表表名BranchInfo字段名字段类型特别属性备注BranchIDintPK(100)网点信息表主键,自增长BranchNamevarchar(50)notnull网点名称BranchLinkManvarchar(50)notnull网点联系人BranchPhonevarchar(50)notnull网点联系电话BranchAddressvarchar(50)notnull详细地址BranchEmailvarchar(50)notnull电子邮箱图4-9企业网点表客户信息表表名CustomerInfo字段名字段类型特别属性备注CustomerIDintPK(1000)客户信息主键,自增长字段CustomerNamevarchar(50)notnull客户名称(客户公司名称)CustomerLinkManvarchar(50)notnull客户联系人名称CustomerSexvarchar(50)客户联系人性别CustomerPhonevarchar(50)notnull客户联系电话CustomerEmailVarchar(50)客户电子邮件CustomerRegDatavarchar(50)notnull客户注册时间图4-10客户信息表运单信息表表名BillInfo字段名字段类型特别属性备注BillIDintPK(100000)运单号,信息表主键SendIDintFK发货客户编号(外键)ReceiveIDintFK收货客户编号(外键)PayerNamevarchar(50)notnull付款人姓名UserIDintFK操作人编号(外键)BillDatavarchar(50)notnull货票制单时间BillStateintFK货票状态编号BillMemovarchar(500)货票备注说明SendBranchIDintFK发货网点编号ReceiveBranchIDintFK收货网点编号CargoNamevarchar(50)notnull货物名称CargoWeightvarchar(50)notnull货物重量(吨)CargoStartDatavarchar(50)notnull货物入库时间CargoEndDatavarchar(50)货物出库时间CargoNumintnotnull货物数量图4-11运单信息表4.4本章小结本章根据前文所进行的需求分析,从系统功能模块设计和数据库设计这两个方面详细介绍了快递运单扫码管理系统的设计过程,在功能模块设计中介绍了系统的总体功能模块和系统主界面的设计。由于文章篇幅限制,在数据库设计中只是对数据库的概念结构设计和数据库实现的表结构设计做了介绍,将整个系统设计好后接下来的步骤将是编码实现过程。

5快递运单扫码管理系统详细设计与实现5.1开发环境搭建系统使用MyEclipse2013集成框架进行开发,环境如下图5-1所示:图5-1系统开发环境具体的开发环境搭建包含以下几个步骤:安装JDK,配置“JAVA_HOME”、“PATH”,“CLASSPATH”三个环境变量的值,确保系统能够使用java开发环境。下载AndroidSDK和用于MyEclipse中的插件ADT,并通过插件的安装方法安装ADT插件。模拟器创建,系统使用的模拟器创建为:AVD-4.0.3下载并安装Tomcatv7.0在开发和调试过程中所用到的模拟器如下图5-1-2所示:图5-2模拟器5.2客户端登录功能模块实现5.2.1登录模块功能界面当用户在使用客户端软件的时候,首先需要通过登录界面进入到系统主界面,在用户输入用户名和密码通过网络连接进行服务器查询验证,验证通过后登录成功。登录过程中含有loading效果(多线程处理,时事返回数据),在无网络连接下或者用户输入的用户名或密码错误后使用Toast短暂提示“网络连接错误·····”和“用户名或者密码错误”。初始用户名为用户手机号码,初始登录密码由系统管理员给定,进入系统后用户可以对登录账号信息更改,下次登录使用新的账号和密码即可。登录成功后系统默认会记住用户名,系统会将用户名和密码保存到SharedPreferences,以便下次不再输入。登录界面如下图5-3所示:图5-3客户端欢迎界面图5-4客户端欢迎界面5.2.2登录模块设计说明登录模块由SplashActivity和LoginActivity两个Activity组成,在AndroidManifest.xml中注册。同时,要在AndroidManifest.xml中设置打开网络连接。登录时程序首先启动SplashActivity,对程序进行启动检查,包括版本验证、版本更新等,页面布局由activity_splash.xml控制。检查完毕后进入登陆界面,启动LoginActivity,在页面中输入用户名和密码,点击登录开始进入登录验证。当用户名或密码为空时,Toast弹出“用户名或密码为空”的提示;网络错误时会Toast弹出“网络错误”;验证错误弹出“用户名或密码错误”页面不跳转;验证成功跳转到MainActivity。页面布局由activity_login.xml控制。主要代码如下:SplashActivity.javaprotectedvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); //设置不显示标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE); //设置全屏显示 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.activity_splash); tv_version=(TextView)findViewById(R.id.tv_splash_version);//获取界面上的TextView tv_version.setText("version:"+getVersion());//给tv_version设置内容 ll=(LinearLayout)findViewById(R.id.ll_splash_main);//获取界面上的LinearLayout AlphaAnimationalphaAnimation=newAlphaAnimation(0.0f,1.0f);//创建一个渐变动画对象,从完全透明到完全不透明alphaAnimation.setDuration(2000);//设置持续时间ll.startAnimation(alphaAnimation);//为ll绑定动画效果Threadt=newThread(){ @Override publicvoidrun(){ //TODOAuto-generatedmethodstub try{ Thread.sleep(3000);//线程暂停时间,单位毫秒 mhandler.sendEmptyMessage(0); }catch(InterruptedExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } super.run(); } };t.start(); } Handlermhandler=newHandler(){ @Override publicvoidhandleMessage(Messagemsg) { switch(msg.what){ case0: Intentintent=newIntent(SplashActivity.this,LoginActivity.class); startActivity(intent); finish(); break; default: break; } } }; //获取版本号的方法 privateStringgetVersion(){try{PackageManagerpackageManager=getPackageManager();//得到PackageManager对象,用于获取应用程序信息PackageInfopackageInfo=packageManager.getPackageInfo(getPackageName(),0);//得到版本信息returnpackageInfo.versionName;}catch(NameNotFoundExceptione){e.printStackTrace();return"版本号未知";}}LoginActivity.javapublicvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); //去除标题

温馨提示

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

最新文档

评论

0/150

提交评论