快速入门 - Helloworld
本例基于 java 演示
1、引入依赖包
选一个基于 BIO 实现的最小依赖(100kb 左右)。更多传输适配包见:《Socket.D - Java 开发》
<dependency>
<groupId>org.noear</groupId>
<artifactId>socketd-transport-java-tcp</artifactId>
<version>2.5.12</version>
</dependency>
2、编写服务端
监听消息,不分事件只做一个简单的打印。
public class ServerDemo {
public static void main(String[] args) throws Throwable {
//::启动服务端
SocketD.createServer("sd:tcp")
.config(c -> c.port(8602))
.listen(new SimpleListener(){
@Override
public void onMessage(Session session, Message message) throws IOException {
//打印
System.out.println(message);
}
})
.start();
}
}
3、编写客户端
打开会话后,发送一个 "Hello wrold!" 的消息包。并通过元信息,申明用户是 "noear"
public class ClientDemo {
public static void main(String[] args) throws Throwable {
//::打开客户端会话
ClientSession session = SocketD.createClient("sd:tcp://127.0.0.1:8602/?token=1b0VsGusEkddgr3d")
.open();
Entity entity = new StringEntity("Hello wrold!").metaPut("user","noear");
//发送
session.send("/demo", entity);
//发送并请求(且,等待答复)
Entity reply = session.sendAndRequest("/demo", entity).await();
//发送并订阅(且,接收答复流)
session.sendAndSubscribe("/demo", entity).thenReply(reply->{
});
}
}
4、运行
先运行 ServerDemo::main
函数。启动完成后,再运行 ClientDemo::main
。