`

我学习移动开发的一个聊天程序

    博客分类:
  • java
阅读更多
[size=large]Solution Report

Protocol define and explain
    We define the following a simple transportation protocol which the midlet send to server:
Id_message_body
The first is the midlet’s id;
The second is the method, it can be “add”,”message”,”delete”
The third part is the message;
Id_add_MessageBody: This message will be send by midlet when he connect to the chat room.
Id_message_MessageBody: This message will be send by midlet when he send a message to other.
Id_delete_MessageBody: This message will be send by midlet when he leave the chat room.

We define a simple transportation protocol which the server send to midlet:
messageType_messageBody
The first is the message Type, it can be “private”,”message”
The second is the messageBody.
Private_messageBody: This information will be send only for this person, and it will displayed at the top, for example, the previous connected person’s information.
Message_messageBody: This information will be send for all the person, and it will displayed as a chat history below the private message. For example, the other person’s chat message.
Server side implementation
  We implement a servlet which will startup when the server is started, and the servlet will initialize a Thread  which listened in 8000(You can configure it in configuration file web.xml). Every time when a new connection come in, a new Thread will create to deal with the message. And we maintain a Socket collection which hold all the socket connection.
Midlet client implementation
     When the program initialized, it will construct a SocketConnection, and when user click the connect, we will create two thread, one is the writeThread which will write the message queue’s message to server, the other is the readThread, which will read the message from server, and display it in corresponding location according to the message type.
When the user click the send button, the message will be put into message queue, and it will notify the writeThread to write it to the server.
When the user click the exit button, the readThread and the writeThread will be stoped, and also we will release some resources, for example the socket’s InputStream and OutputStream, and also the SocketConnection.
[/size]











  • 大小: 61.2 KB
  • 大小: 62.2 KB
  • 大小: 230 KB
  • 大小: 224.6 KB
分享到:
评论
15 楼 asialee 2010-06-01  
菩萨Lu 写道
刚开始接触j2me,拿走研究学习了,thx

感谢一下,写的不是很好,欢迎交流。
14 楼 菩萨Lu 2010-05-31  
刚开始接触j2me,拿走研究学习了,thx
13 楼 asialee 2009-08-17  
写了这么一个烂程序被下载了上千次,我以后还会上传我的一些小程序的,不过质量会更好的。
12 楼 asialee 2009-08-06  
java.lang.Object 写道
楼主netbeans的代码字体调得真大。

字体调大了省眼睛呀,呵呵。
11 楼 java.lang.Object 2009-08-05  
楼主netbeans的代码字体调得真大。
10 楼 asialee 2009-08-05  
这么多人下载了,小弟感谢一下,也欢迎大家提点意见。
9 楼 asialee 2009-08-05  
这个是我用了大概3天时间写的,还是比较仓促。当感觉思想是相通的。
8 楼 asialee 2009-08-04  
youngmaster 写道
看了朋友的作品,感觉真好...期待朋友更多的精彩!

是在说我吗? 要是我的话,先谢谢了。
7 楼 youngmaster 2009-08-04  
看了朋友的作品,感觉真好...期待朋友更多的精彩!
6 楼 asialee 2009-08-04  
wayfarer 写道
怎么麻烦了?我觉得还好啊

lordhong 写道
asialee 写道
做的时候感觉虽然J2ME里面的线程比较难控制,我的里面线程控制有点问题,呵呵。


嗯, J2ME的thread还真麻烦...



Java SE和EE都开发过,但ME没有开发过,我稍微看了一下,然后按照开发java程序的思想写的,但感觉稍微不一样。
5 楼 wayfarer 2009-08-04  
怎么麻烦了?我觉得还好啊

lordhong 写道
asialee 写道
做的时候感觉虽然J2ME里面的线程比较难控制,我的里面线程控制有点问题,呵呵。


嗯, J2ME的thread还真麻烦...

4 楼 lordhong 2009-08-04  
asialee 写道
做的时候感觉虽然J2ME里面的线程比较难控制,我的里面线程控制有点问题,呵呵。


嗯, J2ME的thread还真麻烦...
3 楼 asialee 2009-08-04  
做的时候感觉虽然J2ME里面的线程比较难控制,我的里面线程控制有点问题,呵呵。
2 楼 ccxw1983 2009-08-03  
确实不错哦,英文好啊
1 楼 asialee 2009-08-03  
对不起呀,这个是我给一个留学的同学做的,大家就勉强的看吧。也随便锻炼锻炼英文,呵呵。

相关推荐

    C# 用UDP协议开发的局域网聊天程序

    标题"用C# UDP协议开发的局域网聊天程序"指的是一个基于C#编程语言,利用用户数据报协议(UDP)来实现的局域网内的即时通讯应用。UDP是一种无连接的传输层协议,常用于对实时性要求较高的应用场景,如在线游戏、视频...

    C#开发的聊天小程序

    聊天程序中的“发送”按钮点击事件就是一个例子,当用户按下发送按钮时,程序会调用相应的事件处理函数发送消息。 7. **数据序列化与反序列化**:为了在网络间传输消息,通常需要将消息对象转换为字符串或二进制...

    java语言开发的一个简单的聊天程序

    在本项目中,我们探讨的是一个用Java开发的简单聊天程序,这对于初学者来说是一个很好的实践项目,特别是对于那些正在学习JAVA网络编程的学员。 这个聊天程序的核心是利用Java的Socket编程来实现客户端与服务器端...

    android的一个聊天程序

    综上所述,开发这样一个Android聊天程序涉及到多个技术层面,包括UI设计、线程管理、网络通信、数据存储以及安全措施。通过深入研究和实践,开发者可以掌握构建高效、流畅的聊天应用所需的技能。

    一个客户端服务器端聊天示例程序

    C#的语法简洁明了,且拥有丰富的库支持,如System.IO用于文件操作,System.Threading用于多线程处理,这些都为开发聊天程序提供了便利。 标签中的“.NET”是微软的统一开发平台,包含了大量的库和服务,可以帮助...

    基于微信小程序的智能聊天机器人的开发.pdf

    综上所述,基于微信小程序的智能聊天机器人融合了人工智能、移动开发与自然语言处理等多项技术,为用户提供了新的交互体验。它的开发不仅需要深入理解相关技术,还需要考虑用户体验和实际应用场景。随着技术的不断...

    QT 简单聊天程序

    QT是一个强大的跨平台应用程序开发框架,由The Qt Company提供,被广泛用于创建桌面、移动以及嵌入式设备上的用户界面和应用程序。在这个“QT简单聊天程序”中,我们有两个主要部分:ChatServer和ChatClient,分别...

    java swing开发的网络对战坦克游戏,带一个聊天程序

    在本项目中,“java swing开发的网络对战坦克游戏,带一个聊天程序”利用了Swing的强大功能来创建一个交互式的、图形化的游戏界面,同时集成了网络通信功能,允许玩家进行多人对战并交流。 首先,我们来深入理解...

    聊天程序课程设计

    由于这是一个本地聊天程序,我们可以使用Socket编程来实现客户端与服务器之间的通信。每个用户将运行一个客户端,服务器负责接收和转发消息。在Java中,ServerSocket类用于创建服务器端,Socket类代表客户端连接。...

    聊天程序 聊天程序 聊天程序

    综上所述,聊天程序的开发涉及多个技术领域,从基础架构到核心功能,再到安全保障,每一个环节都需要精心设计和实现。随着技术的发展,聊天程序也在不断进化,例如引入AI助手、AR/VR互动等新特性,为用户提供更加...

    qt 局域网聊天程序

    【Qt局域网聊天程序】是一个基于Qt框架开发的简易聊天应用,主要针对初学者或者小组内部交流设计。Qt是一个跨平台的C++图形用户界面应用程序开发框架,它提供了丰富的API和工具,使得开发者能够方便地创建出具有现代...

    wpf聊天小程序

    总之,【WPF聊天小程序】是一个综合性的项目,涵盖了网络编程、数据库操作、多媒体处理、用户界面设计等多个方面,对于学习和提升C#开发技能具有很高的价值。开发者可以借此深入了解如何在实际项目中整合这些技术,...

    基于TCP协议的QT聊天程序

    QT框架是一个跨平台的应用程序开发框架,广泛用于创建桌面、移动和嵌入式系统的用户界面和应用程序。在本项目中,我们将关注如何使用QT来构建一个基于TCP协议的聊天程序。TCP(传输控制协议)是一种面向连接的、可靠...

    云开发聊天室(2).zip

    总的来说,“云开发聊天室”结合了微信小程序的便捷性与云开发的高效性,为用户提供了一个易于使用且功能丰富的聊天环境。通过深入了解并掌握以上关键技术,开发者可以构建出自己的聊天室应用,满足不同场景的社交...

    QQ聊天程序QQ聊天程序

    QQ聊天程序是一款由腾讯公司开发的即时通讯软件,它在中国乃至全球范围内有着广泛的应用。这款程序的核心功能是提供用户间实时的文字、语音、视频聊天,同时还有文件传输、群聊、空间互动等多种社交功能。 在QQ聊天...

    chat.rarqt 聊天程序源码 qt 聊天程序源码 qt 聊天程序源码

    开发这样一个QT聊天程序,开发者需要掌握以下关键知识点: 1. QT库的基本使用:理解QT的类库结构,如何创建和布局GUI元素,以及信号与槽机制的运用。 2. 网络编程:熟悉QT的网络模块,包括TCP/IP通信,以及如何处理...

    PHP 聊天程序

    【PHP 聊天程序】是一个使用PHP编程语言开发的实时聊天应用程序,它允许用户通过网页进行即时交流。这个程序的核心在于实现页面的即时刷新,以便用户无需手动刷新页面就能看到新的聊天消息,提升了用户体验。下面...

    基于TCP的网络聊天程序

    总结,这个项目提供了一个实用的TCP网络聊天程序实例,结合了Qt-Creator的强大功能和TCP协议的可靠性,对于学习网络编程和GUI应用开发具有很高的参考价值。同时,开发者还需要理解多线程、异步编程以及错误处理等...

    jchat4android手机聊天程序

    总的来说,jchat4android手机聊天程序结合了Android开发技术、即时通讯协议、智能代理框架JADE,以及数据存储和安全策略,打造了一款全面的移动聊天应用。开发者需要掌握多方面的技能,才能有效地理解和维护这样的...

    微信小程序机器人聊天聊天

    微信小程序是一种轻量级的应用开发平台,由腾讯公司推出,主要针对...开发者需要具备扎实的JavaScript基础,理解微信小程序的框架原理,并可能需要学习NLP等相关知识,以创建一个功能完善的、互动性强的聊天室应用。

Global site tag (gtag.js) - Google Analytics