ぺーぺーSEのブログ

備忘録・メモ用サイト。

SPRING INITIALIZRを使ってみる

SPRING INITIALIZR」というSpringBootのひな形プロジェクトを作成するWebサービスを紹介する。
時は2016年、なんとSPRING INITIALIZRは2014年からあるらしい。
今まで知らず恥ずかしい。。。

使い方

  1. SPRING INITIALIZRのページにアクセス
  2. 画面下部の「Don't know what to look for? Want more options? Switch to the full version.」をクリックして詳細設定化
  3. 最上部左のドロップボックスで「Maven Project」か「Gradle Project」でビルドツールを選択
  4. 最上部右のドロップボックスでSpring Bootのバージョンを選択
  5. Project MetadataのGroupやArtifactなどの項目を入力
  6. Dependenciesへ使用するSpring-boot-starterを設定
    • Search for dependenciesで入力・検索できるようになっている
    • 手順2で開いた下部の詳細設定のチェックボックスの選択でもよい
  7. 手順2で開いた詳細(画面下部)のチェックボックスから選択するほうがひな形の種類を覚えていない人には楽
  8. 「Generate Project」ボタンを押すと、ひな形プロジェクトをダウンロードできる

ひな形プロジェクトにはmvnwgradlewがあるため、JDKのインストールだけで実行できる。
ちなみにDependenciesに「Web」「PostgreSQL」「Thymeleaf」「Security」を選択したプロジェクトひな形のPOMは以下になる。

<?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>org.sample</groupId>
    <artifactId>sample</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>sample</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.4.1.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.postgresql</groupId>
            <artifactId>postgresql</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>


</project>

つまらんところでハマらずPOM作れるからスゲー楽。
mvnw spring-boot:run」コマンドで起動できる。
起動したら起動ログに「Using default security password: 393930b2-2da5-4dbf-b301-11504902d468」みたいなログが出ており、こればSpring Securityのランダムで生成されるパスワードになっている。IDは「user」。
何も作ってないのでアクセスしても「404」になるが、「401」にならなければ成功。
「Ctrl+c」で停止する。