mina的簡單例子

2022-04-09 02:11:15 字數 1590 閱讀 7308

簡單例子:

客戶端:

// 建立客戶端聯結器.

niosocketconnector connector = new niosocketconnector();

connector.getfilterchain().addlast("logger", new loggingfilter());

// 設定編碼過濾器

connector.getfilterchain().addlast(

"codec",

new protocolcodecfilter(new textlinecodecfactory(charset

.forname("utf-8"))));

connector.setconnecttimeout(30);

// 設定事件處理器

connector.sethandler(new clienthandler());

// 建立連線

connectfuture cf = connector.connect(new inetsocketaddress("127.0.0.1",

9100));

// 等待連線建立完成

cf.awaituninterruptibly();

// 傳送訊息

cf.getsession().write("hello");

// 等待連線斷開

cf.getsession().getclosefuture().awaituninterruptibly();

connector.dispose();

伺服器:

ioacceptor acceptor = new niosocketacceptor();

acceptor.getfilterchain().addlast("logger", new loggingfilter());

// 指定編碼過濾器

acceptor.getfilterchain().addlast(

"codec",

new protocolcodecfilter(new textlinecodecfactory(charset

.forname("utf-8"))));

// 指定業務邏輯處理器

acceptor.sethandler(new serverhandler());

// 設定埠號

acceptor.setdefaultlocaladdress(new inetsocketaddress(9100));

// 啟動監聽

acceptor.bind();

server 處理器

class serverhandler extends iohandleradapter

@override

public void messagereceived(iosession session, object message)

throws exception

date date = new date();

// 返回當前時間的字串

session.write(date.tostring());

}}

MINA2 0簡單使用

一直知道mina是apache 開發的乙個開發socket程式設計框架,但一直沒弄清楚mina2.0裡的多執行緒該如何處理,根據apache提供的文件,使用mina2.0開發多執行緒的程式變的非常簡單,只用在其filter中加入執行緒池就可以了,感覺挺神奇,於是參考apache的其他專案,寫了個小例...

mina的伺服器與客戶端的例子

1 伺服器端 public class minaserver catch ioexception e 2 伺服器的業務邏輯處理 public class minaserverhandler extends iohandleradapter override public void messagere...

簡單的makefile例子

1.2.3 簡單的示例 本小節開始我們在第一小節中提到的例子。此例子由3個頭檔案和8個c檔案組成。我們講述寫乙個簡單的makefile,來描述如何建立最終的可執行檔案 edit 此可執行檔案依賴於8個c原始檔和3個頭檔案。makefile檔案的內容如下 sample makefile edit ma...