1. 基本環境の整備(JDK と Maven)
開発を始める前に、Java Development Kit (JDK) と Apache Maven のインストールが必要です。JDK は Oracle 社または OpenJDK から入手し、インストーラーを実行するか、アーカイブファイルを展開して配置します。Maven についても公式サイトからバイナリ配布ファイルをダウンロードし、任意のディレクトリに展開します。
インストール後、操作系统の環境変数を設定します。システム変数として以下を追加してください。
JAVA_HOME C:\Program Files\Java\jdk1.8.0_231
MAVEN_HOME C:\Program Files\Java\apache-maven-3.8.4
さらに、Path 変数に以下のディレクトリを追加することで、コマンドラインから各ツールを実行可能にします。
%JAVA_HOME%\bin
%MAVEN_HOME%\bin
設定が完了したら、コマンドプロンプトで java -version および mvn -version を実行し、バージョン情報が表示されるか確認します。
2. IntelliJ IDEA の導入
統合開発環境(IDE)として IntelliJ IDEA を使用します。Community Edition または Ultimate Edition のいずれかを公式サイトからダウンロードし、インストール wizard に従って設定を行います。ここでは 2021 年以降のバージョンを想定しています。
3. Maven リポジトリの設定変更
Maven はデフォルトで中央リポジトリを使用しますが、ダウンロード速度向上のためミラーサーバーを設定することを推奨します。例えば、阿里云ミラーを利用する場合、Maven インストールディレクトリ内の conf/settings.xml を編集します。
<mirror>
<id>aliyun-central</id>
<mirrorOf>central</mirrorOf>
<name>Aliyun Maven Mirror</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
また、依存関係のダウンロード先ディレクトリを変更したい場合は、settings.xml 内の <localRepository> タグで任意のパスを指定できます。これにより、C ドライブの容量圧迫を防ぎ、管理しやすい場所へ依存ファイルを保存できます。
注意点として、プロジェクト単位でリポジトリパスを変更した場合、そのプロジェクト配下に依赖がダウンロードされます。一方、全局設定を変更した場合は、指定した共通ディレクトリに保存されます。
4. ローカル JAR ファイルの Maven 登録
中央リポジトリに存在しないライブラリ(例:特定のデータベースドライバー)を使用する場合、手動でローカルリポジトリにインストールする必要があります。コマンドラインで該当の JAR ファイルがあるディレクトリに移動し、以下のコマンドを実行します。
mvn install:install-file -Dfile=sqljdbc4.jar -Dpackaging=jar -DgroupId=com.microsoft.sqlserver -DartifactId=sqljdbc4 -Dversion=4.0
このコマンドを実行すると、指定した groupId と version に基づき、ローカル Maven リポジトリの所定フォルダへファイルが配置され、プロジェクトから依存関係として参照可能になります。
5. Spring Boot と MyBatis による CRUD 実装
基本的な Web アプリケーションとして、Spring Boot と MyBatis を組み合わせた構成例を示します。ユーザー情報の登録、検索、更新、削除機能を実装した場合、以下のようなエンドポイントが想定されます。
- 登録:
GET http://localhost:8080/api/v1/users/create?name=TestUser&pwd=secret&addr=Tokyo - 検索:
GET http://localhost:8080/api/v1/users/find?id=101 - 更新:
GET http://localhost:8080/api/v1/users/modify?id=101&name=NewUser&addr=Osaka - 削除:
GET http://localhost:8080/api/v1/users/remove?id=101
また、Thymeleaf を利用したサーバーサイドレンダリングによるログイン・登録画面の実装や、MyBatis-Plus を採用して SQL Server と連携するパターンも一般的です。これらの構成では、application.properties または application.yml でデータソース設定を行い、コントローラー層でリクエストを処理します。
6. Maven リポジトリ構成の参考
プロジェクトの pom.xml または全局の settings.xml にて、複数のリモートリポジトリを定義できます。多人開発では全局設定を利用するのが効率的です。主な公共リポジトリの例は以下の通りです。
<repository>
<id>central</id>
<name>Maven Central</name>
<url>https://repo.maven.apache.org/maven2</url>
</repository>
<repository>
<id>spring-release</id>
<name>Spring Releases</name>
<url>https://repo.spring.io/release</url>
</repository>
プロファイル機能を使用し、JDK のバージョンに応じてコンパイラ設定を自動激活させることも可能です。
<profile>
<id>jdk-1.8-config</id>
<activation>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
</profile>
7. 一般的なエラーと対処法
MyBatis-Plus を利用する際、依存関係の不足により以下のようなエラーが発生することがあります。
Unsatisfied dependency expressed through field 'baseMapper'; nested exception
この場合、pom.xml に適切な starter 依存関係が追加されているか確認します。具体的には以下の依存を追加することで解決します。
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.3.4</version>
</dependency>
バージョンの競合やスコープの設定ミスがないか也要注意してください。