当前位置:首页 >> 行情

JKAS开发框架系统设计文档6:网络操作—SOCKET

来源:行情   2023年03月12日 12:15

>重启快捷键socket后,socket作出反应类转发将重新启动

其余部分如下分析方法展开快捷键类的实现,可以不全部其余部分:

public void OnConnection(Socket socket)//连通取得成功

public void OnMessage(Socket socket,byte[] message)//送出讯息

public void (Socket socket,String error)//用到差错

public void OnClose(Socket socket)//连通接上

近来:

package test.z.socket;

import org.jkas.core.SocketService;

import java.net.Socket;

public class MySocket extends SocketService

{

public MySocket()

{

}

public void onConnection(Socket socket)

{send("custom my socket connected");

}

public void onMessage(Socket socket,byte[] message)

{send("get message:"+new String(message));

}

public void onClose(Socket socket)

{System.out.println("socket close");

}

}

三、SOCKET 用户端

SOCKET 用户端执意允诺从外部机器

1、配置

[SOCKET CLIENT]

;for client 否重启搜索引擎执意允诺一个从外部socket,配置文件是每分钟检测一次,如果接上,自动重连

socket_client_enable=1

;要允诺的从外部PC地址

socket_client_host=localhost

;要允诺的从外部PC端口

socket_client_port=7777

;否开通类其余部分

socket_client_override=0

;如果开通类其余部分,所选用来其余部分的类名,须要分家SocketClient

socket_client_class=test.z.socket.MySocketClient

;从外部PC作出反应后函数调用类的包名设立

socket_client_package=test.z.socket

2、讯息回应与作出反应类,每次只能少于1024字节

void sendc(String content)//只能在作出反应类中函数调用

void sendc(byte[] content)//只能在作出反应类中函数调用

boolean csend(String content)//简而言之可函数调用

boolean csend(byte[] content)//简而言之可函数调用

从外部机器允诺发送格式化:

{"app":"test","data":{"name":"sfsd"}}//其它允诺,app指自己写下的分家于JkasSocketClient的类,act:该类的分析方法,没传act配置文件为index

socket client作出反应类编写下:

socket client类须要分家于JkasSocketClient,分析方法多种类型不Type-B,但最终会以字符串驱动到用户端

给予末端参数,即data信息分析方法:

String D()//给予整段 个data信息

String D(String key)//给予json构件的data信息所选key的值

近来:

package test.z.socket;

import org.jkas.core.JkasSocketClient;

public class TestClient extends

JkasSocketClient

{ public String index()

{return D("name");

}

}

作出反应驱动:

{"code":404,"msg":"Bad Request"}//app或act名称相符决定

{"code":200,"msg":"success"}//送出非Json讯息,不做任何处置

{"code":404,"msg":"Please set the package in the configuration file first."}//包名没配置驱动

{"code":404,"msg":"notice messages"}//各种提示讯息

{"code":500,"msg":"invalid json data"}//允诺的JSON格式化差错

如果是快捷键类,字符串原样驱动

3、快捷键Socket Client

快捷键socket client的类,须要分家SocketClient

并且要同时重启

socket_client_enable=1

socket_client_override=1

重启快捷键socket client后,socket client作出反应类转发将重新启动

其余部分如下分析方法展开快捷键类的实现,可以不全部其余部分:

public void OnConnection(SocketChannel channel)//连通取得成功

public void OnMessage(SocketChannel channel,byte[] message)//送出讯息

public void (SocketChannel channel,String error)//用到差错

public void OnClose(SocketChannel channel)//重新启动连通

近来:

package test.z.socket;import

java.nio.channels.SocketChannel; import

org.jkas.core.SocketClient;public class MySocketClient extends

SocketClient{

public MySocketClient() { }

public void OnConnection(SocketChannel sc) { }

public void OnMessage(SocketChannel sc,byte[] message)

{String msg=""; try { msg=new String(message);

}catch(Exception e) {msg=e.toString(); }

sendc("goods");

}

public void OnClose(SocketChannel sc) {System.out.println("socket close"); }

}

海南白癜风医院排行
广东癫痫医院哪家最好
肌肉酸疼用什么药最好
成都西部甲状腺专科医院
江西白癜风治疗医院
友情链接