flex socket java,Flex的socket与java使用amf3进行通信

flex socket java,Flex的socket与java使用amf3进行通信amf3,adobe创立的数据格式由于使用二进制,没有了xml等冗余的字符数据量会少很多!而且很多测试报告均测出amf传递效果很高.这次是使用Flex的Socket类与java的服务端进行通信,步骤是:客户端用socket类连接java服务器,使用查询字符串进行请求,java将数据封装为hashmap,最后将hashmap用amfoutputstream输出至flex的客户端flex对数据进行解码…

amf3,adobe创立的数据格式由于使用二进制,没有了xml等冗余的字符数据量会少很多!而且很多测试报告均测出amf传递效果很高.

这次是使用Flex的Socket类与java的服务端进行通信,

步骤是:

客户端用socket类连接java服务器,

使用查询字符串进行请求,

java将数据封装为hashmap,最后将hashmap用amfoutputstream输出至flex的客户端

flex对数据进行解码后,即为Object!

以下为详细的代码(呵呵,留个网络比较)

1.先倒入adobe的包到java的工程中!

flex-messaging-core.jar

flex-messaging-common.jar

2.建立好java的socket服务器

包结构: com.sk.socket

package com.sk.socket;

import java.io.IOException;

import java.io.PrintStream;

import java.net.ServerSocket;

import java.net.Socket;

import java.util.Arrays;

import java.util.HashMap;

import java.util.Scanner;

import com.sk.amf.AmfTool;

public class AmfSocket {

private ServerSocket socket;

private Socket client;

private Scanner in;

private PrintStream out;

private AmfTool tool = new AmfTool();

public AmfSocket(int port) throws IOException {

socket = new ServerSocket(port);

}

public void start() throws IOException{

System.out.println(“Amf服务器已启动”);

while (true) {

client = socket.accept();

in = new Scanner(client.getInputStream());

out = new PrintStream(client.getOutputStream());

boolean done = false;

while (!done) {

if (in.hasNextLine()) {

String line = in.nextLine();

if (line.trim().toLowerCase().equals(“exit”)) {

done = true;

} else {

out();

}

} else {

done = true;

}

}

if(done){

client.close();

}

}

}

private void out() {

HashMap

今天的文章flex socket java,Flex的socket与java使用amf3进行通信分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/27592.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注