2009年1月4日日曜日

Java RMI-JRMPのHelloWorld

SCJDでRMIを使うのでHelloWorldのサンプルを書いてみました。
RMIとはRemoteMethodInvocationの略でJavaを使って他のコンピュータと通信を行うAPIです。
以下のHelloWorldを使えば通信ができるでしょう
  • HelloWorld.java

import java.rmi.Remote;
import java.rmi.RemoteException;

/**
* リモートインターフェイス
*/
interface HelloWorld extends Remote{
String sayHelloWorld() throws RemoteException;
}

  • HelloWorldObj.java
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;

/**
* リモートオブジェクト
*/
public class HelloWorldObj extends UnicastRemoteObject implements HelloWorld{

private static final long serialVersionUID = 1L;

public HelloWorldObj() throws RemoteException{
super();
}

public String sayHelloWorld(){
return "Hello World";
}

}


  • HelloWorldServer.java
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;

/**
* サーバ
*/
public class HelloWorldServer {

public static void main(String args[]){
try {
Registry reg = LocateRegistry.createRegistry(1099);
HelloWorld obj = new HelloWorldObj();
reg.rebind("Hello", obj);
} catch (Exception e) {
e.printStackTrace();
}
}

}

  • HelloWorldClient.java

import java.rmi.Naming;

/**
* クライアント
*/
public class HelloWorldClient {

public static void main(String args[]){
HelloWorld obj = null;
try{
obj = (HelloWorld)Naming.lookup("rmi://localhost:1099/Hello");
System.out.println(obj.sayHelloWorld());
}catch(Exception e){
e.printStackTrace();
}
}
}


これを動かすのもよいけどちゃんとやりたい人はGetting Started Using JavaTM RMIを見たほうがいいかもしれません。

2009年1月1日木曜日

あけましておめでとうございます。

2009年がはじまりました。

ところで2008年の目標を振り返ってみましょう。

  • カミングアウトする。→奇跡的に達成しました!
  • 会社を続ける。→これもなんとか達成しました!

  • SCJDとる。→とれませんでした。。今、課題を作ってるところです。

  • ソフ開とる。→結局受けませんでした。次からは試験の名前も変わってしまうみたいですね。
という感じです。

去年は背中が痛くなるというハプニングもあったりしたので
今年は何はともあれ健康的に生きていきたいと思います。

というわけで

今年もよろしくお願いいたします。