snakeshapematrixclient.java

来自「java程序设计教程的源码」· Java 代码 · 共 47 行

JAVA
47
字号
//(3)创建客户端程序,其代码如例11-15所示。
//【例11-15】  客户端程序。
//程序清单11-15:  SnakeShapeMatrixClient.java
package rmi;

import java.rmi.*;

public class SnakeShapeMatrixClient {
	public static final int SIZE = 6;// 设置方阵大小

	public static void main(String[] argv) {
		String serverName = null;
		SnakeShapeMatrix snakeShapeMatrix = null;
		// 应用服务器的安全机制
		System.setSecurityManager(new RMISecurityManager());
		try {// 获取本地服务器的名字,在本地机器测试RMI通信
			serverName = java.net.InetAddress.getLocalHost().getHostName();
		} catch (Exception el) {
			el.printStackTrace();
		}
		try {// 根据远程接口取得服务器的对象
			snakeShapeMatrix = (SnakeShapeMatrix) Naming.lookup("//"
					+ serverName + "/SnakeShapeMatrixServer");
			System.out.println("客户端已与RMI服务器成功连接!");
			// 调用远程对象方法的showSnakeShapeMatrix()方法求解蛇形矩阵
			int[][] matrix = snakeShapeMatrix.getSnakeShapeMatrix(SIZE);
			System.out
					.println("由RMI服务器进程求解的台" + SIZE + " * " + SIZE + " 矩阵如下:");
			showSnakeShapeMatrix(SIZE, matrix);// 输出蛇形矩阵
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	private static void showSnakeShapeMatrix(int size, int matrix[][]) {
		for (int j = 0; j < size; j++) {// 输出蛇形矩阵的服务方法
			for (int k = 0; k < size; k++) {
				if (matrix[j][k] < 10)
					System.out.print("  " + matrix[j][k]);
				else
					System.out.print(" " + matrix[j][k]);
			}
			System.out.println("");
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?