親バカエンジニアのナレッジ帳

webのエンジニアをやっており、日頃の開発で詰まったことや書き残しておきたいことを載せています。育児のイロハという育児サイト(https://ikujip.jp)の開発も行っているため、その開発で使用されている技術についても掲載しています。

IntellijでSpring Bootを5分で起動させる簡単セットアップ

Spring BootをIntellijで起動

Springのフレームワークといえば、Eclipseプラグイン(STS)で動かす方法が有名ですが、
Spring BootともなるとIntellijでも容易に動かせます。
実験的にHello Worldを出力したのですが、非常に簡単だったのでやり方を共有です。

<バージョン情報>
Java:1.8
Intellij:15
Spring Boot:1.4.3
Maven:3.0.5(Intelljに元々入っていたデフォルトのバージョンを使いました)

プロジェクトの新規作成

まずはIntellijを起動してから「Create New Project」を押し、
Maven」を選択してください。

f:id:tomotomo1129:20180606204135j:plain

GroupId、ArtifactId、Project nameは下記のように適当に入力しました。

f:id:tomotomo1129:20180606204203j:plain

f:id:tomotomo1129:20180606204216j:plain

次にpom.xmlファイルの修正です。

Spring bootを取り込む必要があるので、以下のように修正しました。
今後開発が進むに連れてライブラリを追加していくことになりますが、最初は以下で十分です。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
 
    <groupId>Hello</groupId>
    <artifactId>hello</artifactId>
    <version>1.0-SNAPSHOT</version>
 
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.4.3.RELEASE</version>
    </parent>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>
</project>

プロジェクトを右クリックし、「Maven」->「Reimport」と進んで必要なライブラリを取り込んでください。
詳細は省きますが、Intellijでは「Enable Auto-Import」の設定をしておけば、今後pom.xmlの記述を追加するたびに自動でライブラリをインポートしてくれるので便利です。
たまにpom.xmlに追加しただけでインポートを忘れてしまいますからね。

次にコントローラーの作成です。
「src」->「main」->「java」->「com」->「hello」パッケージの下に、「SampleController」を作成しました。
このソースは公式ページから拾ってます。

https://projects.spring.io/spring-boot/

package com.hello;
 
import org.springframework.boot.*;
import org.springframework.boot.autoconfigure.*;
import org.springframework.stereotype.*;
import org.springframework.web.bind.annotation.*;
 
@Controller
@EnableAutoConfiguration
public class SampleController {
 
    @RequestMapping("/")
    @ResponseBody
    String home() {
        return "Hello World!";
    }
 
    public static void main(String[] args) throws Exception {
        SpringApplication.run(SampleController.class, args);
    }
}

Spring Bootの起動

あとは「Run」クリックで以下のようにSampleControllerが出てくるので、それをクリックすれば起動します。
以下のようなコンソール出力がされればOKです。

f:id:tomotomo1129:20180606204434j:plain

これで「http://localhost:8080」を開けば「Hello World!」

どうです?めちゃめちゃ簡単ですよね。
Tomcatの設定とか面倒ごとがなくて超絶簡単にHello Worldまで行けるのです。
Spring Boot便利だな〜

ちなみにEclipseでもほぼ同じやり方で起動できますのでお試しあれ。

Spring Boot 2 プログラミング入門

Spring Boot 2 プログラミング入門

Spring Boot in Action

Spring Boot in Action