roomclient.java
来自「100多M的J2EE培训内容」· Java 代码 · 共 141 行
JAVA
141 行
package com.borland.training.meetings.clients;import javax.naming.*;import javax.rmi.PortableRemoteObject;import java.util.Collection;import com.borland.training.meetings.entities.*;public class RoomClient { static RoomRemoteHome roomHome = null; static RoomRemote room = null; public RoomClient() { } public static void main(String[] args) { if(args.length != 1) { usage(); } Object ref; try { //get naming context Context ctx = new InitialContext(); //look up jndi name ref = ctx.lookup("meetings/RoomRemote"); //cast to Home interface roomHome = (RoomRemoteHome) PortableRemoteObject.narrow(ref, RoomRemoteHome.class); String command = args[0]; if(command.equals("create")) { create(); } else if(command.equals("use")) { use(); } else if(command.equals("remove")) { remove(); } else { usage(); } } catch(Exception e) { System.err.println("Exception caught"); e.printStackTrace(); } } private static void create() { try { String roomName = "1001"; System.out.println("Creating a new room with room name: " + roomName); room = roomHome.create(roomName, 10); roomName = "1011"; System.out.println("Creating a new room with room id: " + roomName); room = roomHome.create(roomName, 5); } catch(Exception e) { System.err.println("Exception caught"); e.printStackTrace(); } } private static void use() { try { String roomName = "1001"; try { room = roomHome.findByPrimaryKey(roomName); System.out.println("Room found"); System.out.println("Room name: " + room.getName()); System.out.println("Room capacity: " + room.getCapacity()); } catch(javax.ejb.ObjectNotFoundException e) { System.out.println("Room not found"); } System.out.println("Listing all rooms"); java.util.Iterator iterator = roomHome.findAll().iterator(); if(!iterator.hasNext()) { System.out.println("No rooms found"); } while(iterator.hasNext()) { RoomRemote room = (RoomRemote) javax.rmi.PortableRemoteObject.narrow(iterator.next(), RoomRemote.class); System.out.println("Found room: " + room.getName() + ", " + room.getCapacity()); } int minCapacity = 8; System.out.println("Listing all rooms with capacity greater than " + minCapacity); iterator = roomHome.findRoomsWithCapacityGreaterThan(minCapacity).iterator(); if(!iterator.hasNext()) { System.out.println("No rooms found"); } while(iterator.hasNext()) { RoomRemote room = (RoomRemote) javax.rmi.PortableRemoteObject.narrow(iterator.next(), RoomRemote.class); System.out.println("Found room: " + room.getName() + ", " + room.getCapacity()); } System.out.println("Total capacity of all rooms is " + roomHome.calculateTotalCapacity()); } catch(Exception e) { System.err.println("Exception caught"); e.printStackTrace(); } } private static void remove() { try { System.out.println("Removing all rooms"); java.util.Iterator iterator = roomHome.findAll().iterator(); if(!iterator.hasNext()) { System.out.println("No rooms"); } while(iterator.hasNext()) { RoomRemote room = (RoomRemote) javax.rmi.PortableRemoteObject.narrow(iterator.next(), RoomRemote.class); System.out.println("Removing room: " + room.getName()); room.remove(); } } catch(Exception e) { System.err.println("Exception caught"); e.printStackTrace(); } } private static void usage() { System.out.println("Usage: vbj RoomClient create | use | remove"); System.exit(1); }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?