推荐:J2ME编程实践之灵活的RMS应用MIDP应用程序的标准持久化方案就是使用RMS。RMS类似于一个小型数据库,RecordStore相当于数据库的表,每个“表”由若干记录(Record)构成,一条记录就是一个用int表示的记录号RecordI
在J2ME中基于UDP协议编程一文中介绍了如何使用Datagram和DatagramConnection来开发应用程序,本文将主要讲述在MIDP2.0中使用ServerSocketConnection和SocketConnection来开发联网应用程序。TCP协议是可以保证传输的质量的,这也是他和UDP的一大区别。由于以上谈到的四个类都属于GCF,他们在程序编写方面也非常相似,通常我们在Server端的某个端口监听,当客户端连接服务器的时候,则可以得到一个SocketConnection的实例。通过两端的SocketConnection则可以实现C/S结构的通信了。
首先看一下,ServerSocketConnection类,它的一个非常重要的方法就是acceptAndOpen()方法,这个方法返回一个SocketConnection实例,从而使得客户端和服务器端可以通过socket通信了。典型的代码如下:
// Create the server listening socket for port 1234
ServerSocketConnection scn = (ServerSocketConnection)
Connector.open("socket://:1234");
// Wait for a connection.
SocketConnection sc = (SocketConnection) scn.acceptAndOpen();
// Set application specific hints on the socket.
sc.setSocketOption(DELAY, 0);
sc.setSocketOption(LINGER, 0);
sc.setSocketOption(KEEPALIVE, 0);
sc.setSocketOption(RCVBUF, 128);
sc.setSocketOption(SNDBUF, 128);
// Get the input stream of the connection.
DataInputStream is = sc.openDataInputStream();
// Get the output stream of the connection.
DataOutputStream os = sc.openDataOutputStream();
// Read the input data.
String result = is.readUTF();
// Echo the data back to the sender.
os.writeUTF(result);
// Close everything.
is.close();
os.close();
sc.close();
scn.close();
..
SocketConnection的使用也是非常简单,通过Connector的open方法我们可以得到一个SocketConnection的实例。
SocketConnection sc = (SocketConnection)
Connector.open("socket://host.com:79");
sc.setSocketOption(SocketConnection.LINGER, 5);
InputStream is = sc.openInputStream();
OutputStream os = sc.openOutputStream();
os.write("\r\n".getBytes());
int ch = 0;
while(ch != -1) {
ch = is.read();
}
is.close();
os.close();
sc.close();
其实我们在用socket编写程序的时候无非遵循这样的一种规则:服务器端建立监听端口等待连接,客户端通过open()方法与服务器端建立连接,两端通过建立的socket传输数据,关闭连接。
下图是我在运行WTK中NetworkDemo的时候的截图!代码也一并发表出来。
在J2ME中基于UDP协议编程一文中介绍了如何使用Datagram和DatagramConnection来开发应用程序,本文将主要讲述在MIDP2.0中使用ServerSocketConnection和SocketConnection来开发联网应用程序。TCP协议是可以保证传输的质量的,这也是他和UDP的一大区别。由于以上谈到的四个类都属于GCF,他们在程序编写方面也非常相似,通常我们在Server端的某个端口监听,当客户端连接服务器的时候,则可以得到一个SocketConnection的实例。通过两端的SocketConnection则可以实现C/S结构的通信了。
首先看一下,ServerSocketConnection类,它的一个非常重要的方法就是acceptAndOpen()方法,这个方法返回一个SocketConnection实例,从而使得客户端和服务器端可以通过socket通信了。典型的代码如下:
// Create the server listening socket for port 1234
ServerSocketConnection scn = (ServerSocketConnection)
Connector.open("socket://:1234");
// Wait for a connection.
SocketConnection sc = (SocketConnection) scn.acceptAndOpen();
// Set application specific hints on the socket.
sc.setSocketOption(DELAY, 0);
sc.setSocketOption(LINGER, 0);
sc.setSocketOption(KEEPALIVE, 0);
sc.setSocketOption(RCVBUF, 128);
sc.setSocketOption(SNDBUF, 128);
// Get the input stream of the connection.
DataInputStream is = sc.openDataInputStream();
// Get the output stream of the connection.
DataOutputStream os = sc.openDataOutputStream();
// Read the input data.
String result = is.readUTF();
// Echo the data back to the sender.
os.writeUTF(result);
// Close everything.
is.close();
os.close();
sc.close();
scn.close();
..
SocketConnection的使用也是非常简单,通过Connector的open方法我们可以得到一个SocketConnection的实例。
SocketConnection sc = (SocketConnection)
Connector.open("socket://host.com:79");
sc.setSocketOption(SocketConnection.LINGER, 5);
InputStream is = sc.openInputStream();
OutputStream os = sc.openOutputStream();
os.write("\r\n".getBytes());
int ch = 0;
while(ch != -1) {
ch = is.read();
}
is.close();
os.close();
sc.close();
其实我们在用socket编写程序的时候无非遵循这样的一种规则:服务器端建立监听端口等待连接,客户端通过open()方法与服务器端建立连接,两端通过建立的socket传输数据,关闭连接。
下图是我在运行WTK中NetworkDemo的时候的截图!代码也一并发表出来。
分享:J2ME程序打包发布小技巧在J2ME程序开发完成以后,需要将程序打包成jad和jar文件,这个操作可以使用IDE提供的向导或者是WTK中的菜单等方式来完成,为了保证你的程序可以顺利的在手机中运行,需要注意如下一些
- jsp response.sendRedirect不跳转的原因分析及解决
- JSP指令元素(page指令/include指令/taglib指令)复习整理
- JSP脚本元素和注释复习总结示例
- JSP FusionCharts Free显示图表 具体实现
- 网页模板:关于jsp页面使用jstl的异常分析
- JSP页面中文传递参数使用escape编码
- 基于jsp:included的使用与jsp:param乱码的解决方法
- Java Web项目中连接Access数据库的配置方法
- JDBC连接Access数据库的几种方式介绍
- 网站图片路径的问题:绝对路径/虚拟路径
- (jsp/html)网页上嵌入播放器(常用播放器代码整理)
- jsp下显示中文文件名及绝对路径下的图片解决方法
- 相关链接:
-
教程说明:
JSP教程-J2ME中使用Socket开发联网程序1
。