prev head next
3−2 処理の流れ
本システムの大まな流れをサーバ・クライアント間のデータの流れに沿ってまとめ
ました。表現はクライアントから見た動きになっています。
利用者がが本システムのURLにアクセスする。
サーバより、クラスをダウンロード、アプレット起動し、初期化処理
1)初期交渉
バージョン、データ種別のサーバとの交渉、セッションIDの取得
2)実行データの取得
質問・回答データのサーバよりの取得、質問実施画面の作成
をおこないます。
以降このアプレットはここで取得したセッションIDで管理されます。
利用者が回答者情報を記入し、送信キーを押下する。
3)ユーザデータの送信
ユーザ情報をサーバに送信し、サーバ側でDBに書きこまれます。
利用者が全質問に答え、ボタンを押下
4)回答結果の送信、スコアデータの取得
クライアントより回答結果が送信され、サーバは回答DBに書きこみスコア
を集計します。上位5位までのスコア値、リゾート名と最高スコアのリゾー
トの説明文をクライアントに返します。
クライアントはその情報を表示します。
メソッドフロー
init()
|
+beforの表示
|
+addListener gogo() 開始ボタン
|
+addListenr bgo() 進むボタン
|
+addListener bback() 戻るボタン
gogo()
|
+conn() 初期交渉(post1.cgi)
|
+init_set() 実行環境設定
| |
| +getqa() 質問・回答情報のサーバからの取得 (post2-1.cgi)
| |
| +makqg() 質問・回答画面作成
|
+hyozi() カレント画面の入れ替え表示
bgo() 画面を前進させる処理
|
+goact() カレントな画面に付随する前進処理
|
+ hyozi() カレント画面の入れ替え表示
bback() 画面を後退させる処理
|
+bback() カレントな画面に付随する後退時の処理
|
+hyozi() カレント画面の入れ替え表示
Base.goact() 入力チェックおよび基本情報の送信
|
+ sendbase() 基本情報のサーバへの送信 (post2-2.cgi)
QAG.goact() 入力データチェックおよび基本情報の送信
|
◇−+ 次画面がKekkaか?
|
+ Yes
|
+sendget() 回答結果を送信し、候補情報を得る (post3.cgi)
クライアントからのデータ渡し、サーバ側の処理起動はすべてサーバCGIの起動
で実現されていて。処理毎に接続は切断されるので、各処理間のつながりをもたせ
るために、1)の処理でサーバ側でセッションIDを発行し、アプレットはその値を
保持しています。サーバ側CGI起動時にそのセッションIDを逐次送信し、処理間
の同期をとります。
prev head next