ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|---|
|
本稿ではSpring FrameworkにおけるJPAを使用したDBの作成~値の取得まで一通りを説明します。
前提
・Spring Bootを使用
・mavenを使用
・DBはMySQLを使用(適宜読み替えられれば他のDBでも可能)
DBの作成
今回の例ではMySQLを用意します。
Windowsの場合、MySQLを単独でインストールすると色々と設定がめんどくさいので、今回はXAMPPのMySQLを使用します。XAMPPのインストールはこちらを参照。
MySQLにデータベースおよびテーブルを作成しましょう。以下のコマンドを実行します。
|
CREATE DATABASE spring_db CHARACTER SET utf8 COLLATE utf8_bin; GRANT ALL PRIVILEGES |
テスト用のテーブルを作成
以下のコマンドを実行してテスト用のテーブルを作成しましょう。
|
CREATE TABLE `user`( ALTER TABLE `user` ADD PRIMARY KEY (`id`); ALTER TABLE `user` MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=1; INSERT INTO user (name)VALUES('tarou'),('jirou'); |
pom.xmlの修正
必要なライブラリをpom.xmlに記載します。
dependenciesに以下の項目を追加しましょう。
|
<dependency> |
DB接続設定
「src/maim/resources」の「application.properties」に以下の内容を追記しましょう。
|
spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver |
※テーブル名が大文字の場合は以下の記述を追加する。
|
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl |
エンティティクラスの作成
Java側のデータ保持用のエンティティクラスを作成します。
分かりやすいようにentity用のパッケージを作成しておきましょう。
テーブル定義に沿って以下の様に定義しましょう。
|
package com.example.demo.entity; import javax.persistence.Column; @Entity public long getId() { public void setId(long id) { public String getName() { public void setName(String name) { |
リポジトリインターフェースの作成
DB操作の処理をリポジトリインターフェースで定義します。
分かりやすいようにrepository用のパッケージを作成しておきましょう。
以下、リポジトリインターフェースの定義例となります。
|
package com.example.demo.repository; import com.example.demo.entity.User; import org.springframework.data.jpa.repository.JpaRepository; @Repository |
JpaRepositoryのジェネリクスの第二引数にはUserエンティティの主キーの型を指定します。
もし、独自のSQLを記述したい場合はメソッド名を指定して@Query内にSQLを記述します。
|
package com.example.demo.repository; import com.example.demo.entity.User; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.Query; @Repository @Query("SELECT c FROM User c WHERE c.id = :id") List<Customer> findAllById(@Param("id") Integer id); } |
テーブルから値の取得
それでは実際にテーブルから値を取得してみましょう。
適当な以下のようなコントローラーを作成して、リポジトリ経由でデータを取得してみます。
userテーブルからuser情報を取得する処理を記載してみましょう。
|
package com.example.demo; import org.springframework.beans.factory.annotation.Autowired; import com.example.demo.entity.User; @SpringBootApplication @RequestMapping("/") } |
出力結果は以下の通りです。
|
tarou |
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
- インストール(eclipseプラグイン)
- クイックスタート
- プロジェクトの作成
- Spring Bootプロジェクトの作成
- Spring Bootプロジェクトの実行
- Spring BootでHello World!
- アノテーション一覧
- DB接続設定からエンティティおよびリポジトリの作成、値の取得まで(JPA編)
- DB接続設定や値の取得(JdbcTemplate編)
- ビューから値をモデルに格納しコントローラーで受け取る方法
- コントローラーにてモデルに値を格納してビューに渡す方法
- テンプレートエンジン
- ModelとModelAndViewの違い
- AOPの使用方法
- classpath: 内部ファイルの読み込み
- file: 外部ファイルの読み込み
- CSVファイルアップロード方法(Ajax)
- CSVファイルダウンロード方法(Ajax)
- Spring Bootプロジェクトのビルドと本番環境へのデプロイ方法(内部tomcat使用)
- Application.propertiesの環境依存設定の分割方法
- JPAにおけるEntityManagerの取得方法
- JPAにおけるjava.sql.Connectionの取得方法
- エラー一覧
- jarの引数を受け取る方法
- Spring BootでGmailからメール送信
- 複数のDBに接続する設定(Spring Boot & JPA編)
- ポート番号の変更
- Basic認証の実装と特定のURLに限定する方法
- Spring SecurityのBasic認証の無効化
- 独自のエラーページを定義する方法
- プロパティファイルの値やjar実行時の引数を取得する方法
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- 【django】ログイン 認証機能 2026-09-08 03:22:09
- MySQL ERROR 1063 Incorrect column specifier for column|原因と直し方 2026-09-08 03:11:09
- 【PHPエラー】Object of class stdClass could not be converted to string 2026-09-07 07:46:04
- Julia Genie ローカル開発サーバ起動完全ガイド 2026-09-07 07:46:04
- NetBeansでTomcatを起動する手順|サーバ登録・ポート・トラブル対処 2026-09-07 07:45:13
- Laravel 記事一覧55件|環境構築・ルーティング・DB・エラー対処 2026-09-07 07:45:13
- Spring Framework 記事一覧31件|DI・設定・例外の対処 2026-09-07 07:45:13
- Javaの定数 2026-09-07 07:45:13
- JPEG(.jpg/.jpeg)画像形式の完全ガイド — 仕様・マジックナンバー・他形式との比較・EXIF 2026-09-07 07:45:13
- hostnameコマンドの使い方|Windows・Linux・macOSでホスト名確認 2026-09-07 07:45:13
- Laravelルートグループ|prefix・middleware・nameで一括管理 2026-09-07 07:45:13
- Oracle DROP USERでユーザー削除|CASCADE・接続中ユーザーの対処 2026-09-07 07:45:13
- SQLとは|DDL・DMLとリレーショナルデータベース操作の基本 2026-09-07 07:45:13
- Linuxで複数ファイルの文字列を一括置換|find・sed・xargsの安全手順 2026-09-07 07:45:13
- Linux whichコマンドの使い方|絶対パス取得とtype・command -vの違い 2026-09-07 07:45:13
コメントを削除してもよろしいでしょうか?