![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
CSFrameWork
CSFrameWork
魔幻音
如果世界上真的有奇迹,那只是努力的另一个代名词。
展开
-
(JAVASE)CSFrameWork详解(Client及ClientConversation)
ClientConversation继承于communication,所以在该层就该将抽象方法具体实现,完善其对信息的具体操作。 client是提供给app层调用的类,其包含的方法都是发出请求,实际是调用了conversation里的方法通过communication向服务端发信息。 conversation层处理信息的发出和接受,发出是提供给client层并进一步给app层使用的,信息的接受就是完成dealNetMessage抽象方法的实现,对应不同的command调用适配器中的不同方法。 首先对于所有的原创 2021-01-18 15:20:52 · 190 阅读 · 0 评论 -
(JAVASE)CSFrameWork详解(NetMessage)
按照原本socket所提供的writeUTF以及readUTF方法,底层communication传输接受的数据本应是字符串类型的,但是对于字符串类型想要规定一个信息格式太过于复杂,所以创建了一个NetMessage类用于规范信息格式。 组成: private ENetCommand command; private String source; private String target; private String action; private String message; 总共由5部分原创 2021-01-18 12:43:20 · 260 阅读 · 0 评论 -
(JAVASE)CSFrameWork详解(communication层及笼统概述)
首先先引入一个配置文件 public interface INetConfig { String ip = "127.0.0.1"; int port = 54123; default void close(InputStream is, OutputStream os, Socket socket) { if (null != is) { try { is.close(); } catch (IOException e) { } finally { is =原创 2021-01-18 12:26:28 · 193 阅读 · 0 评论 -
(JAVASE)CSFrameWork详解(Request处理、action、反射机制)
在app层,会有许多由开发者书写的新方法,这些方法是无法从底层预支的,但是在底层代码书写请求、回复等操作时,应该对应不同action,调用其处理方法。 相当于对action的处理,基于反射机制调用未来配置的方法。 而这些方法的获取此次通过解析xml实现,如: <actions> <action name="login" class="StudentAction" method="login"> <parameter name="id" type="string">&原创 2021-01-20 15:39:46 · 170 阅读 · 0 评论 -
(JAVASE)CSFrameWork详解(整体工作图解)
连接过程: 服务端通过start命令开启运转,但并未开始监听,当运行到start中线程的启动时,伴随run方法开始监听客户端介入请求。 客户端开启,由config文件记录服务器ip及端口,通过服务器ip、端口建立一个socket,并且实例化ClientConversation,将socket及Client本身传进去(socket为底层信息传递作用,Client加入为了使Client层与conversation层交互更加方便及以便使用Client中还未定义,等未来定义的方法)。 当socket建立好,即发送.原创 2021-01-19 19:56:14 · 286 阅读 · 0 评论 -
(JAVASE)CSFrameWork详解(Server及ServerConversation、观察者视角)
在一个服务器里做到对多个客户端的管理,可以通过map实现。 public class ServerConversationPool { private Map<String, ServerConversation> conversationPool; ServerConversationPool() { this.conversationPool = new HashMap<>(); } void addClient(ServerConversation clie原创 2021-01-18 16:22:01 · 126 阅读 · 0 评论