整理基于Android平台的学生社交网络系统设计与实现.docx

上传人:b****8 文档编号:9116739 上传时间:2023-05-17 格式:DOCX 页数:36 大小:1.50MB
下载 相关 举报
整理基于Android平台的学生社交网络系统设计与实现.docx_第1页
第1页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第2页
第2页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第3页
第3页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第4页
第4页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第5页
第5页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第6页
第6页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第7页
第7页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第8页
第8页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第9页
第9页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第10页
第10页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第11页
第11页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第12页
第12页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第13页
第13页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第14页
第14页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第15页
第15页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第16页
第16页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第17页
第17页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第18页
第18页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第19页
第19页 / 共36页
整理基于Android平台的学生社交网络系统设计与实现.docx_第20页
第20页 / 共36页
亲,该文档总共36页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

整理基于Android平台的学生社交网络系统设计与实现.docx

《整理基于Android平台的学生社交网络系统设计与实现.docx》由会员分享,可在线阅读,更多相关《整理基于Android平台的学生社交网络系统设计与实现.docx(36页珍藏版)》请在冰点文库上搜索。

整理基于Android平台的学生社交网络系统设计与实现.docx

整理基于Android平台的学生社交网络系统设计与实现

基于Android平台的学生社交网络系统设计与实现

编辑整理:

 

尊敬的读者朋友们:

这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(基于Android平台的学生社交网络系统设计与实现)的内容能够给您的工作和学习带来便利。

同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。

本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为基于Android平台的学生社交网络系统设计与实现的全部内容。

淮南师范学院本科毕业论文(设计)

诚信承诺书

1。

本人郑重承诺:

所呈交的毕业论文(设计),题目《

基于Android平台的学生社交网络系统的设计与实现》是本人在指导教师指导下独立完成的,没有弄虚作假,没有抄袭、剽窃别人的内容;

2.毕业论文(设计)所使用的相关资料、数据、观点等均真实可靠,文中所有引用的他人观点、材料、数据、图表均已注释说明来源;

3。

毕业论文(设计)中无抄袭、剽窃或不正当引用他人学术观点、思想和学术成果,伪造、篡改数据的情况;

4。

本人已被告知并清楚:

学院对毕业论文(设计)中的抄袭、剽窃、弄虚作假等违反学术规范的行为将严肃处理,并可能导致毕业论文(设计)成绩不合格,无法正常毕业、取消学士学位资格或注销并追回已发放的毕业证书、学士学位证书等严重后果;

5.若在省教育厅、学院组织的毕业论文(设计)检查、评比中,被发现有抄袭、剽窃、弄虚作假等违反学术规范的行为,本人愿意接受学院按有关规定给予的处理,并承担相应责任。

学生(签名):

日期:

年月日

 

基于Android平台的学生社交网络系统设计与实现

(淮南师范学院计算机学院)

摘要:

随着移动网络技术的推进,风靡全球的社交网络也开始向移动化和简洁化发展。

该文探讨Android与社交网络系统的结合,采用JSP技术Android技术以及MySQL数据库管理,实现移动客户端对社交网络进行个人信息登录模块、状态发布模块、通讯功能模块、好友管理模块四大功能.系统以用户为中心,以简化、方便用户操作为目标。

它可以拉近人们之间的距离,方便地表达的感情,加强好友之间的交流,及时发布信息,还可以很方便的与附近的人交友,最终帮助个人扩展人脉,丰富自己的社交.本论文的学生社交网络系统采用了Android开源系统技术,利用Java语言和Eclipse编辑工具学生社交系统进行编写。

同时给出了详细的系统设计过程、部分界面图及主要功能运行流程图,本文还对高度过程中遇到的问题和解决方法进行了详细的讨论.

关键词:

Android平台,学生社交,网络系统

ThestudentsocialnetworksystembasedonAndroidplatformdesignandimplementation

Student:

TaoShaoHua(guideteacher:

ChenGuanghong)

(SchoolofcomputerScienceHuainanNormalUniversity)

Abstract:

Alongwiththeadvancementofmobilenetworktechnology,globalsocialnetworkalsobegantomoveandcleandevelopment.Androidandthecombinationofthesocialnetworksystemaredealtwithinthispaper,usingtheJSPtechnology,theAndroidtechnologyandMySQLdatabasemanagement,realizethemobileclientpersonalinformationonsocialnetworkloginmodule,controlmodule,communicationfunctionmodule,friendsbystatefourfunctionmodule。

Systemtotheuserasthecenter,tosimplify,convenientuseroperationasthegoal。

Itcanreducethedistancebetweenpeople,isconvenienttoexpressfeelings,strengthenthecommunicationbetweenfriends,timelyreleaseinformation,alsocaneasilymakefriendswithpeoplearound,finallyhelpindividualstoexpandconnections,enrichtheirownsocial。

StudentsocialnetworksystemofthispaperusedtheAndroidopensourcesystemtechnology,usingtheJavalanguageandEclipseeditortooltowritestudentsocialsystem。

Atthesametimegivesadetailedsystemdesignprocess,partoftheinterfacediagramandmainfunctionoperationflowchart,thearticlealso,andproblemsencounteredintheprocessofhighlymethodisdiscussedindetail。

Keywords:

Androidplatform,thestudentsocial,networksystem

1学生社交网络系统的概述

1。

1项目背景

本项目主要用于帮助解决学生社交的实际问题,属于是学校内的社交平台设计项目,目的在于满足学生的切实需求,为方便学生的社交生活提出的。

在国内外有关于学生社交平台的项目开发和运营已经渐渐规模化,有相对成熟的开发机制。

我们有经常使用的社交软件包括腾讯QQ、微信、陌陌等,但在关于校园内部学生的社交平台还是相对较少,缺乏一些只是对于学生之间各方面信息的沟通交流的软件项目开发。

所以我希望在Android端开发一个学生社交网络系统来推动学生之间的交流。

总的来说是做一个加入聊天社交等多方面功能的安卓平台的学生社交网络系统。

1。

2项目开发目的和意义

SNS,即社交网络服务(SocialNetworkingService),包括了社交软件和社交网站,也指网络中社交现有已普及的社交信息交流载体,如短信message服,

总的来说,我们的项目开发的意义是在于对校园学生的社交平台开发的初次尝试,而且旨在真正的能够帮助同学们,给同学提供一些聊天社交的便利,同时也加强了学生之间的互动交流、沟通与了解。

1.3本文主要工作内容

根据毕业设计的要求,与指导老师深刻讨论之后,我将毕业设计的选题定为基于Android系统的学生社交平台的设计与实现,旨在为同学在生活中带来一些便利,将这个社交平台真正的融入同学们的日常生活之中。

具体来说我要在项目中完成如下几个模块:

1)个人信息登录模块:

为第一次使用本系统的客户提供注册服务,让已经注册的用户通过自己的账号和密码来登陆系统.

2)动态发布模块:

在该模块中可以发布状态、翻阅所有已经发布了的状态,对好友发布了的动态进行点赞评论,并且把你点赞评论的消息发送给对方,给对方反馈信息请。

并且为了要提升人工智能,加入了向下拉即可刷新的功能,用户下拉之后可以刷新好友最新的动态;除此之外,还加入放大图片的功能,将好友动态中的图片点击后即可将图片放大显示。

3)通讯功能模块:

可以和自己的同学或者添加的好友进行聊天沟通,交流信息。

4)好友管理模块:

在该模块中可以由动态发布情况以及你自己的喜好,有添加好友、删除好友、修改好友备注等功能,并且可以根据你的实际需求把好友分组,这样可以对组内的好友进行添加、删除、修改等操作。

2学生社交网络系统需求分析与总体设计

2.1社交系统需求分析

该社交平台目标为学生提供社交的服务。

具体来说,要在项目中完成以下功能模块:

社交的模块、通讯的功能模块。

要完成以上模块,需要在android前台组建用户的服务系统,还需要在后台组建一个服务器,在这一模块中用户能够向服务器发送请求,并且获得从服务器发回的数据;此服务器主要是完成前台请求,并且读写数据库,返回前台所需的数据;最后还需一个负责推送的服务器,专门负责发送聊天、点赞以及评论的推送信息。

2.1.1功能模块

1、用户登录模块:

完成用户信息注册,修改个人信息,登录等等基本功能.该模块用例图如下图1所示.

图1用户登录模块用例图

2、动态发布模块:

在该模块中可以进行动态发布,对动态进行点赞、评论,并且针对评论也可以进行恢复.在这模块中刚点击进入页面只显示部分动态,只有读到最后才可以刷新出更多之前的动态,并且在下拉的时候刷新动态。

该模块用例图如下图2所示。

图2社交模块用例图

3、好友管理模块:

在社交功能中如果在交互过程中找到有相同爱好或者同学,就可以添加对方为好友。

每个用户可以管理自己的好友列表,并且可以新建组的群组,将好友添加已设定的分组中,也可以对分组进行查询、添加、删除等操作。

该模块用例图如下图2-3所示。

图3好友模块用例图

2.1.2社交系统非功能性的需求

1)性能:

保证用户登录的安全性,以及快速追回被盗账户.

2)代码可读性:

拥有完整的代码与必要注释,以及数据存储。

3)良好用户体验:

保证在Android平台的可操作性。

2。

2社交平台总体设计

2.2.1系统功能模型方案

这个系统是由一个Android手机前端界面显示以及一个Web服务器后端的处理组成,因此系统的功能的结构功能如下图4所示。

图4系统功能模型

并且由此可以得到数据流向分析:

1、前台和用户交互界面得到用户的请求与操作,进行人机的交互。

2、前台处理分析将所需数据通过Http和数据库向后台Web服务器进行请求.

3、后台Web服务器将所得到的信息处理结果后返还给前台。

4、前台将用户所需信息展示给用户.

2。

2.2前台客户端与后台服务器架构体系

后台服务器端会使用Java来实现Web服务器,具体而言项目在后台上应该会利用MVC架构模式,采用serlvet来进行开发。

在Model层中实现与数据库信息交互的相关任务,并且完成数据存取、修改的业务模块设计。

架构模式如下图5所示。

图5后台架构图

2.2.3系统总体功能结构设计

学生社交网络系统总体的功能结构图如图6所示。

图6系统结构图

3学生社交网络系统的详细设计

本章主要介绍了学生社交平台类图的详细设计,介绍项目所涉及的数据库源表的详细设计以及部分文件处理平台中主要功能的详细设计,如:

好友模块的功能、动态发布模块功能、消息推送功能、即时通讯功能等的详细设计思想。

3.1社交系统类图详细的设计

图7系统类图

1)User类:

User类是使用本系统的用户的实体类。

具体包含的属性值如下:

用户id、注册email、用户名name、用户头像pics以及用户的一些基本资料:

性别sex、居住地hometown、生日birthday。

User类如图8所示。

图8User类

2)Relationship类:

Relationship类是实现好友关系一个是实体类。

主要属

性值有用户uid、我关注的列表concernlist、关注我的列表followlist、以及黑名单blacklist(具体实现的时候是使用的json数据格式)。

Relationship类如图9所示。

图9Relationship类

3)Message类:

Message类是实现状态发布、点赞、评论功能的实体类。

主要属性值有发表状态的用户uid、状态mid、发布时间time、版本序列号seq、

发布内容content及点赞列表likedlist和评论列表commentlist。

Message类如图10所示.

图10Message类

4)Comment类:

Comment类是评论消息实体类,,主要属性有评论cid、评论人uid、评论消息mid、评论内容content及评论时间time。

Comment类如图11所示.

图11Comment类

7)DBController类:

主要属性mongog,属于建立mongodb数据库的基本类,db(DB类型)是mongodb里建立的数据库、负责在java中操作数据库,其余的属性是与数据库建立连接的用户名、密码和具体的数据的库名.主要方法是实现数据查询的基本的方法.DBController类如图12所示.

图12DBController类

8)MemController类:

MemController类是实现数据缓存调用和存储的一个

控制类。

由于要与移动端前台进行交互,所以为了提高网络访问数据传输的

速度,使用了缓存机制。

基本原理就是前台请求的时候,后台数据传输应该是

先现在缓存中寻找数据,如果找不到再到后台数据库中查找。

主要属性有mcc:

MeCached服务客户端MemCachedClient和pool:

SockIO池化管理,为上层提供的接口类SocketIOPool类.MemController类如图13所示。

图13MemController类

9)MemWorker类:

MemWork类是调用MemController里基本方法实现对于用户和信息数据缓存的设置和读取的基本类.MemWorker类如图14所示.

图14MemWorker类

10)OpenfireConnector类:

主要属性有openfire服务器的配置路径confpath,openfire服务器信息ip、port和主机名hostname,openfire管理员账号信息等。

主要方法是建立和Openfire服务器的连接。

OpenfireConnector类如图15所示.

图15OpenfireConnector类

11)TipsPusher类:

TipsPusher类主要是通过Openfire服务器实现对消息发

布、点赞以及评论等功能的推送以及对聊天信息的推送.TipsPusher类如图

16所示。

图16TipsPusher类

12)UserSimpleLogic类:

UserSimpleLogic类是实现用户登录、注册、用户

基本信息维护和储存的用户业务逻辑类。

其中主要的方法如下:

login方法实现登录功能,register方法实现注册功能,createcreateRelationship方法为新注册的用户建立好友列表,createTimeline方法为新注册的用户建立用户的状态序号列表,createUid方法创建标识用户身份唯一的uid,最后两个方法实现用户信息的查询和更新。

UserSimpleLogic类如图17所示.

图17UserSimpleLogic类

13)RelationshipLogic类:

RelationshipLogic类是实现好友管理和信息储存。

RelationshipLogic类如图18所示。

图18RelionshipLogic类

14)Messagelogic类:

Messagelogic类是实现动态发布、点赞等各项动态管理的逻辑类。

前面4个方法分别实现点赞和取消点赞、评论与回复、动态的发布的功能,接下来的两个方法是要实现将新动态加入到自己的Timeline中,最后4个方法实现Timeline、动态、点赞信息和评论信息的读取。

Messagelogic类如图19所示。

图19Messagelogic类

15)ChatModel类:

ChatModel类是实现好友私信的业务逻辑类。

主要包括发送消息聊天、查看聊天记录以及接收聊天推送消息等功能.ChatModel类如图20所示。

图20ChatModel类

18)ChatDB类:

这个是用来在本地存储聊天信息的sqlite数据库类,在该类中主要是有储存聊天信息的方法saveChatmsg(),读取聊天信息的方法getChatmsg()以及得到信息的条目数方法getNewCount()。

ChatDB类如图21所示。

图21ChatDB类

3。

2社交系统数据库设计

由于要实现的是学生社交网络类的项目,要应对SNS项目的大规模和并发性,传统的关系型数据库难以处理这些问题,所有这次项目后台选用的数据库是非关系型数据库,Mongodb项目数据库整体的ER图如图22所示。

图22数据库ER图

1)User表:

用于存储用户id和用户信息,具体如下:

uidint唯一标识用户id,是一个自增的序号

seqint标识当前客户端或是服务端的版本号

emailString注册使用的邮箱

passwordString密码

nameString在系统中使用的用户名

sexString性别

birthdayString生日

picsString头像的名称

2)Relationship表:

用于用户的好友关系,具体如下:

uidint唯一标识用户id,是一个自增的序号

concernlistbjsonArray包含好友分组和具体分组中的uidlist

followlistbjsonArray关注我的人列表

3)Things表:

用于存储失物信息,具体如下:

uidint唯一标识用户id,是一个自增的序号,标识发布失物信息的用户

tidsint唯一标识失物id,是一个自增的序号

nameString失物名称

timeString发表时间

picsString失物图片

descriptionString相关描述

4)ThingsLine表:

用于Things列表id的存储,方便返回前台数据,具体表:

uidint唯一标识用户id,是一个自增的序号

ListbjsonArraytid列表

seqint标识当前客户端或是服务端的版本号

5)Event表:

用于存储用户日程安排,具体如下:

uidint唯一标识用户id,是一个自增的序号

eidString唯一标识事件id,是一个根据uid和日期生成的序号

placeString事件发生地点

timeString事件发生时间

descriptionString事件描述

remindsint提前提醒时间

6)TimeLine表:

用于存储用户发的消息列表,具体如下:

uidint唯一标识用户id,是一个自增的序号

listbjsonArray存储发了的消息的mid列表等

7)Message表:

用于存储状态一些基本信息,具体如下:

uidint唯一标识用户id,是一个自增的序号

midint标识消息的id,是一个自增的序号

likedlistbjsonArray赞列表

timeString发表时间

picsbjsonArray发布的图片名称列表,图片自动生成

8)Comment表:

用于存储动态态的评论,具体如下:

cidint标识评论的id,是一个自增的序号

seqint标识当前客户端或是服务端的版本号

midint消息的mid

listbjsonArray评论列表

9)EventLine表:

用于Event列表id的存储,具体如下:

uidint唯一标识用户id,是一个自增的序号

listbjsonArrayeid列表

seqint标识当前客户端或是服务端的版本号

10)ChatMessage表:

用于存储聊天消息,具体如下:

uidint唯一标识用户id,是一个自增的序号

cmidint唯一标识聊天id,是一个自增的序号

uidsint聊天对象的uid

contentString聊天内容

3。

3社交系统后台实现部分功能

学生社交网络系统的后台设计的基本思想是:

等待前台发送请求到服务端后台,然后服务器通过Servlet接收前台请求,然后在后台完成处理,并将响应再次通过Servlet发送到客户端.后台信息处理运用的新技术采用了Memcached缓存的使用、Openfire服务器以及ConnectionManager:

作为Openfire服务器的拓展架构。

所以在这里详细介绍一下。

3.3。

1Memcached缓存

大家都知道,缓存数据要比直接访问数据库来获得数据要迅速。

而在网络数据传输中速度更是一个应该讲用户体验放在首位。

因而在这次的后台设计中加入缓存数据,提高数据读取速度。

作为分布式缓存系统Memcached具有如下特点:

1)协议简单,方便实用;

2)降低数据库负载,加大数据读取率;

3)不互相通信的分布式,信息彼此不可见性;

4)基于libevent的事件处理,快速处理反应.

3.3.2Openfire和Connectionmanager

由于我们要实现动态发布、评论、点赞以及聊天等功能,因而我们要使用Openfire服务器就是来实现这个功能的。

我们为了处理更多的并发用户需求的连接,引入OpenfireConnectionManager。

OpenfireConnectionManager是Openfire服务器的扩展,它可以透明的处理大规模并发XMPP客户端对Openfire服务器的连接.根据ConnectionManager主页介绍,每个ConnectionManager可以处理至少五千个并发用户。

Openfire服务器可以连接一个或多个ConnectionManager.每个ConnectionManager可以处理一个或多个支持XMPP的客户端。

为Openfire配置ConnectionManager后,支持XMPP的客户端仅需要连接ConnectionManager,由Conn

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

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2