2011-03-14 66 views
4

我目前用Java實現一個簡單的TCP客戶端和TCP服務器,併爲實例搜索時,我經歷了這個漂亮的Python框架跌跌撞撞:在Java中,是否存在與Python的socketserver相媲美的東西?

http://docs.python.org/library/socketserver.html

編輯

我正在尋找一個解決方案,你可以做這樣一個呼叫建立的TCP服務器:

TCPServer server = new TCPServer(port, RequestHandler); 
server.serveForever(); 

所以,我有一個multihr這是一個開箱即用的服務器,我只需要實現RequestHandler(可能是某種需要處理方法的接口)。

Java中是否有類似的東西?它似乎使實施網絡服務器非常簡單直接。

回答

3

不是核心語言,沒有。你必須在你設置聽衆,接受連接,檢查輸入等多數語言中做正常的事情。

我確定有人爲此建立了一個通用「框架」,但老實說,它大約有40行代碼,並且有很多教程可以顯示它。

最類似的方法是使用Java NIO類(1.4及更高版本)並使用Selector來接受並輪詢連接套接字上的新連接和輸入。

+0

注來自java.nio包的Selector類是爲單線程/非阻塞IO設計的。 – barjak 2011-03-14 10:38:40

1

我發現類似於這裏什麼東西上面的Python代碼可以做(如在您的文章): http://javawork.org/examples/

final SocketListener listener = new SocketListener(6060); 
listener.start(); 
相關問題