- 浏览: 1235314 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (242)
- java (58)
- netty (14)
- javascript (21)
- commons (13)
- 读书笔记 (5)
- java测试 (6)
- database (5)
- struts2 (8)
- hibernate (6)
- english (27)
- spring (10)
- 生活 (4)
- 多线程 (4)
- 正则表达式 (1)
- 杂项 (1)
- maven (4)
- 数据库 (10)
- 学习笔记 (1)
- mongodb (1)
- 百度bcs (4)
- 云推送javasdk (2)
- webservice (3)
- IllegalAnnotationException: Two classes have the same XML type name (0)
- drools (3)
- freemarker (3)
- tomcat (1)
- html5 (2)
- mq (11)
- fastjson (3)
- 小算法 (2)
最新评论
-
longxitian:
https://www.cnblogs.com/jeffen/ ...
万恶的Mybatis的EnumTypeHandler -
asialee:
ddnzero 写道博主请问FileUtils这个类是哪个包的 ...
使用mockftpserver进行ftp测试 -
ddnzero:
博主请问FileUtils这个类是哪个包的?还是自己的呢?能放 ...
使用mockftpserver进行ftp测试 -
yizishou:
为什么会intMap.get("bbb") ...
浅谈System.identityHashCode -
liguanqun811:
感觉LogManager打开了所有的LogSegment(文件 ...
jafka学习之LogManager
[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]
- MIDletServer.rar (25.8 KB)
- 下载次数: 1400
- 02_SimpleMIDlet.rar (127.9 KB)
- 下载次数: 1410
评论
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 写道
怎么麻烦了?我觉得还好啊
嗯, J2ME的thread还真麻烦...
lordhong 写道
asialee 写道
做的时候感觉虽然J2ME里面的线程比较难控制,我的里面线程控制有点问题,呵呵。
嗯, J2ME的thread还真麻烦...
Java SE和EE都开发过,但ME没有开发过,我稍微看了一下,然后按照开发java程序的思想写的,但感觉稍微不一样。
5 楼
wayfarer
2009-08-04
怎么麻烦了?我觉得还好啊
嗯, J2ME的thread还真麻烦...
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
对不起呀,这个是我给一个留学的同学做的,大家就勉强的看吧。也随便锻炼锻炼英文,呵呵。
发表评论
-
maven的system scope的依赖在打包的时候不出现在lib里面的解决
2017-09-20 11:21 0上周遇到一个问题,一个sytem scope的依赖,在导出的 ... -
JAVA静态代码块
2015-04-07 16:26 2032今天遇到下面的代码 ... -
StringUtils.repeat函数赏析与疑问
2014-09-01 18:43 6090今天实现一个字符串拼接的一个需求,比如: ... -
java服务的培训ppt
2014-08-30 23:01 1581给应届生培训java web 服 ... -
给新人制定的java学习计划
2014-08-30 22:52 2493花了一点时间,给团队应届生和实习生制定 ... -
获取手机的mac地址
2014-04-10 22:20 3404与IP不同,MAC是指连接WIFI使用的无线网卡的物理地址, ... -
解决errorpage里面取不到Authentication的问题
2013-01-20 23:56 2449本人原创,发现一些网站无道德的抓取 ... -
SimpleDateFormat使用的时候的注意点
2012-12-06 20:59 2054今天在帮助同事查找一个项目bug的时候发现一个很奇怪 ... -
java和javascript的正则表达式有点不同
2012-11-06 18:54 1445今天在项目中遇 ... -
velocity 1.6.4的一个bug
2012-09-10 17:24 2174$.ajax()在Velocity中会冲突, 总之 ... -
一种多数据源分页算法
2012-09-10 17:13 7549以前开发一个系统,需要去多个系统去取数据,简单期间,比 ... -
使用stringBuffer和StringBuilder拼串要注意的问题
2012-07-30 17:30 8094今天在和同事排除一个问题的时候发现,从 ... -
java获取当月的工作日
2012-05-10 12:07 6130在这个记录一下,记录java获取某个月的工作日的代码,方便以 ... -
webservice引用传参
2012-04-19 19:38 1448http://www.blogjava.net/xylz/ar ... -
java获取当天的开始时间,当前周的开始时间
2012-04-16 17:31 19595在程序里面要获取当前的开始时间和结束时间,以及当前天 ... -
edtFTPj源码学习
2012-04-11 16:25 1252下面是edtFTPj的源码学习,下面的类图都是我自己亲手花的, ... -
ftp协议研究
2012-03-12 17:34 1272ACTIVE FTP OPERATION 1、客户端使用源 ... -
西安交通大学的错误日志
2011-12-14 13:30 1010西安交大的网站报错了,记录下出错日志,改天研究一下。 HT ... -
tomcat的favicon.ico的用法
2011-12-01 20:00 22261. web.xml文件添加下面的mime-mapping ... -
htmlunit模拟sso登陆
2011-07-27 14:45 6939import java.io.IOException; ...
相关推荐
标题"用C# UDP协议开发的局域网聊天程序"指的是一个基于C#编程语言,利用用户数据报协议(UDP)来实现的局域网内的即时通讯应用。UDP是一种无连接的传输层协议,常用于对实时性要求较高的应用场景,如在线游戏、视频...
聊天程序中的“发送”按钮点击事件就是一个例子,当用户按下发送按钮时,程序会调用相应的事件处理函数发送消息。 7. **数据序列化与反序列化**:为了在网络间传输消息,通常需要将消息对象转换为字符串或二进制...
在本项目中,我们探讨的是一个用Java开发的简单聊天程序,这对于初学者来说是一个很好的实践项目,特别是对于那些正在学习JAVA网络编程的学员。 这个聊天程序的核心是利用Java的Socket编程来实现客户端与服务器端...
综上所述,开发这样一个Android聊天程序涉及到多个技术层面,包括UI设计、线程管理、网络通信、数据存储以及安全措施。通过深入研究和实践,开发者可以掌握构建高效、流畅的聊天应用所需的技能。
C#的语法简洁明了,且拥有丰富的库支持,如System.IO用于文件操作,System.Threading用于多线程处理,这些都为开发聊天程序提供了便利。 标签中的“.NET”是微软的统一开发平台,包含了大量的库和服务,可以帮助...
综上所述,基于微信小程序的智能聊天机器人融合了人工智能、移动开发与自然语言处理等多项技术,为用户提供了新的交互体验。它的开发不仅需要深入理解相关技术,还需要考虑用户体验和实际应用场景。随着技术的不断...
QT是一个强大的跨平台应用程序开发框架,由The Qt Company提供,被广泛用于创建桌面、移动以及嵌入式设备上的用户界面和应用程序。在这个“QT简单聊天程序”中,我们有两个主要部分:ChatServer和ChatClient,分别...
在本项目中,“java swing开发的网络对战坦克游戏,带一个聊天程序”利用了Swing的强大功能来创建一个交互式的、图形化的游戏界面,同时集成了网络通信功能,允许玩家进行多人对战并交流。 首先,我们来深入理解...
由于这是一个本地聊天程序,我们可以使用Socket编程来实现客户端与服务器之间的通信。每个用户将运行一个客户端,服务器负责接收和转发消息。在Java中,ServerSocket类用于创建服务器端,Socket类代表客户端连接。...
综上所述,聊天程序的开发涉及多个技术领域,从基础架构到核心功能,再到安全保障,每一个环节都需要精心设计和实现。随着技术的发展,聊天程序也在不断进化,例如引入AI助手、AR/VR互动等新特性,为用户提供更加...
【Qt局域网聊天程序】是一个基于Qt框架开发的简易聊天应用,主要针对初学者或者小组内部交流设计。Qt是一个跨平台的C++图形用户界面应用程序开发框架,它提供了丰富的API和工具,使得开发者能够方便地创建出具有现代...
总之,【WPF聊天小程序】是一个综合性的项目,涵盖了网络编程、数据库操作、多媒体处理、用户界面设计等多个方面,对于学习和提升C#开发技能具有很高的价值。开发者可以借此深入了解如何在实际项目中整合这些技术,...
QT框架是一个跨平台的应用程序开发框架,广泛用于创建桌面、移动和嵌入式系统的用户界面和应用程序。在本项目中,我们将关注如何使用QT来构建一个基于TCP协议的聊天程序。TCP(传输控制协议)是一种面向连接的、可靠...
总的来说,“云开发聊天室”结合了微信小程序的便捷性与云开发的高效性,为用户提供了一个易于使用且功能丰富的聊天环境。通过深入了解并掌握以上关键技术,开发者可以构建出自己的聊天室应用,满足不同场景的社交...
QQ聊天程序是一款由腾讯公司开发的即时通讯软件,它在中国乃至全球范围内有着广泛的应用。这款程序的核心功能是提供用户间实时的文字、语音、视频聊天,同时还有文件传输、群聊、空间互动等多种社交功能。 在QQ聊天...
开发这样一个QT聊天程序,开发者需要掌握以下关键知识点: 1. QT库的基本使用:理解QT的类库结构,如何创建和布局GUI元素,以及信号与槽机制的运用。 2. 网络编程:熟悉QT的网络模块,包括TCP/IP通信,以及如何处理...
【PHP 聊天程序】是一个使用PHP编程语言开发的实时聊天应用程序,它允许用户通过网页进行即时交流。这个程序的核心在于实现页面的即时刷新,以便用户无需手动刷新页面就能看到新的聊天消息,提升了用户体验。下面...
总结,这个项目提供了一个实用的TCP网络聊天程序实例,结合了Qt-Creator的强大功能和TCP协议的可靠性,对于学习网络编程和GUI应用开发具有很高的参考价值。同时,开发者还需要理解多线程、异步编程以及错误处理等...
总的来说,jchat4android手机聊天程序结合了Android开发技术、即时通讯协议、智能代理框架JADE,以及数据存储和安全策略,打造了一款全面的移动聊天应用。开发者需要掌握多方面的技能,才能有效地理解和维护这样的...
微信小程序是一种轻量级的应用开发平台,由腾讯公司推出,主要针对...开发者需要具备扎实的JavaScript基础,理解微信小程序的框架原理,并可能需要学习NLP等相关知识,以创建一个功能完善的、互动性强的聊天室应用。