JKAS开发框架系统设计文档6:网络操作—SOCKET
来源:行情 2023年03月12日 12:15
其余部分如下分析方法展开快捷键类的实现,可以不全部其余部分:
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"); }
}
。海南白癜风医院排行广东癫痫医院哪家最好
肌肉酸疼用什么药最好
成都西部甲状腺专科医院
江西白癜风治疗医院
-
贪吃,真的会“毁掉”健康吗?医师建议:适可而止更健康
米及其制品 饮品除了分作有充沛优质RNA和脂肪酸除此以均,分作钙幅度相当高,能用率高,今后居民饮肉之中钙分作幅度广泛偏低,今后成年人佝偻病病患相当多,这与钙元素排泄太低有关。