基于安卓的购物推荐系统-已改.docx

上传人:温桑 文档编号:49454605 上传时间:2022-10-08 格式:DOCX 页数:45 大小:2.29MB
返回 下载 相关 举报
基于安卓的购物推荐系统-已改.docx_第1页
第1页 / 共45页
基于安卓的购物推荐系统-已改.docx_第2页
第2页 / 共45页
点击查看更多>>
资源描述

《基于安卓的购物推荐系统-已改.docx》由会员分享,可在线阅读,更多相关《基于安卓的购物推荐系统-已改.docx(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、扬州大学本科毕业设计 本科生毕业设计 毕业设计题目 基于安卓的购物推荐系统 学生姓名/学号 所 在 学 院 信息工程学院(人工智能学院) 专业及班级 计科1702 指 导 教 师 完 成 日 期 2021年5月18日 摘 要如今,随着互联网和电子商务的快速发展,电子购物凭借其快速便捷的特点,成为现代人们最重要的购物方式,市场中产品也变得越来越丰富。然而,产品数据的急剧膨胀造成的“信息过载”使得消费者很容易会迷失在大量的产品信息中。因此推荐系统的诞生为消费者带来极大的帮助,个性化推荐系统根据用户偏好,利用大数据分析,为消费者推送其最近经常关注或者可能会喜欢的产品,提升用户的使用体验。本文设计并实

2、现了基于安卓的购物推荐系统,重点是开发了一个可以根据用户偏好推荐商品的网络购物软件,推荐模块使用了以用户为基础的协同过滤算法。利用Java语言在Android Studio以及Eclipse这两个平台上开展研发,数据库选择了MySQL,数据通过HTTP网络传输协议来进行实时数据通信,并采用JSON封装技术进行数据交互。本论文首先简要阐述了推荐系统的有关背景以及目前国际发展的现实状况,之后对推荐系统中使用的有关技术进行了详细介绍,另外还详尽的分析了推荐系统的需要和设计,在最后部分展现了推荐系统达到的效果以及重要代码,归纳了本篇文章做的重点工作。关键词:安卓系统;推荐系统;协同过滤算法;电子商务A

3、bstractNowadays, with the rapid development of the Internet and e-commerce, electronic shopping has become the most important shopping method for modern people due to its fast and convenient characteristics, and the products in the market have become more and more abundant. However, the information

4、overload caused by the rapid expansion of product data makes it easy for consumers to get lost in a large amount of product information. Therefore, the birth of the recommendation system has brought great help to consumers. According to user preferences, the personalized recommendation system uses b

5、ig data analysis to push the products that consumers have been paying attention to or may like recently, and improve the user experience.This article designs and implements an Android-based shopping recommendation system. The focus is to develop an online shopping software that can recommend product

6、s according to user preferences. The recommendation module uses a user-based collaborative filtering algorithm. The Java language is used to develop research and development on the Android Studio and Eclipse platforms. MySQL is selected for the database. The data is communicated in real time through

7、 the HTTP network transmission protocol, and JSON packaging technology is used for data interaction.This paper first briefly describes the relevant background of the recommender system and the current international development reality, and then gives a detailed introduction to the relevant technolog

8、ies used in the recommender system. In addition, it also analyzes the needs and design of the recommender system in detail, and presents it in the last part. The results achieved by the recommendation system and important codes are summarized, and the key tasks of this article are summarized.Keyword

9、s: Android system; Recommendation system; Collaborative filtering algorithm; E-commerce目 录摘 要IABSTRACTII目 录III第1章 引 言11.1 课题的背景与意义11.2 国内外研究现状11.2.1 国外研究现状11.2.2 国内研究现状21.2.3 推荐系统在电子商务中的应用31.3 本文的主要内容41.4 本文的结构安排4第2章 相关技术介绍52.1 Android系统开发介绍52.1.1 Android系统架构52.1.2 Android应用基本组件72.2 网络通信协议82.3 数据的传输

10、与解析82.4 基于用户的协同过滤推荐算法92.4.1 发现兴趣相似用户92.4.2 推荐物品10第3章 系统需求分析123.1功能需求123.2 非功能性需求143.2.1 界面需求143.2.2 安全性143.2.3 可维护性153.2.4 推荐的实时性153.3 可行性分析15第4章 程序的设计与实现164.1 系统设计总体概述164.1.1 系统结构设计164.1.2 服务器设计174.2 功能模块设计174. 2.1 客户端功能设计184. 2. 2 后台系统功能设计194.3 数据库设计194.3.1 数据库E-R图194.3.2 数据库表20第5章 实现效果及关键代码235.1

11、前台客户端实现235.1.1 用户注册235.1.2 用户登录235.1.3 商品列表245.1.4 商品搜索、分类245.1.5 商品详情255.1.6 个人中心265.1.7 我的购物车265.1.8 我的订单275.1.9 个人信息295.1.10 个性化推荐295.2 后台系统实现345.2.1 商品管理模块345.2.2 用户管理模块345.2.3 订单管理模块35第6章 总 结366.1 总结366.2 展望36致 谢37参考文献3844第1章 引 言1.1 课题的背景与意义如今,随着互联网和电子商务的快速发展,电子购物凭借其快速便捷的特点,成为现代人们最重要的购物方式,随着用户群

12、体和数量的不断扩大,网络市场中的产品也变得越来越丰富。在如今的日常生活中,网上购物已经与我们息息相关,各种网上购物软件逐渐地成为了人们购物消费中不可或缺的必需品。然而,随着大量电商平台进入人们的生活,给人们的衣食住行带来便捷的同时,大量产品数据的急剧膨胀,造成了“信息过载”的问题,消费者时常因为面对大量数据而感到难以选择,无法成功找到需要的产品,搜索理想产品变得十分困难,消费者的消费体验变差。所以如何帮助用户和消费者们从纷繁复杂的商品中寻找到用户真正需要的商品,推荐系统的产生和高效利用也变得十分重要。在越来越激烈的角逐情况下,电商平台根据消费者的个人兴趣和消费行为过滤信息,然后将消费者可能喜好

13、的商品推荐给消费者,利用推荐系统相关的技术可以更加高效地服务用户,提高用户体验,避免失去目标人群,同时也可以电商公司的竞争力。在如今这个网络信息量爆炸的互联网时代中,任何用户都无法浏览一个电商网站中所有的内容,甚至能够受到较多关注的只有网站首页中的小部分信息,而其余剩下的大部分信息都只能受到很少部分的人的关注,这必然不可避免地会造成网站中信息资源的浪费。而推荐系统可以更有效地帮助解决这个问题,推荐系统能够帮助不同类型的用户找到他们需要的商品数据信息,而后在推荐模块对用户实现个性化推荐,以满足具有不同需求的用户。1.2 国内外研究现状1.2.1 国外研究现状目前根据用户喜好推荐商品的系统以及协同

14、过滤算法在国外已被普遍利用,尤其在电商模块,都具有十分有前景和广阔的应用市场。依据2007年的调研分析结果得出,大部分的用户都愿意在能够按照喜好推荐商品的电商平台上进行商品的购买,在调研中,在过去半年内购买于1000美元商品的用户中,有多于60%的用户都在使用具有推荐功能的平台购买商品,但是自调研报告中数据得出,还有约40%的用户对能够根据其偏好进行推荐的个性化系统并不看好。个性化推荐系统方面发展良好的国外应用程序包括Altered Vista,Amazon和其他应用程序。以Amazon购书网站作为例子,Amazon虽无线下实体店只在网络出售商品,但由于他高效、经典的推荐功能,十分受人喜爱。它

15、不仅仅会为用户提供高质量、高效率的综合数据库和检索系统外,还会针对每个用户提供个性化推荐服务。Amazon不仅将为用户提供一个完整的高质量、高效率的数据库和查找功能,还具有能够给所有的消费者根据其喜好推荐商品的功能,Amazon不但将其个性化的推荐功能广泛应用于其电子邮件中,也广泛应用于其网页中。例如,它将根据分析结果向软件工程师显示编程元素,并向医生推荐书籍和医学文章。用户可以在“你的推荐”页面浏览推荐表单,并且在这个推荐页面中,用户可以进行很多操作,比如在网页上对被推荐的商品进行评分的操作,也可评价自己已经有过购买消费行为的商品,甚至还能看到此推荐模块向自己推荐这些商品的原因。Amazon

16、根据用户消费行为的特点以及用户已有的购物信息,为每个不同特点的消费者都能够提供合适并且个性化的建议,然后随后消费者的讯息及其针对平台向其推荐商品的意见会被留存,根据对用户不断的进行数据保存和分析,就可以使用户再次购买时能够受到更适合其需求的商品。Amazon的个性化推荐系统大部分用的都是以项目为基本的协同过滤算法,并且随着Amazon的成功,在各大电子商务网站开始流行起基于项目的协同过滤算法。1.2.2 国内研究现状在推荐系统的发展进程来看,国内的研究与国外发展相比起步较晚,研究的内容和应用方面也比较欠缺。首先,由于国内研究推荐系统的内容主要来源于其他国家目前已掌握的分析研究成果,我国对此系统

17、的分析缺少新意。而是因为我国的个性化推荐系统的算法是基于消费者的爱好特点或者购买行为、需求等维度做出高效适合的推荐,从而导致大部分推荐系统的个性化程度无法达到理想结果。三是国内推荐系统的推荐功能灵活度不高,在国内大多数个性化推荐系统中,获取用户特征、兴趣等信息的方式往往是通过用户初始的注册信息,而且大部分都有明确的规定。然而,很少有研究是基于用户在使用过程中的兴趣特征,缺乏这种动态过程的研究往往使得系统很难捕捉到用户兴趣的动态变化,会使得推荐功能灵活度降低,系统也无法实时充分了解用户兴趣。当然,虽然国内的理论研究内容更多的是来源于国外的研究理论和研究成果,但是随着我国互联网和国家经济的快速发展

18、,我国在电子商务领域已进入蓬勃发展的状态个性胡推荐领域也得到很好的发展。目前国内推荐系统部分做得比较好的有豆瓣、淘宝等网站。接下来我们重点对豆瓣网的个性化推荐系统进行详细的介绍。豆瓣网是我国最先利用个性化推荐系统的网站之一,豆瓣网重点是利用协同过滤算法给用户提供其有可能喜欢或有兴趣的讯息。豆瓣网的推荐算法是依据用户的网页浏览时的行为活动来解析其的偏好及爱好,进而达到推荐的效果,用户行为包括了如推荐、收藏、喜欢、关注等用户操作。因此可见,豆瓣的推荐更加关注用户的兴趣,而且豆瓣此推荐方法在用户和用户行为反馈更多的情况下,推荐的结果会更加符合用户期待;并且若用户使用频率越高,针对此用户的个性化推荐结

19、果会变得更加准确。1.2.3 推荐系统在电子商务中的应用对于一个具有推荐功能的电子商务网站来说,它应当具有评价功能,并且可以将评价结果展现给所有用户,他还应当能够智能的给消费者推送其有可能会喜欢的商品讯息,然而想要实现推荐功能则要采集消费者的个人讯息以及消费情况,对消费者的历史活动数据进行研究分析,最后才可以用推荐算法分析出用户感兴趣的商品并进行推荐。在现实的消费者体验中,在用户登入这些购物网站时,网站就能够智慧的为消费者提供个性化推荐服务,并根据用户的数据实时改变推荐内容。创建用户体验优秀的推荐系统就要持续优化的改良。这个过程不但要提升算法的计算效率,还要进一步的通过对数据的分析研究来探寻其

20、中的规律。分析得出,个性化推荐系统对于购物网站的效益增加有十分积极的效果。大多数购物网站在使用个性化推荐系统之后,商品的销售量都有一定程度的提高。由此可得,利用个性化推荐系统为用户提供服务,能够为购物网站提升商品销售量及业绩。在目前数量庞大的使用推荐系统的电子商务平台中,Amazon的个性化推荐系统应该是最优秀、用户体验最好的,虽然我国的大部分电商平台也同样采用了推荐算法,但是从效果上说,对比Amazon的算法,还是比较落后。这也能够得出现阶段我国的推荐算法还未达到先进水平,依然存在着各种各样的漏洞,还要求对个性化推荐系统在现实的使用中开展进一步的探究和分析。1.3 本文的主要内容本篇文章开发

21、的系统主要使用了基于用户的协同过滤推荐算法,除去可以达到电子商务平台最基本的购物模块外,还使用该推荐算法,在猜你喜欢模块对用户进行偏好推荐,达到了基于安卓系统的电子商务个性化推荐的目的。该文章最开始在引言中交代了选取此论题的大环境以及个性化推荐系统目前国内外的研究成果以及电商平台中使用效果的对比。紧接着对推荐系统中使用的有关技术进行讲解,对于Android系统开发、使用的HTTP网络通信协议、数据的传输与解析都进行详细的说明,并具体描述了本系统所选择的基于用户的协同过滤推荐算法的实现方式。之后又对该推荐系统开展了功能及非功能需求以及可行性等方面的分析研究,功能需求即为对于该推荐系统需要达到的功

22、能开展简要阐述,非功能性需求主要从界面、安全可靠性、可维护性、时效性进行了多方面需求分析。程序设计部分首先介绍了本系统的结构设计和服务器设计,之后对推荐系统的功能性模块进行研究,详细阐明推荐系统的Android客户端和web服务端的功能并画出系统流程图,然后在数据库部分画出此系统的数据库E-R表,列出此系统所使用的数据表。本文最后通过截图展示所有功能的实现效果及关键代码,并对本论文进行总结。1.4 本文的结构安排本文共分为六个章节,文章组织结构如下:第1章为引言,重点介绍了论题的背景以及个性化推荐系统目前国际上的分析结果和现状对比、在电子商务中使用的推荐算法。第2章为有关技术说明,分别对And

23、roid系统开发、网络通信协议、数据的传输与解析和此系统使用的基于用户的协同过滤推荐算法进行了详细说明。第3章为系统需求分析,对此系统在功能需求、非功能性需求和可行性三方面进行分析。第4章主要讲解了该系统开发的历程以及设计思路,详细介绍了该系统开发的整体设计、功能设计以及数据库设计。第5章展现了该系统运行的效果图且附上了重要的代码。第6章为结论,对以上工作进行总结。第2章 相关技术介绍2.1 Android系统开发介绍Android公司由Andy Rubin等人于2003年10月创立,之后于2005年8月被Google收购,Andy Rubin在Google公司依然担任对Android系统的开

24、发。通过数年研究后,Android系统的首个版本于2008年正式发布,从那以后,Android系统迈入了一个高速发展的时代。在之后的研发历程中,Android系统依然保持着其开放性。无论是个人还是公司都可以依照自身的意愿、想法和需求定制自己想要的Android系统,并且是不需要收费的。因此,国际上各大科技公司都推出了一系列基于Android系统的智能手机,例如华为、三星、小米都获得了非常好的业绩。至今为止,搭载Android系统的手机已经占据全世界智能手机总数的80%,占领了绝对优势地位。Android系统截至今日已经经历了许多版本,通过数年的优化打磨,Google公司已为Android系统搭

25、建了完善健全的科技生态系统。2.1.1 Android系统架构Android系统采取分层架构,从低至高主要分成了Linux 内核层、系统运行库层、应用框架层和应用层这四个结构。Android系统的架构如图2-1。图2-1 Android系统架构Linux内核层指的是Android系统基于Linux2.6内核,这一层主要是为Android设备的多种硬件提供底层的驱动服务,例如显示驱动、音频驱动、蓝牙驱动、电源管理等。系统运行库层重点包含系统库及Android运行库。系统库身为应用程序的支持库,是Linux内核层和应用程序框架层两者间的关键桥梁,给Android系统提供重要的运行支撑。Androi

26、d运行库包含一系列的核心类库,该核心库实现了Java编程语言核心库的大部分功能。每个应用在Android运行时,库中都会拥有一个独立的Dalvik虚拟机,能够运行在独立的进程之中。应用框架层:对于该层而言,主要用于提供API函数,便于安卓系统的创建。如资源管理器,活动管理器等核心应用程序。通常而言,通过应用框架层,研发者能够创建新的应用程序,满足需求。应用层:通过应用层能够实现安卓系统程序的安装,如短信,通讯录,相机以及浏览器等程序的安装。对于程序研发人员而言,其所研发程序应用一般也安装至应用层。另外,所有的应用程序都是使用Java语言编写的。2.1.2 Android应用基本组件应用程序组件

27、是一个Android应用程序的基本构建块。对于安卓系统而言,其基本组件构成主要包括4大组件:一是服务组件,即Service;二是内容提供器组件,即Content Provider;三是广播接收器组件,即Broadcast Receiver;四是活动组件,即Activity。下面针对这四大组件做出进一步详细介绍。(1)Activity在很多Android类的应用程序中,Activity的主要交互功能就是和使用客户界面的人进行相互交互,对于活动组件而言,在客户使用的所有组件中,其吸引力最大,关注度较高,作为一个应用组件,能够涉及较多用户界面,满足用户交互需求。一般而言,在安卓系统中,包含有多个活动

28、。主界面,即应用程序被打开时,首次映入眼帘的界面。在主界面中,将活动组件简称为主活动。同时活动组件可以实现层叠,重复启动使用。当重新启动活动组件时,原有的活动组件自然地被覆盖到系统的所有Activity之上,原来的Activity也都保留到了系统的回路堆栈中。(2)Service对于服务组件而言,主要用于解决安卓系统中不被经常使用的应用程序,这类应用程序与使用用户交互少,在线时间短等。所以对于服务组件的运用而言,其独立性较强,与其他界面的运行无关联,因此即使转换至后台时,程序依然运行。另外,对于服务组件而言,其不依赖于其他界面运行,但并不意味着其单独运行,主要依靠于服务组件自身的应用程序进程。

29、一旦系统关掉该应用程序进程后,服务组件也随之关闭。(3)Broadcast Receiver对于广播接收器组件而言,其在安卓系统中扮演着广播的接收与发送角色,当对广播进行发送时,需要借助intent等设备才能够实现,而且接受广播主要使用的是广播接收器组件实现,因此在安卓系统应用中,通过广播接收器组件直接进行无线电和广播的接收时,就需要首先对自己真正想要直接接受到的无线电以及相关信号进行确认,便于下一步的注册登录,一般而言,对于无线电与信号的注册,主要包括两种方式:一种是静态注册方法,另外一种是动态注册方法。因此当对广播进行接收时,广播接收组件并会对信号进行接收,进行下一步信号的处理。另外,由于

30、广播接收器组件不存在操作界面,因此,其对广播的接收与发送需借助服务组件以及活动组件,满足需求。(4)Content Provider对于内容提供器组件而言,其本质上作为一种机制,主要是安卓系统满足客户需求,解决客户问题的一种功能组件,实现程序间数据分享的一种形式。2.2 网络通信协议对于安卓系统而言,服务器以及客户端之间需建立良好的网络通信功能,实现程序的运用,该功能的实现较多借助网络技术。一般而言,网络通信技术主要包括4类:一类是Socket网络通信技术,二类是WebView网络通信技术,三是Url通信技术,四是HTTP通信技术。因 HTTP协议主要应用于有对象,无状态以及无连接之间的网络通

31、信,高效便捷,应用较为广泛。因此,在本文中,主要使用 HTTP网络通信技术应用于该系统的研发。借助HTTP协议实现安卓操作系统的网络通信功能,其应用原理主要可分为以下四步骤:第一,通过安卓客户端,实现HTTP的请求信号的发送;第二,当服务器接收信号后,对信号进行下一步处理;第三,信号处理完成后,将信号数据发送至安卓客户端:第四,在安卓客户端接收到数据后,对其进行下一步的处理,实现网络通信。2.3 基于用户的协同过滤推荐算法基于用户的协同过滤推荐算法,具体推荐步骤可以概括如下:(1)相似用户的确定:为满足目标用户需求,首先需对相似用户进行确定,并建立科学的相似度度量标准,寻找一批与目标用户相似的

32、用户。(2)推荐物品的确定:在对目标用户的相似用户进行确定后,基于相似用户的喜好与选择,对目标用户的需求产品进行推荐,提高目标用户对推荐产品的满意度与接受度。2.3.1 发现兴趣相似用户在本文中,基于目标用户的兴趣喜好,对相似用户的确定,主要借助余弦相似度法。在本文所研发的推荐系统中,可将用户对物品的评价以评分形式展现,同时将物品评分以二维几何空间向量的形式表现。举例说明,当用户未购买过某产品,其评分标准记为0,此时,对相似用户与目标用户之间的相似性,可通过余弦夹角进行度量。若相似用户与目标用户分别用u,v所代替,N代表着二元反馈信息的物品集合。N(u),N(v)分别代表着用户U以及用户v存在

33、的正面反馈信息的物品集合, W代表用户u以及用户v的相似度。因此,借助余弦相似度法所用公式具体如下所示。 公式(2-1)假设目前共有4个用户(A、B、C、D)、5个物品(a、b、c、d、e),下表记录了用户对物品的兴趣反馈信息。表2-1 用户-物品表用户物品Aa b dBa cCb eDc d e首先建立“物品-用户”的倒排表,如表2-2所示。表2-2 物品-用户表物品用户aA BbA CcB DdeA DC D然后在喜欢他的两两用户之间的相同物品加1。如图2-2所示:ABCDA0111B1001C1001D1110图2-2 用户相似度矩阵1根据余弦相似度,对上图进行进一步计算,结果如图2-3

34、所示。ABCDA0B0C00D0图2-3 用户相似度矩阵22.3.2 推荐物品通过余弦相似度公式,对目标用户与相似用户之间的相似度进行计算,当对产品进行推荐时,其推荐度的计算公式如下所示: 公式(2-2)S(u,K)代表着最近邻集合,主要是指与用户u喜好最相似的 k个用户,N(i)代表着对物品i存在过正反馈的用户集,wuv代表着用户u以及用户v间的相似度,rvi代表用户v对物品i的满意度。在上述公式中,rvi数值选择为1,对用户A进行计算,选择推荐物品为物品c以及物品D,通过计算,推荐度均为0.742,因此,能够同时推荐物品c以及物品D第3章 系统需求分析3.1功能需求本系统作为基于安卓的购物

35、推荐应用系统,主要包括两大部分:第一是Web服务器端,另外一种是安卓客户端。因此,本文购物推荐系统应当具有以下部分功能:1.Android客户端功能(1)能够储存并记录用户信息:对于安卓客户端而言,其系统登录需同时具备账号与密码,因此,系统应满足新用户注册操作以及登录操作。(2)实现商品浏览搜索功能:在安卓客户端中,用户在完成登录操作后,能够对商品进行搜索,浏览,便于信息的采集和物品的推荐。 (3)建立个人信息模块:在安卓客户端个人信息模块中,主要涵盖我的订单、购物车个人信息、我的推荐等个人模块。我的购物车中存放从商品详情页添加至购物车的商品,并能够完成商品购买流程;商品购买流程完成后,能够进

36、行订单查询,便于物流的追踪;个人信息可由用户自行修改。(4)商品的推荐功能:在该模块中,系统能够根据用户的浏览记录以及购买订单等信息,对用户进行产品推荐。Android客户端流程图如图3-1所示。图3-1 客户端流程图2.Web端功能管理员登录后方可对系统数据实施统计,记录,管理等。具体流程如下图所示。图3-2 管理模块流程图3.2 非功能性需求3.2.1 界面需求对于操作界面而言,其作为影响用户直接观感体验的重要组成部分,对整个系统的推广应用有着不可忽视的意义。所以在本操作界面设计中,应保证其画面流畅,整洁美观,操作简单,布局科学等。3.2.2 安全性该系统设置了登陆验证,只有输入的登录信息

37、与数据库中保存的用户信息完全一致时才能进入系统获取更高权限,且保证其单人单次登录。即同样的用户ID重复登录时提醒前者被挤下线,需尽快更改密码。音乐数据的安全保证不容小觑,因此只对管理员一人开放管理权限,同时监控系统用户的登录信息。这样可以极大提高系统的安全性。3.2.3 可维护性一般而言,系统在运行过程中容易因各种bug出现系统卡顿,闪退等问题,对于本系统而言,系统设计简单,结构灵活,能够及时对问题进行修复,解决系统运行问题,提高系统运行的效率和质量,提高用户体验度,满足用户需求。3.2.4 推荐的实时性在用户提交订单后立即生成订单,重新收集用户集合,计算推荐列表,实时更改推荐的商品,满足实时

38、推荐的功能。3.3 可行性分析1. 技术可行性:在本文系统研发设计中,所使用技术以及理论已相对成熟,国内外相关研究较多,具有较强的技术可行性。在本系统开发中,技术工具主要借助MySQL,Eclipse等,能够熟练掌握。因此,对于基于安卓的购物推荐系统在技术方面是可执行的。2. 经济可行性:该系统以现存的操作系统、开发平台为基础,加上网络上可开源下载的jar包、数据库管理等软件,可在不耗费任何成本的情况下完成系统搭建,因此从经济方面考虑,不需要经费等财务支出。第4章 程序的设计与实现4.1 系统设计总体概述4.1.1 系统结构设计在本文系统结构设计中,主要包括两大架构:第一是软件架构,第二是硬件

39、架构。对于软件架构而言,主要基于平台软硬件进行设计。对于硬件架构而言,基于平台研究角度出发,主要从三个层面上进行硬件架构的分析:第一是服务层,第二是现场层,第三是网络层。图4-1 系统结构设计对该系统的客户端进行剖析,发现其软件结构按照性质和功能可以分成三层,首先是数据层,其次是业务层,具体来说是业务逻辑层,最后是表现层,具体来说是Android客户端与用户发生交互并回应用户请求的应用程序层。最后提及的应用程序层其具体执行是在移动终端上进行,其上必须装置有Android操作系统。而业务层中的服务器,是由多个不同的servlet构成,并且其主要提供对象是Tomcat服务器,需要住的是,这些ser

40、vlet一方面与针对具体的问题进行操作与数据库不停地持续进行着动态交互,而另一方面也不停进行数据处理,接收Android客户端返回,与之产生交互,这两方面同时进行从而实现完整的数据传输功能。与此同时,数据层为了能够实现数据操作,会提供若干用于数据访问的端口,其具体实现路径是对现场各种器件设备所生成的数据逐一进行处理和检索,并将检索完成后的数据存储在对应位置的外部数据库中,之后服务器会根据指令进行这些数据的调用和处理,处理完毕后的数据将会被改变存储地方,此次将会被存储于本地数据库。而访问端口的作用在于,能够让服务器在其中所要进行的数据调动和数据处理更为高效化和精确化。由于功能需求的不同,此系统中

41、所涉及到的数据层不具备复杂特性,同时业务层表现上也较为简单,并不具有过度复杂功能和程序设计,基于此,将只对表现层展开详细阐述,也就是Android客户端层。该层需要实现的主要有两方面功能,一个是用户交互,通俗来说就是页面展示,具体实现路径是通过用XML编写的电子文件。主要提供了一种交互的方式让用户可以在此提出请求而与此同时程序也能够实现请求接收,交互的另一表现在于用户可以在页面展示中直接得到查询结果,从而让交互更直观和快捷,用户也据此可以得到更好的体验。在处理较为复杂交易过程中,其中所涉及的算法或算法过程,也就是通常所说的业务逻辑,其具体实现路径是通过Activity完成。Activity可以

42、通过网络仓库这种更为简单稳固性的工具来完成与服务器的连接,此时Android与服务器间实现数据交互。4.1.2 服务器设计这是因为原始平台未保留可直接在移动设备上使用的接口,以通过原始平台检索存储在MySQL中的数据。接着利用Servlet完成数据提取以实现数据传输的交互性。servlet的功能实现流程主要如下:首先是Android主机客户端将一个数据包的请求信息发送给主机服务端。服务器在第一次测试接受了从Android这个客户端上用户从界面提出请求,并对用户请求进行接收,在此请求通常是HTTP方式表达,针对这些请求,Tomcat将会给出一个servlet,以便能够快速响应和实现这些请求。一般

43、情况下,Tomcat会提供了几个servlet。在servlet程序接收到请求信息之后,servlet通过Tomcat Web服务器响应网页上的请求,动态生成内容。最后,可以通过在Android客户端中分析网页的URL来获取网页的内容。具体过程图如图4-2所示。图4-2 Servlet结构图4.2 功能模块设计此系统开发分为两部分:Android客户端,该部分主要是面向用户;web服务端,该部分主要是面向管理员。为了能够更为直观的对系统功能进行展示和描述,其功能模块具体详情可见图4-3:图4-3 系统功能模块图4. 2.1 客户端功能设计Android端主要为用户提供网上购物的基本功能,用户模

44、块的各个自功能模块如下:1. 用户信息:新用户需要进行注册,若账号已存在,会注册失败;已注册用户再次登录时需要进行用户名和密码的输入,输入正确则登录成功,若输入错误,会有出现登录失败的提示,此时可点击确定之后再次进行输入。2.商品列表:顾客可以查看所有商品列表及商品详情。3.搜索、分类:为了提供更大的便利性,特别设置摸索查询,并确保一定的关联度和准确性,从而让用户搜索能够更为效率化实现;对商品依据不同的材质或其他特质进行分类,能够查看不同类别的所有物品。4.购物车:为了方便用户购买,实现多商品购买等功能,设置了购物车,用户可以将已经选定的具备购买意向的商品,进行添加操作,使其能够被纳入购物车中

45、,同时也可以对纳入的商品在有需要时继续进行删除操作或购买操作。购买时,需要填写好有效的购买信息,包括收货地址等收货信息,同时还有商品信息如件数等,之后再进行订单提交操作,此时一笔订单才算正式生成。5.订单:在该功能中,所有订单情况,包括订单的当前状态,既往订单详情等等,用户都可以一一查看,同时对于待处理订单,用户也可以在此继续进行处理,如未支付订单,可以选择继续支付也可以选择取消支付等,还可以对已完成收货但未确认的订单进行确认,状态变为交易完成,用户还可以对交易完成的商品进行评价。6.个人信息:在该功能中,用户可以在有需要时对个人信息进行准许范围内的修改操作。7.个性化推荐:在该功能中,由于协

46、同过滤算法的高效能应用,可以随时根据用户浏览或订单或既往消费行为等多方面信息实现针对性和定制化推荐,显示在猜你喜欢页面。4. 2. 2 后台系统功能设计后台系统主要完成管理员对此购物系统的管理,为了实现管理需求,具体功能模块设计方面主要有以下几方面:1.商品管理:此功能可以让管理员实现对商品信息各种管理操作,如查询等。2.用户管理:此功能可以让管理员实现对用户信息的各种管理操作,如删除用户信息等。3.订单管理:此功能可以染管理员实现对用户订单的各种管理操作,如订单删除等。4.3 数据库设计4.3.1 数据库E-R图此系统的数据库E-R图如图4-4所示。图4-4 系统E-R图4.3.2 数据库表

47、1.用户信息表users所谓users,实际上就是用户注册时所填写和提交的及之后在注册过程中生成的各种基本信息,从用户自己亲自设置的账号、密码,到用户提供的电话,再到可能由系统提供的id等。用户信息表具体内容详情见表4-1:表4-1 用户信息表字段名数据类型允许Null值备注idint(11)否用户idloginidvarchar(30)否账号namevarchar(30)否用户名passwordsphoneaddrtextvarchar(11)varchar(255)否否否密码电话地址2.商品信息表dishes所谓dishes主要涉及到与商品相关的所有信息,包括与商品本身有关的信息如商品简介、商品单价等,及与商品卖家相关的信息如店铺id等,商品信息表内容详情见表

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁