LoginSignup
32
46

More than 5 years have passed since last update.

springの再入門 - eclipseでスタート

Last updated at Posted at 2016-06-02

eclipseの設置

入手方法

  • 本家やミラサイトからダウンロードして設置する。
  • homebrewで設置する。

設置

本家やミラサイトからダウンロードして設置
ここから「Eclipse IDE for Java EE Developers」をダウンロードして圧縮を解凍すれば設置が終わる。

% tar zxf eclipse-jee-mars-2-macosx-cocoa-x86_64.tar.gz -C ~/Applications/

本家サイトよりミラサイトやメンバーサイトのほうが早いので、そちらのサイトからダウンロードすることを推奨する。

install_eclipse.png

install_eclipse_download.png

homebrewで設置
homebrewで設置する場合、brewで管理することができるので便利だが時間が掛かりすぎる。
ミラサイトからダウンロードして設置することを推奨するが、homebrewの設置方法も一応書いておく。

brew caskからeclipseで検索してみるといろんなものが出てくる。
eclipseはプラットフォームであり、言語ことにプラグインを設置することによってその言語の開発環境が用意される。
eclipse-jeeかeclipse-php、eclipse-javaのいずれか設置すればいいだろう。
因みにeclipse-jeeはjava eeの開発環境、eclipse-phpはphpの開発環境、eclipse-javaはjava seの開発環境がデフォルトでeclipseに組み込まれている。
ここではeclipse-jeeで設置する。

% brew cask search eclipse
==> Partial matches
eclipse-cpp     eclipse-installer   eclipse-jee     eclipse-php     eclipse-ptp     nodeclipse
eclipse-ide     eclipse-java    eclipse-modeling    eclipse-platform    eclipse-rcp

% brew cask install eclipse-jee

当然な話だが、eclipseはjavaアプリケーションなので、jdkやjreが設置されていない場合は動作しない。
設置されていない人はbrewでjavaを設置する。

% brew cask install java

STS(Spring Tool Suite)

  • eclipseをベースにしたspring frameworkを利用するための専用開発ツール
  • ようするにeclipseをベースにしてSTSというプラグインを設置すればspringの開発環境が用意されるわけだ。
  • 最近のeclipse(マース)では従来のプラグイン設置方法(install new software)以外にmarketplaceというものを提供していて大きなプラグインの設置がもっと容易になっている。

メニューからHelp > Eclipse Marketplace...順で選択する。
Eclipse Marketplaceからstsを入力して検索する。
Spring Tool Suiteのところの「install」ボタンをクリックする。
install_sts_01.png

Confirm Selected Featuresから全て選択された状態で「Confirm」ボタンをクリックする。
install_sts_02.png

ライセンス画面から同意にチェックして「Finish」ボタンをクリックする。
install_sts_03.png

設置が終わったら「Yes」ボタンをクリックしてeclipseを再起動する。
install_sts_04.png

再起動された画面からSpring関連内容が表れば問題なし。
eclipse_sts.png

プロジェクトの生成

  • perspectiveをspringに切り替える。
  • eclipseからspringの新規プロジェクトを生成する方法としてspring legacy projectとspring starter projectがある。
  • spring legacy projectはspring frameworkを利用する従来の方法でプロジェクトを生成する。
  • spring starter projectはspring bootを利用する新しい方法でプロジェクトを生成する。

spring legacy project

Perspectiveをspringに切り替えてPackage Explorerからマウス右ボタンをクリックする。そして、spring legacy projectを選択する。
create_project_01.png

Project nameでは「FirstWebApp」と入力してTemplatesからは「Simple Spring Web Maven」を選択した後「Finish」ボタンをクリックする。
create_project_02.png

ビルドツールとしてmavenを使う場合のディレクトリ構成は次のようになる。
create_project_03.png

javaはコンパイルが必要なので、antやmavenのようなビルドツールで作業が終わる度にビルドする必要がある。
プロジェクトを選択してマウス右ボタンクリック > Maven > Update project...順で選択するか、alt + F5キーを押せば「Update Maven Project」が表れる。そのまま「OK」ボタンを押してビルドする。

これでspring legacy projectは用意されたが、これを確認するためにはアプリケーションサーバを用意して関連プロジェクトを追加する必要がある。

Pivotal tc Server Developer Editionを設置

  • spring frameworkではtomcatではなくPivotal tc Serverというアプリケーションサーバを使うらしい。
  • Pivotal tc Serverはhomebrewでインストールができる。
  • ここを参考にした。
% brew update
% brew tap pivotal/tap
% brew install tcserver

homebrewでPivotal tc Serverの設置が終わったらeclipseに該当サーバを登録する。
add_tcserver_01.png

Installation directoryから先ほど設置したPivotal tc Serverのlibexecのパスを入力して、「Next」ボタンをクリックする。
add_tcserver_02.png

tc Server Configurationから「Create new instance」をチェックして「Next」ボタンをクリックする。
add_tcserver_03.png

Create tc Server InstanceからNameに適当な名称を、Templatesでは「base」にチェックして「Finish」ボタンをクリックする。
add_tcserver_04.png

登録したサーバを確認しよう。
add_tcserver_05.png

サーバへリソースを追加

登録したサーバを選択してマウスの右ボタンをクリックし「Add and Remove...」を選択する。
add_tcserver_06.png

「FirstWebApp」を選択して「Add」ボタンをクリックすると左辺から右辺へ「FirstWebApp」が移動する。
add_tcserver_07.png

「finish」ボタンをクリックするとサーバへ「FirstWebApp」リソースが追加される。
add_tcserver_08.png

サーバを起動する。緑のプレイボタンを押せばサーバが起動される。赤い停止ボタンを押せばサーバが停止される。
add_tcserver_09.png

ブラウザを開き下記のURLで確認する。
「Click to enter」というリンクが表れば問題なし。

http://localhost:8080/FirstWebApp

spring starter project

  • spring bootを利用する形でプロジェクトが生成される。
  • spring bootはプロジェクト内にアプリケーションサーバが組み込まれていてspring legacy projectのようにサーバを登録してリソースを追加する必要はない。

Package Explorerからマウス右ボタンをクリック > New > Spring Starter Project順で選択する。
spring_boot_01.png

Nameには「SecondWepApp」を入力して「Next」ボタンをクリックする。
spring_boot_02.png

DependenciesでWebを開いて「Web」だけチェックし「Finish」ボタンをクリックする。
spring_boot_03.png

これでSpring Bootのプロジェクトが生成された。
クラスを1個作って確認してみよう。
Package Explorerから「SecondWebApp」を選択してマウス右ボタンをクリック > 「New」 > 「Class」順で選択する。
spring_boot_04.png

Nameには「HelloController」を入力して「Finish」ボタンをクリックする。
spring_boot_05.png

HelloController.javaファイルを開いて次の内容を入力する。

package com.example;

@RestController
public class HelloController {

    @RequestMapping("/")
    public String index() {
        return "Hello Spring Boot!";
    }
}

赤い✖︎が表示されるが気にするな。
spring_boot_06.png

command + shift + o を押すと必要なクラスが自動でimportされる。赤い✖︎表示は消えているはずだ。(eclipseでは頻繁に使うショートカットキーなので覚えておく)
spring_boot_07.png

プロジェクトを選択して緑のプレイバタンをクリック > Run As > Spring Boot App順で選択する。アプリケーションサーバが立ち上がる。
spring_boot_08.png

ブラウザから確認する。
Hello Spring Boot!が表れたら成功!

http://localhost:8080/

spring_boot_09.png

アノテーションを使ってURLをマッピング

RESTfulなアプリケーションを作るためにはルート情報(URLマッピング)を設定ファイルに記述する必要がある。ruby on railsの場合はconfig/routes.rbファイルに記述する。しかし、spring bootでは設定ファイルが存在しない。アノテーションがその役割を果たしている。
クラスやメソッドが始まる前にある@RestController@RequestMappingがアノテーションだ。@RestControllerはRESTfulなアプリケーションを構築するために用意されているクラスでクラスの前にこれを付けておくとそのクラスはRESTfulなクラスになる。そして、@RequestMappingは引数で渡されたURLにメソッドの処理結果をマッピングする。

32
46
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
32
46