1.2 研究现状
1.3 研究内容
抽象来说,UML2定义的消息message是多个实例的生命线之间进行交互的一种特定通信方式。例如,调用一个操作,发送一个信号、创建一个对象或撤销一个对象等。同步消息synch message是一种消息,同步消息在发出后需等待某种应答,应答往往决定下一个同步消息的内容。例如,同步调用一个方法要等待方法返回之后才能做下一件事。同步消息往往在多条生命线之间形成多个消息的序列,这需要维持一个较长时间的连接。例如,打电话、QQ、微信、聊天等通信方式都属于同步消息。
同步消息区别于异步asynch message消息,异步消息包括异步信号和异步调用,指的是发出消息之后不需要等待应答,或者不能短时间内得到应答。例如,发送一个电子邮件,发信人不用等待收信人收到或回复才能做下一件事。通过QQ发送离线文件也属于异步消息。异步调用往往用于多线程编程,通过调用来启动一个新线程来完成特定任务,而用不等待它完成。异步消息不需要维持长连接,占用资源较少。
同步消息与异步消息之间存在辩证关系,而不是绝对的区分。对同一种通信,从宏观角度看可能是异步消息,但从微观角度看,可能内部包含了多个同步消息。
为什么本文关注同步消息?同步消息能提供实时性交互,具有较高交互效率的同时占用资源也较大,对于特定领域(如医疗救助、紧急事件处理等)具有不可替代的作用,对于Android平台和J2EE/Web平台开发具有一定挑战性。本文希望能在研究Android和J2EE/Web两平台间通讯技术基础上,设计开发一个同步消息原型系统,不仅实现手机端到端的同步通信,而且具有统一后台管理,具有特定领域的潜在用途,例如医疗救助、慢性病人管理、紧急事件处理等,以验证功能可行性。
通过Android平台(一种流行的移动网络终端)与J2EE服务器实现消息通信,这种架构与通信模式对于大型企事业单位(特别是一些医疗单位)的信息化建设提供支撑作用。本文研究开发Android手机之间、Android手机与Web客户端之间的同步通信,并实现多种角色的用户管理,管理员、客户、服务员,实现消息历史查看、删除等功能。
消息通信主要是利用推送技术来实现的。要获取服务器上的消息主要有两种方法:一种是拉的方法(即pull),就是在相隔一定的时间由应用程序主动的向服务器发送请求,从而获取消息的方法。另一种是推的方法(即push),则是由服务器直接把消息发送给应用程序,这样就可以实现客户端直接接受消息。
通过研究以下论文网
1、 研究J2EE服务器方面的编程
2、 研究Android消息推送技术
3、 研究Android端的编程开发
实现Android手机之间、Android手机与Web客户端之间的同步通信,并实现多种角色的用户管理,管理员、客户、服务员,实现消息历史查看、删除等功能。
首先本次项目是由三人组成的团队进行开发的,本人作为项目的组长在关于团队和项目方面有以下几点的说明和补充:
1、本系统是一个原型系统,主要在于功能实现的可行性验证,因此界面简陋,功能简单,个别功能还存在缺陷,或者尚未完整实现。例如,手机用户中应区分病人和保健医生,两种角色。
2、本系统运行依赖两个外部服务器,百度和JPush。
3、本系统实现的难点: