サーバサイド Java を用いた
Webデータベースアプリケーション の試作

日本大学文理学部

情報システム解析学科

谷 研究室 涌井 直貴

目次

研究の概要

サーバサイドJava

試作物の紹介

デモ

今後の課題

1-1. 研究目的

広領域情報学研究センターのプロジェクト，

デジタルアーカイブに関連して，その基本的な

しくみである，Webデータベースアプリケーション

を試作する

1.研究の概要

1-2. デジタルアーカイブ

デジタルアーカイブとは，

歴史・文化資産をデジタルの形で保存・蓄積し，

その情報を次世代に継承を図るとともに，

閲覧，鑑賞，研究のためにネットワークを通して

利用すること

1.研究の概要

1-3. デジタルアーカイブの意義

歴史・文化資産の寿命は物理的条件に左右される

1.研究の概要

1-3. デジタルアーカイブの意義

原本は一つしか存在しないため，閲覧が難しい

資料をデジタル化することにより，半永久的に

利用でき，また多くの人が閲覧できるようになる

1.研究の概要

データベース

2-1. 必要なソフトウェア

Java開発環境 JDK

Webサーバ

アプリケーションサーバ

リレーショナルデータベース

JDBC

2.サーバサイドJava

2-2. サーバサイドJavaとは

アプレットと比較する

アプレットとは，Webブラウザ上で動作する

Javaプログラムである

2.サーバサイドJava

ダウンロード要求

Webブラウザ

サーバ

web

サーバ

ダウンロード

アプレット

Java VM

Javaプログラム

実行

Javaプログラム

2-2. サーバサイドJavaとは

サーバサイドJavaとは，クライアント側で動作する

のではなく，サーバ側で動作するJavaプログラム

である

2.サーバサイドJava

Webブラウザ

サーバ

Java VM

URLを入力

（起動の要求）

Javaプログラム

web

サーバ

処理結果

実行

起動

結果を返却

データを表示

サーブレット

2-3. JSP（Java Server Pages）

Javaソースコードに，HTMLタグを埋め込む形式

2.サーバサイドJava

<%@page contentType=”text/html; charset=UTF-8”%>

<html>

<body>

<% out.println(“JSP”); %>

</body>

</html>

2-4. サーブレット（Servlet）

Javaソースコードに，HTMLタグを埋め込む形式

2.サーバサイドJava

import java.io.IOException;

import java.io.PrintWriter;

import javax.servlet.http.*;

public class ○○○ extends HttpServlet{

public void doGet(HttpServletRequest req, HttpServletResponse res)

res.setContentType(“text/html;charset=UTF-8”);

PrintWriter out = res.getWriter();

out.println(“<html><body>”);

out.println(“<h1>サーブレット</h1>”);

out.println(“</body></html>”);

out.flush();

out.close();

}

2-5. 連携

それぞれの長所を合わせ，

ロジックはサーブレット，表示はJSP

2.サーバサイドJava

Webブラウザ

サーブレット

JSP

処理結果

リクエスト

HTML

アプリサーバ

1+2=3

3を表示

2-6. JDBC

JDBC(Java DataBase Connectivity)とは

Javaプログラムからデータベースを操作するAPI

DBに依存しないプログラムをつくることができる

2.サーバサイドJava

Javaプログラム

PostgreSQL

用JDBC

MySQL

用JDBC

Oracle

用JDBC

PostgreSQL

MySQL

Oracle

2-7. サーバサイドJavaの利点

サーバサイドJavaには，Webに関連したクラスが用意されていて，Webアプリケーションの作成が比較的容易

オープンソースはもちろん，多くの商用データベースとも接続できる

2.サーバサイドJava

3-1. アンケート支援システム

本来なら，アンケート集計システムを完成させる

はずだったが，現時点ではまだ完成していない

本来有する機能

実行結果の入力，表示

それに対するアンケート収集

3.試作物の紹介

4-1. デモ

4.デモ

3-1. 今後の課題

アンケート集計システムの完成

卒業までに，新たなアプリケーションを作る

3.試作物の紹介

おしまい

ありがとうございました

また，長時間に渡り，お疲れ様でした

JSP（Java Server Pages）

Webブラウザ

サーバ

Java VM

URLを入力

Javaプログラム

web

サーバ

処理結果

実行

結果を返却

データを表示

Javaプログラム

サーブレット

JSP

サーブレット

に変換

リクエスト

レスポンス

Webブラウザ

サーバ

①接続を開始

接続を切断

ブラウザと

サーバの

関係が途切れる

②接続を開始

時間経過

ブラウザ

サーバ

ID=1234

ID=4321

ID=4321

ID=4321

ブラウザ

保持する

ID=4321

ID=1234

ID=1234

保持する

ID=1234

リクエスト

リクエスト

IDを生成

レスポンス

レスポンス

2004-11-26T16:31:13