import javax.swing.*;import java.io.Serializable;import java.rmi.registry.LocateRegistry;import java.rmi.registry.Registry;public class Server implements Serializable{ public static void main(String[] args) { String test1= JOptionPane.showInputDialog(null,"Port(0-65535):","Port",JOptionPane.QUESTION_MESSAGE); int portnumber = tryParse(test1); if (portnumber !=0) { try { Registry reg = LocateRegistry.createRegistry(portnumber); //Creates and exports a Registry instance on the local host that accepts requests RmiImplementation imp = new RmiImplementation("C://ServerStorage"); reg.bind("remoteObject", imp); System.out.println("Server is ready."); System.out.println(portnumber); } catch (Exception e) { System.out.println("Server failed: " + e); } } } private static Integer tryParse(String text) { try { return Integer.parseInt(text); } catch (Exception e) { return 0; } }}上面的代码帮助我设置我的文件服务器。当应用程序运行时,会请求对话框端口号。如果我输入字母而不是数字,程序将停止运行,但我希望它继续并再次显示对话框。
1 回答
茅侃侃
TA贡献1842条经验 获得超21个赞
尝试使用do-while,
int portnumber = 0;
do {
String text= JOptionPane.showInputDialog(null,"Port(0-65535):","Port",JOptionPane.QUESTION_MESSAGE);
portnumber = tryParse(text);
}while(portnumber==0);
添加回答
举报
0/150
提交
取消