3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Mac + VisualStudioCode + SpringBoot(Java) + Gradle + PostgreSQLでの開発環境構築方法

Last updated at Posted at 2023-03-19

はじめに

MacにおけるSpringBoot&PostgreSQLの開発環境を構築する方法を解説します。コードエディタはVSCodeを使用しました。必要なソフトウェアのインストールから、構築、最後ブラウザでアプリケーションの動作確認を行うところまでの手順を説明いたします。

開発環境

項目 バージョン
OS macOS Ventura 13.1
プロセッサ 1.6 GHz デュアルコアIntel Core i5
VSCode 1.75.0
Java(JDK) 17.0.6
SpringBoot 3.0.3
Gradle 7.6
PostgreSQL 15.1

VSCodeのインストール

以下のサイトよりインストーラーをダウンロードしてインストールしてください。
Download Visual Studio Code

Java(JDK)のインストール

以下で解説しております。
macOSのJDK17インストール方法

PostgeSQLのインストール方法

以下で解説しております。

Postgres.appでインストールしたい場合

macOSのPostgreSQL(Postgres.app)のインストール方法

Homebrewからインストールしたい場合

PostgeSQLのHomebrewでのインストール

VSCodeの拡張機能のインストール

SpringBootの開発におすすめな以下のVSCode拡張機能をインストールしてください。

Extension Pack for Java

基本的なJavaの開発を支援する拡張機能が1セットになっています。
ExtensionPackforJava.png

Gradle Extension Pack

Gradleプロジェクトの開発を支援する拡張機能が1セットになっています。
GradleExtensionPack.png

Spring Boot Extension Pack

SpringBootの開発を支援する拡張機能が1セットになってます。
SpringBootExtensionPack.png

SpringBootプロジェクトの作成

ワークディレクトリの作成

ターミナルにおいて以下のコマンドを実行し、ワークディレクトリを作成します。
※既にプロジェクトを作成したいワークディレクトリがある場合は当手順は不要です。

$ cd /* ワークディレクトリを作成したいディレクトリのパス */
$ mkdir -m 777 work

※ワークディレクトリの名前に制約はありません。

ワークディレクトリをVSCodeで開く

ターミナルにおいて以下のコマンドを実行し、ワークディレクトリをVSCodeで開きます。

$ cd work
$ code . // VSCodeで"."(カレントディレクトリ)を開くコマンド

VSCodeでワークディレクトリが開かれます。
vscode_work_start.png

コマンドパレットを開く

「Command + Shift + P」でコマンドパレットを開く。
command_palette.png

コマンドパレットでSpringBootのプロジェクトの設定をしていく

コマンドパレットに「Spring Initializr」を入力し、「Spring Initializr: Create a Gradle Project...」を選択

Spring_Initializr.png

Spring Bootのバージョン選択

特にこだわりがなければ最新版を選択。バージョンが大きいものはGA版(General Availability)でないので注意。
以下のキャプチャでは3.0.3が最新。
SpringBoot_version.png
Spring Bootのバージョン情報は以下で確認が可能。
Spring Bootバージョン情報

言語の選択

当記事ではJavaを想定しているのでJavaを選択
SpringBoot_Language.png

Group IDの設定

特に指定がなければそのまま(com.example)でいいです。当記事ではそのまま設定します。設定を入力したらEnterを押す。
SpringBoot_GroupID.png

Artifact IDの設定

プロジェクト名を設定します。当記事では"samplepj"としました。大文字は使用できないようです。設定を入力したらEnterを押す。
SpringBoot_ArtifactID.png

Packaging Typeの設定

JarかWarどちらかを選択します。当記事ではJarを選択することとします。
SpringBoot_PackagingType.png

Javaのバージョンの選択

当記事ではJavaは17になるので17を選択します。
SpringBoot_Java_version.png

ライブラリ選択

初回で取り込むライブラリを選択します。当記事ではSpringBootの開発において代表的な以下のライブラリをインストールすることとします。

ライブラリ名 説明
Spring Boot DevTools SpringBootの開発補助ツール。コード変更時にアプリケーションの再起動なしで即座に変更を反映したり、キャッシュの削除機能があったりする。
Spring Web SpringフレームワークのWebアプリケーション開発に特化したモジュール
Thymeleaf JavaのWebアプリケーションにおいてHTMLを生成するためのテンプレートエンジン
Lombok ゲッターやセッターなどの冗長なコードを自動生成してくれるライブラリ
PostgreSQL Driver JavaプログラムがPostgreSQLデータベースにアクセスするためのドライバー

"Search for dependencies"に取り込むライブラリ名を入力し、該当のライブラリが表示されたらクリックする。
必要なもの全てにチェックが入った状態(以下のキャプチャ)で"Selected 5 dependencies"をクリックする。
SpringBoot_Library.png

プロジェクトの作成フォルダの選択

Finderのウィンドウが表示されるので、特にフォルダに変更がなければ"Generate into this folder"をクリックする。
SpringBoot_finder.png

プロジェクト作成の完了を確認

右下にプロジェクト作成成功のポップアップが表示され、エクスプローラーにプロジェクトのディレクトリが作成されていることを確認する。
SpringBoot_PJ_Comp.png

VSCodeでSpring Bootプロジェクトを開き直す

一度workディレクトリで開いたVSCodeのウィンドウを閉じて、ターミナルで以下のコマンド実行し、Spring Bootプロジェクトを開き直す。

$ cd samplepj
$ code .

build.gradle等が含まれたSpring Bootプロジェクトが作成されていることが確認できます。
SpringBoot_Explorer.png

サンプルプロジェクト用のデータベースの作成

Postgres.appの場合

PostgreSQL起動

Postges.appを起動し、PostgreSQLを起動する。
Postgres_before_start.png
起動すると以下の通り。
Postgres_after_start.png

Homebrewの場合

brew services start postgresql

※"postgresql"の部分は、"postgresql@11"のようにバージョン指定でインストールしている場合はインストールした名前を当てはめる必要があります。

PostgreSQLログイン

ターミナルで以下のコマンドを実行し、PostgreSQLにログインする。

$ psql -h localhost -p 5432 -U postgres

portはデフォルト5432ですが、Postgres.app等で確認できます。

データベースの作成

ターミナルで以下のコマンドを実行し、サンプルプロジェクト用のデータベースを作成する。

postgres=# create database samplepjdb;
CREATE DATABASE

参照コマンドでデータベースを確認します。

postgres=# \l
                                                    List of databases
      Name       |  Owner   | Encoding |   Collate   |    Ctype    | ICU Locale | Locale Provider |   Access privileges
-----------------+----------+----------+-------------+-------------+------------+-----------------+-----------------------
...
 samplepjdb      | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | en-US      | icu             |
...

SpringBootプロジェクトとPostgreSQLの接続

PostgreSQLドライバをbuild.gradleに追加する

先程作成した"samplepj"直下のbuild.gradleのdependenciesに以下の2行を追記します。

build.gradle
dependencies {
    ...
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    ...
}

application.propertiesへのDB情報の追記

application.propertiesにPostgeSQLに作成したDBの情報を入力します。

src/main/resources/application.properties

src/main/resources/application.properties
spring.jpa.database=POSTGRESQL
spring.datasource.url=jdbc:postgresql://localhost:5432/samplepjdb
spring.datasource.username=postgres
spring.datasource.password=postgres
spring.jpa.open-in-view=True
logging.level.org.hibernate.SQL=debug

プロジェクトの実行

以下のメインのJavaファイルをエクスプローラから開きます。
src/main/java/com/example/samplepj/SamplepjApplication.java
SpringBoot_Debug_Selected.png

その上でVSCodeの以下をクリックし、プロジェクトの実行を行います。

実行 -> デバッグの実行
SpringBoot_Debug_Execute.png
問題なく実行できるとターミナルが起動し、プロジェクトが実行されます。
SpringBoot_Debug_Execute_Terminal.png
停止する時は
実行 -> デバッグの停止
SpringBoot_Debug_Stop.png

サンプルプログラムを動かしてみる

サンプルプログラムを追加し、ブラウザに文字を表示します。

controllerディレクトリの作成

以下のパスに"controller"ディレクトリを作成します。

  • ディレクトリ作成パス
    src/main/java/com/example/samplepj
  • ディレクトリ名
    controller

IndexController.javaの追加

作成したcontrollerディレクトリにIndexController.javaを追加し、以下のプログラムを記載します。

src/main/java/com/example/samplepj/controller/IndexController.java
package com.example.samplepj.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@RequestMapping("/index")
public class IndexController {
    @RequestMapping("")
    public String index(){
        return "/index";
    }
}

テンプレートの追加

templatesディレクトリにindex.htmlを作成し、以下の内容を記載します。

src/main/resources/templates/index.html
<!DOCTYPE html>
<html lang="jp" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>index</title>
</head>
<body>
    <h1>Hello World!!</h1>
</body>
</html>

再度プロジェクトを実行する

再度SamplepjApplication.javaを開き、以下をクリックし、プロジェクトの実行を行なってください。
実行 -> デバッグの実行

ブラウザ確認

以下のURLをブラウザで開き、index.htmlの内容が表示されれば環境構築は完了です。
http://localhost:8080/index
SpringBoot_Debug_index.png

データベースのアクセスがあるサンプルプログラムは後日解説します。

サンプルリポジトリ

[GitHub] SpringBootSampleProject

3
3
0

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
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?