怒Mは思いつきでモノを言う

やったことメモなどなど

Spring Boot を初めて体験してみた①

はじめに

フレームワークは新入社員から3年触っていたStrutsだけなので、 よく耳にするけど、使ったことないSpring Bootを体験したいと思います。

まずは、環境構築編みたいな感じです。

環境

Eclipse準備

Eclipse Marketplaceで「Spring Tools (aka Spring IDE and Spring Tool Suite) 3.9.0.RELEASE」をインストールします。

f:id:do_m_gatoru:20170715014703p:plain

f:id:do_m_gatoru:20170715015005p:plain

画面を進んでいってインストールが完了すると、以下の様なDashBoardが表示されます。

f:id:do_m_gatoru:20170715015251p:plain

環境の準備はここまでで完了しました。

プロジェクト作成

Spring Initializrにて雛形作成

Spring Initializrにてプロジェクトの雛形を作成します。

f:id:do_m_gatoru:20170715020350p:plain

私の場合は、

  • Gradle Project
  • Java
  • Web(Dependencies)

という内容で作成しています。

Project Metadata の Group はパッケージで、Artifact はプロジェクト名の指定です。

必要項目を入力し終えたら、「Generate Project」ボタンを押して、Zipファイルをダウンロードします。

雛形のインポート

私はダウンロードしたZipを解凍して、フォルダをEclipseワークスペースに移動をさせてからインポートしています。

f:id:do_m_gatoru:20170715021240p:plain

f:id:do_m_gatoru:20170715021257p:plain

f:id:do_m_gatoru:20170715021309p:plain

f:id:do_m_gatoru:20170715021322p:plain

f:id:do_m_gatoru:20170715021341p:plain

チュートリアル

Spring Bootのプロジェクトは作成できました。中身を作っていきます。

GETTING STARTED Building an Application with Spring Bootを参考にして、画面に「Greetings from Spring Boot!」と表示させて、コンソールにはSpring Framework に登録されている Bean の一覧を表示させます。

f:id:do_m_gatoru:20170715021951p:plain

DemoApplication.java

DemoApplication.javaはインポートした段階では存在するソースです。これに、 Bean の一覧を表示する処理を書いていきます。

package domgatoru.example.demo;

import java.util.Arrays;

import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;

@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
    
    @Bean
    public CommandLineRunner commandLineRunner(ApplicationContext ctx) {
        return args -> {
            System.out.println("Let's inspect the beans provided by Spring Boot:");
            
            String[] beanNames = ctx.getBeanDefinitionNames();
            Arrays.sort(beanNames);
            for (String beanName : beanNames) {
                System.out.println(beanName);
            }
        };
    }
}
HelloWorldController.java

HelloWorldController.javaには画面に文字を表示させるだけの処理を書きます。

package domgatoru.example.demo;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloWorldController {
    
    @RequestMapping("/")
    public String index() {
        return "Greetings from Spring Boot!";
    }
}

こんだけで、動きました。

f:id:do_m_gatoru:20170715022743p:plain

f:id:do_m_gatoru:20170715022838p:plain

最後に

とりあえず、インストールから簡単な内容を動かすまではできました。

ただ、Spring Boot のフレームワークとしての特徴などは、ちょっとググったレベルなので、まだまだ理解していません。

とりあえずは、Spring Bootハンズオンで一通り動かしてみようと思っています。

他にSpring Bootに関する良さげな資料などありましたら、教えていただけると幸いです。