在Java中,是否存在类似于Python的socketserver的东西?

时间:2011-03-14 08:59:11

标签: java python sockets tcp

我正在用Java实现一个简单的TCP客户端和TCP服务器,在搜索示例时,我偶然发现了这个不错的Python框架:

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

编辑

我正在寻找一个解决方案,您可以通过这样的调用来创建TCP服务器:

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

所以,我有一个开箱即用的多线程服务器,我只需要实现RequestHandler(可能是某种需要handle方法的接口)。

Java中有类似的东西吗?它似乎使实现网络服务器变得非常简单和直接。

4 个答案:

答案 0 :(得分:3)

不是核心语言,没有。您必须在大多数语言中执行常规操作,您可以在其中设置侦听器,接受连接,检查输入等。

我确定有人为此建立了一个通用的“框架”,但老实说,它大约有40行代码,并且有很多教程可以显示它。

最类似的方法是使用java NIO类(1.4及更高版本)并使用Selector接受并轮询连接套接字上的新连接和输入。

答案 1 :(得分:1)

我在这里找到了与Python代码相似的内容(如在帖子中): http://javawork.org/examples/

 final SocketListener listener = new SocketListener( 6060 );
 listener.start();

答案 2 :(得分:0)

你是说像java中的ServerSocket? http://www.google.co.uk/search?q=java+serversocket+tutorials

如果看起来很复杂,可能会有一种更简单的方法。如果您有问题,我建议您提出更具体的问题。

答案 3 :(得分:0)

Java有很好的例子可以创建多线程服务器。我无法想象第三方API可以做些什么来使这更简单/更容易。