1、 毕 业 设 计中文题目 旅游记忆 APP 的设计与实现英文题目 The Design And Implementation of Tourism Memory APP系 别: 计算机科学与技术系专业年级: 软件工程(金融服务) 姓 名:学 号:指导教师:职 称: 年 月 摘要I摘 要随着 4G 甚至正在试运营 5G 网络在中国的发展、移动运营商对移动数据业务的升级、智能手机等移动终端无线上网用户的稳步增长,移动互联业务进入了爆发期,人们越来越习惯于用手机等无线移动端来实施查询、交流、分享等。在手机等移动端联网后,数据在网上快速传递,可以实现数据实时共享,提高了信息交流的效率和水平。对于现在国
2、内的生活现状而言,出行旅游逐渐成为人们面对繁重的生活工作压力的一种解压方式,人们通过出行旅游来调节生活工作状态的方法越来越盛行,因为这是一种很健康很向上的方式。而就具体现状分析,出行旅游的青年占据了很大一部分比重,特别是大学生群体,他们青春向上,爱运动,假期时间充足,并且相当大一部分人喜爱旅游。基本没有人排斥旅游出行,所以他们基本成为了国内旅游的主力军,然而这一部分群体也同时非常喜欢现代移动互联网所带来的丰富生活,他们喜欢在各种平台上与好友分享交流自己时时刻刻的想法。本次毕业设计的目的是建立一个青年群体喜欢的基于 Android 的旅游分享交流平台,以便大家分享外出旅游所带来的乐趣。本文从分析
3、当今青年群体热爱旅游本质出发,分析青年群体的爱好和习惯,以便更好的完善系统的实用性与便捷性。首先本篇文系统性地研究与介绍了旅游记忆 APP 的背景和意义,综合分析了当今旅游记忆系统的特点以及其所具有的各种共性,从中分析出设计本次毕业设计的思路和实现方法。然后介绍了实现本次系统开发的工具、环境以及所用的平台要求。所设计的旅游记忆 APP 包括后台的管理系统和前台的Android 客户端,地区大类管理、景点分类管理、地区小类管理功能模块等通过后台系统统一管理,用户注册登录、个人管理、旅游社区、记忆碎片、管理员登录等模块通过前台 Android 客户端实现。此篇论文详细的论述了本次毕业设计的需求分析
4、、系统分析、概要设计、详细设计以及测试与调试的整个开发设计过程。关键词: 旅游记忆 、Android 、Web 、数据库ABSTRACTIIABSTRACTWith the development of 4G and even the trial operation of 5G network in China, mobile operators to upgrade the mobile data services, smart phones and other mobile terminal wireless Internet users steady growth.Mobile Inte
5、rnet business into the outbreak period, more and more people are accustomed to using mobile phones and other wireless mobile terminal to implement the query, exchange, share, etc After the mobile terminal network, such as mobile phone, the data can be quickly transmitted on the Internet, which can r
6、ealize the data real-time sharing, and improve the efficiency and level of the information exchange.For now the situation of life and travel gradually become people in the face of a heavy work and life pressure decompression, people through travel to regulate living and working condition of the meth
7、od is more and more popular, because this is a very healthy is to on the way. And on the specific situation analysis, tourism travel youth occupy a large proportion, especially college students, their youth to, love sports, vacation time is enough, and a large part of the people love to travel. No r
8、ejection to travel, so they become the main force of domestic tourism. The purpose of this graduation project is to establish a group of young people like the Android based tourism sharing platform, so that we can share the fun of travel.This article from the analysis of todays youth groups love the
9、 nature of tourism, analysis of youth groups of hobbies and habits, in order to better improve the systems practicality and convenience. First this thesis system of research and introduces the background and significance of tourism memory app, a comprehensive analysis of the characteristics of today
10、s tourism memory system and its various commonalities. From analysis of design of the graduation design mentality and the realization method. Then introduces the realization of the system development tools, environment and platform requirements. Designed by the tourism memory APP including the backg
11、round of the management system and the front desk of the Android client, regional management, scenic spot classification management, regional small class management function module through the unified management of the background system, user login, personal management, tourism community, memory deb
12、ris, the administrator login module through the front desk Android client.This thesis discusses the requirements analysis, system analysis, outline design, detailed design, testing and debugging of the entire development and design process of this graduation project.Key Words: Tourism memory、Android
13、 、Web 、Data Base目录III目 录第 1 章 绪论 11.1 研究背景和意义 .11.2 研究内容 .11.3 主要研究工作和设计思路 .2第 2 章 系统的关键技术 42.1 开发工具与环境介绍 .42.1.1 Eclipse42.1.2 MyEclipse42.1.3 Tomcat.42.1.4 MySql 数据库 .42.2 开发技术介绍 .42.2.1 JDBC.42.2.2 Jquery.42.2.3 Ajax.42.2.4 Android4第 3 章 系统分析和设计 53.1 系统需求分析 .53.1.1 用户需求分析 .53.1.2 概要设计需求 .53.1.3 数
14、据信息需求 .63.2 设计原则 .73.2.1 安全性 .73.2.2 经济实用性 .73.2.3 可维护性 .73.2.4 开发技术可行性 .73.3 系统整体技术路线 .83.4 系统工作流程设计 .83.5 数据库设计 .93.5.1 数据库设计的原则 103.5.2 数据库实体体现 103.6 系统开发和应用的环境 123.6.1 服务器端和客户端 12第 4 章 系统的可视化实现 .134.1 用户注册、登录、注销、退出 134.1.1 用户注册 134.1.2 用户登录 134.2 个人管理的设计 144.3 记忆碎片功能 164.4 旅游记忆 174.5 管理员登录 18第 5
15、 章 系统运行及测试分析 .195.1 测试目的 19目录IV5.2 测试内容 195.3 测试结果 195.4 结果分析 19第 6 章 结论 .20致 谢 .21参考文献 22第 1 章 绪论1第 1 章 绪论1.1 研究背景和意义随着我国经济的增长和人们消费观念的改变,越来越多的人更希望可以在繁忙之余提高自己的生活质量,越来越多的人会有各种出行旅游计划,旅游业也必将迎来另一个发展高峰期。随着无线网络在中国的开展、移动运营商对移动数据业务的中级、智能手机终端以及无线上网用户的稳步增长,手机业务进入了爆发期,越来越多的人开始使用手机进行旅游信息查询。在手机联网后,数据在网上传递,可以实现数据
16、共享,避免重复劳动,从而提高了管理效率和水平。随着人们对手机的依赖,各种手机 APP也层出不穷,本次课题的研究致力于帮助越来越多喜欢旅游、善于利用手机的人们更加方便的出行旅游以及和自己好友的互动交流。对于我国现有状况分析,出行旅游的青年占了很大一部分比重,大学生群体假期时间充足,成为了国内旅游的主力军,而这一部分群体更加喜欢现代移动互联网所带来的丰富生活,他们喜欢在各种平台上分享自己的旅游心得与体会,本次毕业设计的目的是建立一个青年群体喜欢的基于 Android 的旅游分享交流平台,以便大家分享外出旅游时所带来的乐趣。1.2 研究内容本系统的开发设计是通过 Android 平台设计并且开发出的
17、一个旅游记忆系统,目的是为方便大家出行和交流信息。因此,本次毕业设计采取的是首先分析的是旅游记忆的各个功能,结合本次毕业设计的设计想法写出相关的需求分析;然后综合运用在学校期间所学习并且熟悉的相关专业知识,选择熟悉并且可以完成任务要求的开发工具进行本毕业设计的设计和开发;在设计开发中以功能设计和需求分析作为基础,写出系统开发的各项完整计划、实现程序各阶段流程及相关问题的实现和解决方法,在开发设计与开发过程中,保存好相关的设计修改文挡和内容笔记,为后面的论文的书写做材料准备。本篇论文详细的介绍了旅游记忆 APP 的开发设计过程与系统包含的各项功能的详第 1 章 绪论2细解释。此篇论文详细的论述了
18、本次毕业设计的需求分析、系统分析、概要设计、详细设计以及测试与调试的整个开发设计过程。首先本篇文系统性地研究与介绍了旅游记忆 APP 的背景和意义,综合分析了当今旅游记忆系统的特点以及其所具有的各种共性,从中分析出设计本次毕业设计的思路和实现方法。然后介绍了实现本次系统开发的工具、环境以及所用的平台要求。所设计的旅游记忆 APP 包括后台的管理系统和前台的 Android 客户端,地区大类管理、景点分类管理、地区小类管理功能模块等通过后台系统统一管理,用户注册登录、个人管理、旅游社区、记忆碎片、管理员登录等模块通过前台 Android 客户端实现。1.3 主要研究工作和设计思路旅游记忆 APP
19、 的设计思路是让人们更加便捷的交流旅游中所得与自己内心的感受,所以系统内部包括用户注册功能、个人管理功能、记忆碎片功能、旅游社区功能和后台的站长管理功能。用户可以通过这些功能来实现对旅游中拍摄的照片的交流,互相分享此时的心情和感想,查看自己的位置并且搜索位置计划出行线路,地图可以时时展现并导航出行。具体设计思路如图 1.1 设计思路图所示。第 1 章 绪论3旅游记忆 APP用户个人注册登录功能个人管理功能旅游社区功能旅游记忆功能分类查询分享内容站长管理用户注册用户登录好友管理关注着管理个人信息维护 用户交互发布旅游资源当地游搜索验证用户信息展现自己的旅游记忆查看好友分享的旅游记忆评论好友旅游记
20、忆分享好友分享的旅游记忆图 1.1 设计思路图系统经过最初设想设计计划包含以下五个主要功能:(1) 用户登陆注册功能用户登录:系统将通过对比后台数据库验证用户名是否存在,验证用户输入的密码是否正确。用户注册:系统将通过检索后台数据库验证用户是否存在,通过定有程序验证用户信息是否合法。第一次使用系统的用户,将会自动跳转到用户注册界面。(2) 个人管理功能分为好友管理和用户个人信息管理功能。用户可以在其中自由删除好友和用户的关注者;在此功能中,用户好友之间也可以分享自己喜爱的旅游景点,对好友进行添加和关注;还可以对浏览自身个人信息的好友进行权限的更改;个人信息维护功能中用户可以自行对自己的个人信息
21、进行增加、删除、修改,也可以对密码进行修改。(3) 记忆碎片功能用户登录成功以后,进入 APP 界面,可以点击记忆碎片功能,在此功能中用户可以分类查询自己与好友分享的旅游中记录的内容,可以选择通过列表的方式查看,在足迹列表中,用户可以进入查看对于这个足迹的描述、文字和图片等信息,如果足迹中包含有视频,用户也可以点击视频播放;用户还可以通过排行榜,根据时间和地点等信息过滤,来查询自己感兴趣的好友分享的景点信息;也可以评论好友的旅游记忆碎片。(4) 旅游社区功能在用户登录成功以后,用户可以点击进入旅游社区中,在此功能里面,用户可以完成以下活动:发布旅游信息资源,用户可以增加旅游的记忆和对旅游记忆进
22、行管理,可以添加旅游的足迹信息,旅游足迹信息包括用户的位置信息、对足迹的文字描述、图片和视频资料;使用 APP 中的当地游查询用户当前位置附近的旅游景点信息,使用目的城市信息和旅游产品类别信息进行分类查询,旅游产品类别包括景点的门票、所适合的户外活动以及其他信息。第 1 章 绪论4(5) 管理员登录功能管理员可以在后台系统进行登录,系统将通过检索数据库验证用户是否存在,对比输入信息是否正确,输入正确验证码后管理员方可进入后台管理界面。第 2 章 系统的关键技术5第 2 章 系统的关键技术2.1 开发工具与环境介绍2.1.1 EclipseEclipse 是一个开放源代码 的、基于 Java 的
23、可扩展开发平台 8。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Kit,JDK) 。Eclipse 是著名的跨平台的自由集成开发环境(IDE) 。最初主要用来 Java 语言开发,通过安装不同的插件 Eclipse 可以支持不同的计算机语言,比如 C+和 Python 等开发工具。Eclipse 的本身只是一个框架平台,但是众多插件的支持使得 Eclipse 拥有其他功能相对固定的 IDE 软件很难具有的灵活性。许多软件开发商以 Eclipse 为框架开发自己
24、的 IDE。Eclipse 最初由 OTI 和 IBM 两家公司的 IDE 产品开发组创建,起始于 1999 年 4 月。IBM 提供了最初的 Eclipse 代码基础,包括 Platform、JDT 和 PDE。Eclipse 项目 IBM发起,围绕着 Eclipse 项目已经发展成为了一个庞大的 Eclipse 联盟,有 150 多家软件公司参与到 Eclipse 项目中,其中包括 Borland、Rational Software、 Red Hat 及 Sybase等。Eclipse 是一个开放源码项目,它其实是 Visual Age for Java 的替代品,其界面跟先前的 Visu
25、al Age for Java 差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。随后还有包括 Oracle 在内的许多大公司也纷纷加入了该项目,Eclipse 的目标是成为可进行任何语言开发的 IDE 集成者,使用者只需下载各种语言的插件即可。2.1.2 MyEclipse MyEclipse 企业级工作平台(MyEclipseEnterprise Workbench ,简称 MyEclipse)是对 EclipseIDE 的扩展,利用它我们可以在数据库和 JavaEE 的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰
26、富的 JavaEE 集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持第 2 章 系统的关键技术6HTML,Struts,JSP ,CSS ,Javascript ,Spring,SQL,Hibernate。MyEclipse 是一个十分优秀的用于开发 Java, J2EE 的 Eclipse 插件集合,MyEclipse 的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse 可以支持 Java Servlet,AJAX ,JSP ,JSF,Struts,Spring,Hibernate ,EJB3,JDBC 数据库链接工具等多项功能。可以说 My
27、Eclipse 是几乎囊括了目前所有主流开源产品的专属 eclipse 开发工具。2.1.3 Tomcat Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。 Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好 Apache 服务器,可利用它响应对 HTML 页面的访问请求。实际上 Tomcat 部分是
28、 Apache 服务器的扩展,但它是独立运行的,所以当你运行Tomcat 时,它实际上作为一个与 Apache 独立的进程单独运行的。 当配置正确时,Apache 为 HTML 页面服务,而 Tomcat 实际上运行 JSP 页面和Servlet。另外,Tomcat 和 IIS、Apache 等 Web 服务器一样,具有处理 HTML 页面的功能,另外它还是一个 Servlet 和 JSP 容器,独立的 Servlet 容器是 Tomcat 的默认模式。不过,Tomcat 处理静态 HTML 的能力不如 Apache 服务器。2.1.4 MySQL 数据库MySQL 是一个多用户、多线程的 S
29、QL 数据库,是一个客户机/服务器结构的应用,它由一个服务器守护程序 mysqld 和很多不同的客户程序和库组成。SQL (Structured Query Language 结构化查询语言)是目前使用最广的并且是标准的数据库语言。SQL 语言使得存取或更新信息变得十分容易,你可以直接使用 SQL 从网站上查询信息。MySQL 的快速和灵活性足以满足一个网站的信息管理工作。数据库与用户端之间的接口程序可以使用 CGI 进行通信。新网 ChinaDNS 使用的是 PHP,使用 PHP和 MySQL 这两样东西加在一起,对于开发数据驱动的网站这项工作而言是最佳组合。第 2 章 系统的关键技术7PH
30、P 是一种用于服务器端执行程序解释的脚本语言。如果你接触过 ASP 的话,那么您对于在 HTML 页面中嵌入代码应该是比较熟悉了。PHP 代码在服务器一端被解释、执行并转变成普通的 HTML 页面内容,送给浏览器一端。这种模式使得我们可以用它来完成相当复杂的功能。2.2 开发技术介绍2.2.1 JDBCJDBC(Java Data Base Connectivity,Java 数据库连接)是一种用于执行 SQL 语句的 Java API,可以为多种关系数据库提供统一访问,它由一组用 Java 语言编写的类和接口组成。JDBC 为工具/数据库开发人员提供了一个标准的 API,据此可以构建更高级的
31、工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JDBC 也是个商标名。 有了 JDBC,向各种关系数据发送 SQL 语句就是一件很容易的事。程序员只需用JDBC API 写一个程序就够了,它可向相应数据库发送 SQL 调用。同时,将 Java 语言和JDBC 结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是 Java 语言“编写一次,处处运行”的优势。 Java 数据库连接体系结构是用于 Java 应用程序连接数据库的标准方法。JDBC 对Java 程序员而言是 API,对实现与数据库连接的服务提供商而言是
32、接口模型。作为API,JDBC 为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC 使用已有的 SQL 标准并支持与其它数据库连接标准,如 ODBC 之间的桥接。JDBC 实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。 2.2.2 JqueryJquery 是继 prototype 之后又一个优秀的 Javascrpt 框架,由美国人 John Resig 创建。它是轻量级的 js 库(压缩后只有 21k) ,它兼容 CSS3,还兼容各种浏览器(IE 6.0+, FF 1.5+,Safari 2.0+,Opera 9
33、.0+) 。Jquery 使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供 Ajax 交互。Jquery第 2 章 系统的关键技术8还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。Jquery 能够使用户的 HTML 页保持代码和 HTML 内容分离,也就是说,不用再在 html 里面插入一堆 js 来调用命令了,只需定义 id 即可。2.2.3 AjaxAjax 指异步 JavaScript 及 XML(Asynchronous JavaScript And XML) ,是一种用于创建更好更
34、快以及交互性更强的 Web 应用程序的技术。Ajax 的核心是 JavaScript 对象 XmlHttpRequest。Ajax 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求)。简而言之,XmlHttpRequest 使您可以使用 JavaScript 向服务器提出请求并处理响应,而不阻塞用户。通过 Ajax,您的 JavaScript 可使用 JavaScript 的 XMLHttpRequest 对象来直接与服务器进行通信。通过这个对象,您的 JavaScript 可在不重载页面的情况与 Web 服务器交换数据,这样就可使网页从服务器请求少量的信息。 Web 应用程序较
35、桌面应用程序有诸多优势;它们能够涉及广大的用户,它们更易安装及维护,也更易开发。2.2.4 Android本次毕业设计面向使用对象为 Android 客户端,我们需要了解 Android 技术的基本状况来更好的完成 APP 的实现。Android 是一种基于 Linux 的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由 Google 公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致” 。Android 操作系统最初由 Andy Rubin 开发,主要支持手机。2005 年 8 月由 Google 收购注资。2007 年 11 月
36、,Google 与 84 家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良 Android 系统。随后 Google 以 Apache 开源许可证的授权方式,发布了 Android 的源代码。第一部 Android 智能手机发布于 2008 年 10 月。Android 逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。2011 年第一季度,Android 在全球的市场份额首次超过塞班系统,跃居全球第一。 2013 年的第四季度,Android 平台手机的全球市场份额已经达到 78.1%。 2013 年 09 月 24 日谷歌开发的操作系统 Android 在迎来了
37、5 岁生日,全世界采用这款系统的设备数量已经第 2 章 系统的关键技术9达到 10 亿台。第 3 章 系统分析和设计10第 3 章 系统分析和设计3.1 系统需求分析3.1.1 用户需求分析根据用户的行为需求来说,旅游记忆 APP 主要的用户群是青年驴友群体,青年驴友们喜欢在手机等移动端分享自己的旅游经历和旅游心得,热衷于互相交流各种旅游信息和旅游过程中内心的想法。现在国内市场上存在很多分享交流平台,但是暂时还没有一款 APP 是专门针对青年驴友群体的,APP 设计成型后有很大的市场环境。用户通过注册或者登录进入系统,然后就可以进行一系列的操作,通过简单的添加好友就可与好友进行交流分享。3.1
38、.2 概要设计需求根据概要设计的需求分析可以简单的设计出本系统的各个环节 E-R 图,具体表现如下: (1) 用户和账户:用户包含用户名和密码,用户可以通过注册获得帐号,用户注册时可以自由发挥自己意志输入用户名和密码,用户注册成功后获取系统自动分配的唯一帐号,帐号与用户名绑定,用户和账户的 E-R 关系如图 3.1 用户和帐号 E-R 图所示:用户 帐号用户名 密码注册1 N图 3.1 用户和帐号 E-R 图(2) 用户和足迹:用户输入正确的用户名和密码进入系统发表足迹,足迹可以包含图片与视频,足迹会自动记录一个足迹时间,这个时间即为足迹上传时刻,用户和足迹 E-R 关系如图 3.2 用户和足
39、迹 E-R 图所示:第 3 章 系统分析和设计11用户 足迹用户名 密码发表1 N图片/视频图 3.2 用户和足迹 E-R 图(3) 评论和足迹:用户的好友可以评论用户发表的足迹,评论会自动记录并显示好友姓名及好友头像信息,用户可以通过此来分辨评论来自哪位好友,并同好友进行交流,评论和足迹 E-R 关系如图 3.3 评论和足迹 E-R 图所示:足迹 评论图片/视频包含1 N图 3.3 评论和足迹 E-R 图(4) 帐号与好友:用户通过用户名与密码登录帐号可以对好友进行管理,用户可管理好友的内容及评论人,账号与好友 E-R 关系如图 3.4 帐号和好友 E-R 图所示:帐号 好友用户名 密码管理
40、1 N图 3.4 帐号和好友 E-R 图3.1.3 数据信息需求兼容多种格式的高效的数据库,对地理对象的图形和属性数据进行管理;同时,兼容其他多种数据库格式的数据,用户可自行处理,无需进行转换,只要简单地读入就可以了。根据用户行为分析,旅游记忆 APP 主要包含 3 大类数据信息。第一类是属性数据,将用户信息和好友信息输入到用户信息系统中,并进行有效组织,主要涉及到用户的各种信息,例如帐号密码、用户名、用户好友的帐号用户名及用户对好友的备注管理等。第二类是多媒体数据,主要包括文本文件、图片、视频等文件类型。第足迹时间好友姓名 好友头像足迹时间内容 评论人第 3 章 系统分析和设计12三类是位置
41、时间数据数据,主要包括用户位置、用户发表足迹的时间位置等信息。3.2 设计原则在进行系统设计的同时,我们不仅要考虑系统的功能性需求,还要考虑非功能性需求,例如系统的安全性、可操作性、易维护性、可扩展性等。下面我们从系统的安全性、经济实用性、可维护性、开发技术可行性方面具体分析本系统的设计:3.2.1 安全性根据用户的需求,系统具有不同的安全级别及操作权限,系统通过充分发挥系统、数据库、应用软件三层安全保证措施,保证数据的安全性。系统内部重要业务操作均留有痕迹。为了维护系统安全,系统采取以下方法:(1) 代码编写时使用线程安全机制,如代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行
42、这段代码。线程安全问题都是由全局变量及静态变量引起的。(2) 数据库加密技术。本系统在对数据做入库处理时使用加密算法,对用户的账号、密码等字段做机密处理,保障用户的数据安全。3.2.2 经济实用性产品为记忆分享交流平台,用户数量决定经济价值,设计出实用便捷的作品会吸引更多的用户使用,达到一定的使用基数才会获得更大的经济利益。而从成本上考虑,本系统由个人使用通用技术开发完成,只有人工的时间成本。目前国内并没有转本针对旅游的记录分享实时交流平台,所以有市场的存在。3.2.3 可维护性系统可维护性包括代码可理解,可测试,可修改和系统的可移植。如果一个系统的可维护性从最初没有得到很好的重视,当系统面临
43、重大的设计改动时,会发现几乎无法入手,最简单的方法是彻底推翻重写,于是造成大量的资源浪费。本次系统的完成过程对系统的可维护性着重注意,所有代码都做到可理解、可测试、可修改和可移植,系统本身可维护。第 3 章 系统分析和设计133.2.4 开发技术可行性系统使用 Eclipse 进行编写与调试,MySQL 进行数据存储调用,使用 java 语言、android 框架完成。技术方面可行,存在一些难点,但是经过学习和查阅资料可以在技术上完成系统的编码等工作。3.3 系统整体技术路线通过需求分析对系统的整体技术路线进行分析,系统经过需求分析形成系统概要设计,通过概要设计针对关键问题讨论解决的方法进行方
44、案设计,进而对系统进行功能模块及其实现方法和所涉及的技术等的详细设计,系统设计完成后进行测试方案的设计针对系统进行测试工作,通过详细设计完成对系统的编码,之后对系统进行单元集成测试工作,单元集成测试修改工作完成后编写系统论文,之后即完成整个系统。具体系统整体技术路线如图 3.5 系统设计与实现的技术路线图所示:图 3.5 系统设计与实现的技术路线图3.4 系统工作流程设计用户输入正确的用户名和密码进入程序,程序启动成功进入主界面,主界面有添加好友、景点管理、图片上传、评论功能,用户通过选择是否添加好友、是否进行景点管理、是否上传图片、是否评论进行选择性操作,选择确定添加好友进入添加好友界面,完
45、成输入结束流程,选择确定管理景点进入景点管理界面进行景点管理,完成景点管理结束流程,选择确认上传图片进入图片上传界面进行图片上传工作并且可以选择评论该图片,选择评论该图片进入评论图片界面,选择确认评论进入好友评论界面进行对好友的足迹及图片的评论,完成评论结束流程。第 3 章 系统分析和设计14具体系统工作流程设计如图 3.6 系统工作流程图所示:图 3.6 系统工作流程图3.5 数据库设计数据库的设计,就是把现实世界中一定范围内存在的应用处理的数据,抽象成一个数据库的具体结构过程。本系统设计的核心就是关系数据库的设计,根据现有的基础数据,对该系统数据管理进行了具体分析,最后采用文件结合关键数据
46、库管理数据,数据的关系如图 3.7 数据关系图所示。这种数据管理方案的具体管理方式是空间数据通过文件管理,空间属性数据利用数据库管理。第 3 章 系统分析和设计15图 3.7 数据关系图3.5.1 数据库设计的原则本系统采用的数据库建立工具为 SQL Server 2005 数据库管理系统。将数据库的服务器安装在了本机位置,数据库的名称为 1。在设计数据库结构时,通过所学数据库知识,此系统采用的是关系型数据模型,关系数据库系统中最主要的数据结构就是关系。关系数据模型中数据结构的核心规则是:所有数据都以二维表的形式呈现给用户。3.5.2 数据库实体体现本系统关系数据库主要设计了 9 张表,分别是
47、 admins 表、地区类型表、好友表、景点表、jdpurl 表、景点类型表、pj 表、sharepurl 表、users 表。各张表的设计遵循第三范式的规则设计的,完全排除数据冗余,数据关系非常明了。具体表现如下:(1) admins 表:记录 admins 信息,具体信息如表 3.1 管理员表所示:表 3.1 管理员表(admins)序号 列名 数据类型 长度 是否必填1 id Int 11 Not null2 Username Varchar 30 Null3 Password varchar 30 Null(2) 地区类型表:记录地区类型信息,具体信息如表 3.2 地区类型表所示:表
48、3.2 地区类型表(dqtype)序号 列名 数据类型 长度 是否必填1 Id Int 11 Not null2 Pid Int 11 Null3 names varchar 50 Null第 3 章 系统分析和设计16(3) 好友表:记录好友信息,具体信息如表 3.3 好友表(friends)所示:表 3.3 好友表(friends)序号 列名 数据类型 长度 是否必填1 Id Int 10 Not null2 Myid Int 10 Null3 fid Int 10 Null4 fname varchar 50 Null(4) 景点表:记录景点信息,具体信息如表 3.4 景点表(jd)所示
49、:表 3.4 景点表(jd)序号 列名 数据类型 长度 是否必填1 Id Int 11 Not null2 Jdname varchar 50 Null3 Myid Int 11 Null4 Lat varchar 50 Not null5 Lng varchar 50 Null6 Lx Int 11 Null7 Dqp Int 11 Null8 dq Int 11 Null(5) jdpurl 表:记录 jdpurl 信息,具体信息如表 3.5 jdpurl 表所示:表 3.5 jdpurl 表(jd)序号 列名 数据类型 长度 是否必填1 Id Int 11 Not null2 Myid Int 11 null3 pname varchar 50 Null4 Purl varchar 500 null5 jdname varchar 50 Null(6) 景点类型表:记录经典类型信息,具体信息如表 3.6 景点类型表所示:表 3.6 景点类型表(jdtype)第 3 章 系统分析和设计17序号 列名 数据类型 长度 是否必填1 Id Int 11 Not null2 names varchar 50 Null(7) pj 表:记录 pj 信息,具体信息如表 3.7 pj 表所示:表 3.7 pj 表(pj)序号 列名 数据类型 长度 是否必填1 Id