2.1 Java RMI public interface Hello extends Remote { public String sayHello() throws RemoteException; } public class HelloImpl extends UnicastRemoteObject implements Hello { public HelloImpl() throws RemoteException { super(); } public String sayHello() throws RemoteException { return "Hello, world!"; } } public class Server { public static void main(String[] args) throws Exception { Hello hello = new HelloImpl(); LocateRegistry.createRegistry(1099); Naming.bind("Hello", hello); System.out.println("Server started."); } } public class Client { public static void main(String[] args) throws Exception { Hello hello = (Hello) Naming.lookup("rmi://localhost/Hello"); String message = hello.sayHello(); System.out.println(message); } } 2.2 Java Socket public class Server { public static void main(String[] args) throws Exception { ServerSocket serverSocket = new ServerSocket(8888); System.out.println("Server started."); while (true) { Socket socket = serverSocket.accept(); ObjectOutputStream oos = new ObjectOutputStream(socket.getOutputStream()); ObjectInputStream ois = new ObjectInputStream(socket.getInputStream()); String request = (String) ois.readObject(); String response = "Hello, " + request + "!"; oos.writeObject(response); oos.close(); ois.close(); socket.close(); } } } public class Client { public static void main(String[] args) throws Exception { Socket socket = new Socket("localhost", 8888); ObjectOutputStream oos = new ObjectOutputStream(socket.getOutputStream()); ObjectInputStream ois = new ObjectInputStream(socket.getInputStream()); String request = "world"; oos.writeObject(request); String response = (String) ois.readObject(); System.out.println(response); oos.close(); ois.close(); socket.close(); } } 2.3 Java HTTP public class Server { public static void main(String[] args) throws Exception { HttpServer server = HttpServer.create(new InetSocketAddress(8888), 0); server.createContext("/hello", new HttpHandler() { public void handle(HttpExchange exchange) throws IOException { String request = exchange.getRequestURI().getQuery(); String response = "Hello, " + request + "!"; exchange.sendResponseHeaders(200, response.getBytes().length); OutputStream os = exchange.getResponseBody(); os.write(response.getBytes()); os.close(); } }); server.start(); System.out.println("Server started."); } } public class Client { public static void main(String[] args) throws Exception { URL url = new URL("http://localhost:8888/hello?name=world"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("GET"); InputStream is = conn.getInputStream(); byte[] buffer = new byte[1024]; int length = is.read(buffer); String response = new String(buffer, 0, length); System.out.println(response); is.close(); conn.disconnect(); } }


上一篇:
下一篇:
切换中文