我對如何讓我的客戶端發送對象到服務器有一個理解問題。 所以我稱之爲 「RMIInterface」 和客戶端 「RMIClient」 和服務器的一個接口 「的RMIServer」 類:RMI:客戶端發送消息給服務器
RMIInterface
public interface RMIInterface extends Remote {
public String getMessage(String text) throws RemoteException;
}
RMIClient
public class RMIClient {
private void connectToServer() {
try {
Registry registry = LocateRegistry.getRegistry("127.0.0.1", 1099);
RMI rmi = (RMI) registry.lookup("server");
System.out.println("Connected to Server");
String text = rmi.getMessage("RMITest Message");
System.out.println(text);
} catch (Exception e) {
System.out.println(e);
}
}
public static void main(String[] args) {
RMIClient client = new RMIClient();
client.connectToServer();
}
}
的RMIServer
public class RMIServer extends UnicastRemoteObject implements RMIInterface {
public RMIServer() throws RemoteException {
super();
}
@Override
public String getMessage(String text) throws RemoteException {
return "Your message is: " + text;
}
public static void main(String[] args) {
try {
Registry registry = LocateRegistry.createRegistry(1099);
registry.rebind("server", new RMIServer());
System.out.println("Server started!");
} catch (Exception e) {
e.printStackTrace();
}
}
}
使用此程序,我可以使用客戶端連接到服務器,並在客戶端控制檯中打印消息。 我的問題是,我怎樣才能將消息從客戶端發送到服務器,並在服務器控制檯輸出中打印該消息?請提供最簡單的代碼示例
好的,但我怎樣才能連接到服務器,併發送對象到該方法內的服務器?我應該在sendMessage()中寫什麼代碼? – Alex230 2014-09-03 20:12:12
你能否給我一個代碼,然後我可以接受你的答案。謝謝! – Alex230 2014-09-03 20:21:41
快來吧。我已經告訴過你該怎麼做。我期望任何有能力的程序員都能夠把它變成一個方法聲明。 – EJP 2014-09-03 23:34:00