如何创建基本的Java Server?
基本上我想要一个可以连接多个人的基本Java服务器,并且当其中一个连接的客户端(已经在Obj-c中编码)向其发送数据时,它会将其发送回所有连接的人。
我是一个真正的Java新手,我不会在可预见的未来需要Java而不是这样,所以我希望尽快让它出来,而不是从头开始正确地学习Java。 因此,如果任何人有一些这方面的源代码或者教程,我将不胜感激。
谢谢:) Ozzie
这是一个简单的“Knock Knock”服务器,由Sun提供:
import java.net.*; import java.io.*; public class KnockKnockServer { public static void main(String[] args) throws IOException { ServerSocket serverSocket = null; try { serverSocket = new ServerSocket(4444); } catch (IOException e) { System.err.println("Could not listen on port: 4444."); System.exit(1); } Socket clientSocket = null; try { clientSocket = serverSocket.accept(); } catch (IOException e) { System.err.println("Accept failed."); System.exit(1); } PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true); BufferedReader in = new BufferedReader( new InputStreamReader( clientSocket.getInputStream())); String inputLine, outputLine; KnockKnockProtocol kkp = new KnockKnockProtocol(); outputLine = kkp.processInput(null); out.println(outputLine); while ((inputLine = in.readLine()) != null) { outputLine = kkp.processInput(inputLine); out.println(outputLine); if (outputLine.equals("Bye.")) break; } out.close(); in.close(); clientSocket.close(); serverSocket.close(); } }
你不能比这简单得多。
Sun提供了一个简单的教程:
http://java.sun.com/developer/onlineTraining/Programming/BasicJava2/socket.html#server
它从上面的基本单线程开始,并根据需要扩展为使用多个。
尝试使用Jetty服务器API。 http://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty看起来是一个很好的起点……
我做了一个Java程序,基本上在客户端和服务器之间实现了一种聊天。 使用套接字打开将听到传入连接的服务器端口。 您应该有一个线程听到它们并在有效连接进入时调用操作。
您可能需要使用serversocket类。