/*
* SampleServer.java
* クライアントから送信された年齢を元に飲酒の可否を判定し、
* その結果を送り返すサーバー
*/
import java.io.*; // 入出力関連パッケージを利用する
import java.util.*; // ユーティリティパッケージを利用する
import java.net.*; //ネットワーク関連のパッケージを利用する
public class SampleServer{
/*メイン・メソッド
* 接続要求のあったクライアントに対して接続を行い
* クライアントから送られる年齢を受信し、その年齢を元に
* 飲酒の可否を判定した結果をクライアントに対して送信する
*/
public static void main(String arg[]){
try{
/* 通信の準備をする */
ServerSocket server =
new ServerSocket(8000); //ポート番号を指定し、クライアントとの接続の準備を行う
Socket socket = server.accept(); //クライアントからの接続要求を待ち、
// 要求があればソケットを取得し接続を行う
/* 年齢を受信する */
ObjectInputStream ois =
new ObjectInputStream(socket.getInputStream());
Integer data = (Integer)ois.readObject();
int age = data.intValue();
/* 飲酒の可否を判定する */
String message;
if(age>=20){
message = "OK";
}else{
message = "NO";
}
/* 判定結果をクライアントに送信する */
ObjectOutputStream oos =
new ObjectOutputStream(socket.getOutputStream());
oos.writeObject(message);
oos.flush();
}// エラーが発生したらエラーメッセージを表示してプログラムを終了する
catch(Exception e){ System.out.println("エラーが発生したのでプログラムを終了します") ;}
}
}
|
>>第8講・その2(3)に戻る