SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

連載記事

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

CodeZine BOOKS(コードジン・ブックス)は、CodeZineの連載からカットアップした、開発現場の課題解決に役立つ書籍シリーズです。

書籍に関する記事を見る

'); googletag.cmd.push(function() { googletag.pubads().addEventListener('slotRenderEnded', function(e) { var ad_id = e.slot.getSlotElementId(); if (ad_id == 'div-gpt-ad-1659428980688-0') { var ad = $('#'+ad_id).find('iframe'); if ($(ad).width() == 728) { var ww = $(window).width(); ww = ww*0.90; var style = document.createElement("style"); document.head.appendChild( style ); var sheet = style.sheet; sheet.insertRule( "#div-gpt-ad-1659428980688-0 iframe {-moz-transform: scale("+ww/728+","+ww/728+");-moz-transform-origin: 0 0;-webkit-transform: scale("+ww/728+","+ww/728+");-webkit-transform-origin: 0 0;-o-transform: scale("+ww/728+","+ww/728+");-o-transform-origin: 0 0;-ms-transform: scale("+ww/728+","+ww/728+");-ms-transform-origin: 0 0;}", 0 ); sheet.insertRule( "#div-gpt-ad-1659428980688-0 div{ height:"+(90*ww/728)+"px;width:"+728+"px;}", 0 ); } else { if ($(window).width() < 340) { var ww = $(window).width(); ww = ww*0.875; var style = document.createElement("style"); document.head.appendChild( style ); var sheet = style.sheet; sheet.insertRule( "#div-gpt-ad-1659428980688-0 iframe {-moz-transform: scale("+ww/320+","+ww/320+");-moz-transform-origin: 0 0;-webkit-transform: scale("+ww/320+","+ww/320+");-webkit-transform-origin: 0 0;-o-transform: scale("+ww/320+","+ww/320+");-o-transform-origin: 0 0;-ms-transform: scale("+ww/320+","+ww/320+");-ms-transform-origin: 0 0;}", 0 ); sheet.insertRule( "#div-gpt-ad-1659428980688-0 div{ height:"+(180*ww/320)+"px;width:"+320+"px;}", 0 ); } } } }); }); } else { document.write('
'); document.write('
'); }
WTPではじめるサーバサイドJava入門

サーバサイドJava入門 TomcatとEclipse WTPの導入手順

WTPではじめるサーバサイドJava入門 第1回


  • X ポスト
  • このエントリーをはてなブックマークに追加

Eclipse WTPの登場でサーバサイドJavaの開発は格段に楽になりました。このシリーズではEclipse WTPを使ったサーバサイドJava開発の方法を紹介します。まずは、開発環境であるTomcatサーバとWTPを導入します。

  • X ポスト
  • このエントリーをはてなブックマークに追加

はじめに

 現在、最も広くJavaが使われているのは「サーバ」の世界です。Javaの基礎は一通りわかった、次はサーバサイドだ――そう思ってやってみようとすると、これが以外に大変。サーバのプログラムはどうする? サーバ用のJavaってどうやって作る? 公開は? なかなか一筋縄ではいきません。

 そんな「サーバサイド・ビギナー」のために、サーバサイド開発のための基本的な機能を一通りそろえたオープンソースの開発環境「Eclipse Web Tools Platform(WTP)」を使い、サーバサイドの講座を始めることとしました。「Javaは一通りわかったけど、サーバサイドって?」というあなた、一緒にサーバの世界を勉強していきましょう。

対象読者

  • Javaの基本(文法全般および基本的なクラスライブラリの使い方程度)をマスターしている人。
  • サーバサイド(JSP、サーブレット)について基礎から勉強したい人。
  • Eclipse WTPを使った開発に興味がある人。

サーバサイドJavaとは?

 「Javaは、サーバで広く使われている」とは、よく耳にする言葉です。Javaの基礎は大体わかった、となると、次に進むのはやっぱり「サーバサイドのJava」でしょう。しかし、そもそもサーバサイドJavaとは、どういうものなのでしょう。何が普通のJavaとは違うのでしょうか。

 サーバサイドJavaの最大の特徴、それは「いくつもの技術の組み合わせである」という点です。基本的に「普通のJava」というのはmainメソッドを定義して実行するという、「プログラムの形」がはっきり決まっています。しかし、サーバサイドJavaは単純なものではありません。サーバの世界では、その役割に応じていくつかのプログラムの形態があるのです。

 サーバサイドJavaを学ぶということは、それらのさまざまな技術を1つ1つ理解し身につけていくということになります。一体、どんな技術があるのか、ちょっと整理しましょう。

  • Java Server Pages
    一般に「JSP」と呼ばれます。HTML内にタグを使ってJavaのソースコードを直接記述するもので、PHPなどのようなスクリプト言語感覚でJavaを使うことができます。サーブレットコンテナと呼ばれるJavaのサーバで動作します。
  • サーブレット
    サーバサイドJavaの基本とも言えるものです。Javaサーバ(サーブレットコンテナ)の中で動くようになっており、ブラウザ内で動くアプレットのサーバサイド版といったところから「サーブレット」と呼ばれます。
  • Enterprise Java Beans
    一般に「EJB」と呼ばれます。JSPやサーブレットなどと異なり、サーブレットコンテナでは動きません。J2EEサーバで動作するようになっています。サーバで動作するJavaBeansであり、直接ブラウザでアクセスするというのでなく、プログラム内からEJBにアクセスして利用するような形態をとります。

 以上の3つが、サーバサイドJavaを構成する最も重要な技術と考えてよいでしょう。この内、JSP/サーブレットと、EJBは、若干扱いが違います。用途や役割はもちろんですが、JSP/サーブレットが動作する環境とEJBが動作する環境は異なっているのです。そのため、一般的にはサーバサイドJavaは「JSP/サーブレット」と「EJB」の2つに分けて考えられることが多いようです。

 通常のWebアプリケーション開発ならば、JSPとサーブレットがマスターできれば十分です。EJBは、エンタープライズ開発で使われるものと考えてよいでしょう。本連載でも、JSPとサーブレットが使えるようになることを目指していきます。両者を自由に使いこなせるようになれば、「サーバサイドビギナー卒業」と言えるでしょう。

サーブレットコンテナについて

 ここからはJavaの基本はわかっている前提で説明を進めますので、JRE/JDKについては既にインストール済みとします。まだインストールしていない方は別途用意してください。

 まず、JSP/サーブレットといったサーバサイドJavaを自分で学習するためにはどのようなものが必要になるでしょうか。1つは、「サーブレットコンテナ」です。これは、JSP/サーブレットが動作する環境となるソフトウェアです。

 そもそも、「サーバでプログラムを動かす」というのは、普通のアプリケーションに比べてかなり面倒であることは想像できることでしょう。ネットワークからHTTPのプロトコルで情報を受け取り、そこから送信された情報やヘッダー情報に含まれる各種のデータなどを解析して……などという処理をすべて一から作らなければならないとしたら大変な作業になります。

 そこで、最初からHTTPプロトコルを使ったデータの送受を行う基本的な仕組みを用意しておき、その中で「この部分に当てはまるプログラムを用意すれば、すべての処理が完成する」という枠組みを考えたのです。これがサーブレットコンテナであり、この「当てはまる部分」がサーブレットというわけです。

 このように、サーバ側でクライアントからの要求を受け取り、送り返すための基本的な仕組みをあらかじめ用意しておくことで、必要最低限のコードさえ用意すればサーバサイドの処理が実現できるようになっています。

 このサーブレットコンテナは、有償無償いろいろなものがリリースされています。最も広く使われているのは、Apache Software Foundationがリリースしている「Tomcat」でしょう。これは今やサーブレットコンテナの代名詞ともなっているものですから、名前ぐらいは聞いたことがあると思います。オープンソースであり、Apacheのサイトから無償でダウンロードして利用できることから広く普及しています。本稿でもTomcatを使用することにします。

Tomcatの入手

 まずは以下のURLにアクセスして、Tomcatをダウンロードしてください。Windowsの場合、専用のインストーラが用意されているので、これを利用するとよいでしょう。

Tomcatのサイト。左側にあるリンクから最新版の「Tomcat 5.x」をクリックする。
Tomcatのサイト。左側にあるリンクから最新版の「Tomcat 5.x」をクリックする。

 上記URLが、Tomcatのサイトです。この左側にある「Download」から「Tomcat 5.x」というリンクをクリックし、「Quick Navigation」というところにある最新バージョン(2007年4月現在「5.5.23」)をクリックすると、そのバージョンのダウンロードコーナーにジャンプします。そこから「Binary Distributions」にある「Windows Service Installer」というリンクをクリックし、Windows用のインストーラをダウンロードします。

「5.5.23」のところにある「Windows Service Installer」をクリックしてダウンロードする。
「5.5.23」のところにある「Windows Service Installer」をクリックしてダウンロードする。

 現在、Tomcatの最新版は6.xというものになります。なぜ一つ前の5.5番台を使うかのかというと、この後で登場する「Eclipse」という開発環境で、まだ6.0がサポートされていないためです。ですが、JSPとサーブレットの基本を学ぶという目的からすれば5.5でも十分ですので、今回はこのバージョンを使用します。

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
Tomcat 5.5のインストール

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
WTPではじめるサーバサイドJava入門連載記事一覧

もっと読む

この記事の著者

掌田 津耶乃(ショウダ ツヤノ)

三文ライター&三流プログラマ。主にビギナーに向けたプログラミング関連の執筆を中心に活動している。※現在、入門ドキュメントサイト「libro」、カード型学習サイト「CARD.tuyano.com」を公開...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/1287 2008/08/22 19:01
" ); }

おすすめ

アクセスランキング

  1. 1
    デスクトップアプリを開発しよう! 「Rust」と「Tauri 2.0」の基本情報と環境整備の仕方を解説
  2. 2
    アジャイル開発の推進において、必ずしも"すごい人"は必要ない──現場のエンジニアがDevOps推進で実現する組織改革
  3. 3
    "けしからん"精神が切り拓く未来──IPA登氏が語る、技術大国・日本が目指す復活戦略
  4. 4
    JavaScriptのWebフレームワーク、「Astro 5.1」リリース
  5. 5
    デスクトップアプリ開発に必要な「Rust」の文法を理解しよう
  1. 6
    Linuxディストリビューション「Serpent OS」、アルファ版がリリース
  2. 7
    Google、社内AIエージェント「Google Agentspace」発表
  3. 8
    AWS、ノーコードで生成AIアプリを作れる「PartyRock」の新機能を紹介、2025年以降は無料で誰でも利用できるように
  4. 9
    生成AI時代に求められるエンジニア像とは? 2024年CodeZine人気記事ランキング
  5. 10
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」

アクセスランキング

  1. 1
    デスクトップアプリを開発しよう! 「Rust」と「Tauri 2.0」の基本情報と環境整備の仕方を解説
  2. 2
    アジャイル開発の推進において、必ずしも"すごい人"は必要ない──現場のエンジニアがDevOps推進で実現する組織改革
  3. 3
    "けしからん"精神が切り拓く未来──IPA登氏が語る、技術大国・日本が目指す復活戦略
  4. 4
    JavaScriptのWebフレームワーク、「Astro 5.1」リリース
  5. 5
    デスクトップアプリ開発に必要な「Rust」の文法を理解しよう
  6. 6
    Linuxディストリビューション「Serpent OS」、アルファ版がリリース
  7. 7
    Google、社内AIエージェント「Google Agentspace」発表
  8. 8
    AWS、ノーコードで生成AIアプリを作れる「PartyRock」の新機能を紹介、2025年以降は無料で誰でも利用できるように
  9. 9
    生成AI時代に求められるエンジニア像とは? 2024年CodeZine人気記事ランキング
  10. 10
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」
  1. 1
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」
  2. 2
    「CUDA」 ~マンガでプログラミング用語解説
  3. 3
    デスクトップアプリを開発しよう! 「Rust」と「Tauri 2.0」の基本情報と環境整備の仕方を解説
  4. 4
    アジャイル開発の推進において、必ずしも"すごい人"は必要ない──現場のエンジニアがDevOps推進で実現する組織改革
  5. 5
    ITエンジニア本大賞2025、投票締切直前! みんなで選んだ歴代の大賞本を振り返って一挙紹介
  6. 6
    Google、社内AIエージェント「Google Agentspace」発表
  7. 7
    デスクトップアプリ開発に必要な「Rust」の文法を理解しよう
  8. 8
    "けしからん"精神が切り拓く未来──IPA登氏が語る、技術大国・日本が目指す復活戦略
  9. 9
    JavaScriptのWebフレームワーク、「Astro 5.1」リリース
  10. 10
    日本在住の英語を話すソフトウェア開発者、年収の中央値は950万円に

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

メールバックナンバー

アクセスランキング

  1. 1
    デスクトップアプリを開発しよう! 「Rust」と「Tauri 2.0」の基本情報と環境整備の仕方を解説
  2. 2
    アジャイル開発の推進において、必ずしも"すごい人"は必要ない──現場のエンジニアがDevOps推進で実現する組織改革
  3. 3
    "けしからん"精神が切り拓く未来──IPA登氏が語る、技術大国・日本が目指す復活戦略
  4. 4
    JavaScriptのWebフレームワーク、「Astro 5.1」リリース
  5. 5
    デスクトップアプリ開発に必要な「Rust」の文法を理解しよう
  1. 6
    Linuxディストリビューション「Serpent OS」、アルファ版がリリース
  2. 7
    Google、社内AIエージェント「Google Agentspace」発表
  3. 8
    AWS、ノーコードで生成AIアプリを作れる「PartyRock」の新機能を紹介、2025年以降は無料で誰でも利用できるように
  4. 9
    生成AI時代に求められるエンジニア像とは? 2024年CodeZine人気記事ランキング
  5. 10
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」

アクセスランキング

  1. 1
    デスクトップアプリを開発しよう! 「Rust」と「Tauri 2.0」の基本情報と環境整備の仕方を解説
  2. 2
    アジャイル開発の推進において、必ずしも"すごい人"は必要ない──現場のエンジニアがDevOps推進で実現する組織改革
  3. 3
    "けしからん"精神が切り拓く未来──IPA登氏が語る、技術大国・日本が目指す復活戦略
  4. 4
    JavaScriptのWebフレームワーク、「Astro 5.1」リリース
  5. 5
    デスクトップアプリ開発に必要な「Rust」の文法を理解しよう
  6. 6
    Linuxディストリビューション「Serpent OS」、アルファ版がリリース
  7. 7
    Google、社内AIエージェント「Google Agentspace」発表
  8. 8
    AWS、ノーコードで生成AIアプリを作れる「PartyRock」の新機能を紹介、2025年以降は無料で誰でも利用できるように
  9. 9
    生成AI時代に求められるエンジニア像とは? 2024年CodeZine人気記事ランキング
  10. 10
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」
  1. 1
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」
  2. 2
    「CUDA」 ~マンガでプログラミング用語解説
  3. 3
    デスクトップアプリを開発しよう! 「Rust」と「Tauri 2.0」の基本情報と環境整備の仕方を解説
  4. 4
    アジャイル開発の推進において、必ずしも"すごい人"は必要ない──現場のエンジニアがDevOps推進で実現する組織改革
  5. 5
    ITエンジニア本大賞2025、投票締切直前! みんなで選んだ歴代の大賞本を振り返って一挙紹介
  6. 6
    Google、社内AIエージェント「Google Agentspace」発表
  7. 7
    デスクトップアプリ開発に必要な「Rust」の文法を理解しよう
  8. 8
    "けしからん"精神が切り拓く未来──IPA登氏が語る、技術大国・日本が目指す復活戦略
  9. 9
    JavaScriptのWebフレームワーク、「Astro 5.1」リリース
  10. 10
    日本在住の英語を話すソフトウェア開発者、年収の中央値は950万円に