客戶端和服務端物件的使用


YMP框架啟動時將自動掃描並載入宣告了@Server@Client註解的類,並根據註解設定和對應的參數配置進行客戶端或服務端物件的初始化,但此時的客戶端和服務端程式並沒有直正執行,需要手動完成啟動動作,程式碼如下:

  • 範例一:啟動所有已加載的客戶端、服務端服務

    public static void main(String[] args) throws Exception {
        YMP.get().init();
        //
        Servs.get().startup();
    }
  • 範例二:取得指定的客戶端或服務端服務,啟動服務並向服務端發送訊息

    public static void main(String[] args) throws Exception {
        YMP.get().init();
    
        // 获取服务端实例对象
        NioUdpServer _serv = Servs.get().getServer(UdpServer.class);
        // 启动服务
        _serv.start();
    
        // 获取客户端实例对象
        NioUdpClient _c = Servs.get().getClient(UdpClient.class);
        // 连接到远程服务
        _c.connect();
        // 通过客户端对象向服务端发送消息
        _c.send("Message from Client.");
    }

    #:YMP框架初始化過程中,若使用try...finally執行YMP.get() .destroy()銷毀動作,則服務剛啟動就被停止了。