「Java実践編」 第5回
ネットワークの利用
java.netパッケージの機能を用いて、
インターネット上の情報やデータの取得、
TCP/IPによる通信プログラムなどのサンプルを紹介します。
準備(学内向け):
各自のJavaの課題の作業用のディレクトリ java2 に移動しなさいなさい。
その中で以下の作業を行いなさい。
基本課題1:「自分のマシンの情報を調べる」
- ソースファイル
MyHost.java
(教科書 P.194-195)を作成しなさい。
- コンパイルできたら、実行し結果を確認しなさい。
基本課題2:「インターネット上のマシンの情報を調べる」
- ソースファイル
HostInfo.java
(教科書 P.195-196)を作成しなさい。
- コンパイルできたら、たとえば次のようにして実行し、結果を確認しなさい。
java HostInfo ultra01
java HostInfo www.wakhok.ac.jp
java HostInfo java.sun.com
java HostInfo 202.11.100.6
基本課題3:「URLで指定した資源の取得(テキスト)」
- ソースファイル
URLTextContent.java
(教科書 P.197)を作成しなさい。
- コンパイルできたら、たとえば次のようにして実行し、結果を確認しなさい。
java URLTextContent file:/etc/hosts
java URLTextContent http://www.wakhok.ac.jp/
基本課題4:「TCP/IPによる通信(サーバ側)」
- ソースファイル
MessageServer.java
(教科書 P.204-205)を作成しなさい。
ただし通信するメッセージの内容は、
必ず各自で工夫したものに変更すること。
- コンパイルできたら実行し、クライアントからの通信を待ちなさい。
(この実習時間中は起動したままにしておくこと。)
基本課題5:「TCP/IPによる通信(クライアント側)」
- ソースファイル
MessageClient.java
(教科書 P.203)を作成しなさい。
- コンパイルできたら、たとえば次のようにして自分のサーバに
接続できることを確認しなさい(引数に与えるマシン名は自分の座席のものを
指定すること。)
それが確認できたら、次に他のマシンで走っている MessageServer に接続できる
かも試してみなさい。
java MessageClient pc2f020
java MessageClient pc2f110
java MessageClient pc2f119
:
:
今週のレポート課題(学内用):
ここまでの課題が終わった人は、下記の項目を
tatsuo宛のメール
で報告しなさい。(Subjectは program22)
- 課題2:のプログラム(HostInfo)を使って、
www.kantei.go.jp(首相官邸のWWWサーバ)の IPアドレスを調べなさい。
- 課題5:の通信プログラム(MessageClient)で、
最低3人の人のサーバプログラムにアクセスしなさい。
相手のマシン名と
受け取ることができたメッセージの内容を送りなさい。
応用課題1:「URLで指定した資源の取得(画像)」
- ソースファイル
URLImageContent.java
(教科書 P.198-199)と
ImageViewer.java
(教科書 P.199-200)を作成しなさい。
- コンパイルできたら、たとえば次のようにして実行し、結果を確認しなさい。
java URLImageContent http://www.wakhok.ac.jp/hokusei.gif
応用課題2:「UDPによる通信」
- ソースファイル
PacketSender.java
(教科書 P.208-209)と
PacketReceiver.java
(教科書 P.209-210)を作成しなさい。
- 各プログラムをコンパイルしなさい。
- TCP/IPの場合と同じように2個のウィンドウを開き、
PacketReceiver と PacketSenderの通信を試してみなさい。
- 他の人とペアを作って、互いのマシン間でパケットを送る実験を
してみなさい。
実習の目次
今週の講義の内容