この教材で使った Eclipse・SQL Developer・Chrome の操作と、登場した用語をまとめました。操作に迷ったときや、用語の意味を忘れたときに引いてください。
C.1 Eclipse の操作
プロジェクトとファイルの操作
| やりたいこと |
操作 |
参 照 |
| Spring Boot のプロジェクトを作る |
ファイル → 新規 → Spring スターター・プロジェクト (Spring Initializr)
|
4章 |
| あとから依存関係(スターター)を追加する(選び忘れたとき) |
プロジェクトを右クリック → Spring → スターターの追加
|
13章 |
| プロジェクトに赤い×印が付いたときに直す |
プロジェクトを右クリック → Maven → プロジェクトの更新 → 「OK」 |
4章 |
| パッケージを作る |
親パッケージ(例:com.example.employeeapp)を右クリック → 新規 → パッケージ
|
4章 |
| クラスやインターフェースを作る |
パッケージを右クリック → 新規 → クラス(インターフェースは インターフェース) |
5章 |
フォルダーを作る(templates/employee など) |
親フォルダーを右クリック → 新規 → フォルダー
|
8章 |
| HTML や properties などのファイルを作る |
フォルダーを右クリック → 新規 → ファイル → ファイル名を拡張子まで入力 |
4章 |
| getter と setter を自動で作る |
クラスの中で右クリック → ソース → getter および setter の生成 → 「すべて選択」→「生成」 |
6章 |
| アプリを起動する |
プロジェクトを右クリック → 実行 → Spring Boot アプリケーション
|
4章 |
| アプリを停止する |
コンソール・ビューの赤い四角(「終了」)ボタンを押す |
4章 |
| 起動中のアプリを一覧で見る・起動/停止する |
Boot ダッシュボード・ビューでアプリを選び、起動(▶)/停止(■)ボタンを押す |
4章 |
| JUnit のテストを実行する |
テストクラスを右クリック → 実行 → JUnit テスト(緑のバーなら成功、赤なら失敗) |
7章 |
| 1つのファイルの文字コードを確認する |
ファイルを右クリック → プロパティー → リソース →「テキスト・ファイルのエンコード」 |
付B |
よく使うショートカット
| キー |
できること |
こんなときに |
|
Ctrl + S
|
保存 |
編集したら必ず保存。保存しないと変更が反映されない |
|
Ctrl + Shift + S
|
すべて保存 |
複数のファイルをまとめて直したあと |
|
Ctrl + Space
|
入力補完 |
アノテーション・クラス名・変数名・メソッド名の途中まで入力して候補を出し、選んで補完する。import が必要な名前は必ず補完で入力する(import 文が自動で追加される) |
|
Ctrl + Shift + O
|
import の整理 |
使っていない import をまとめて削除する(import の追加は、補完 Ctrl + Space で行う) |
|
Ctrl + Shift + F
|
フォーマット |
インデントや改行を整える(設定と注意は第4章 4.5 の囲み) |
|
Ctrl + 1
|
クイック・フィックス |
赤い波線のエラーに、直し方の候補を出す |
| F3 |
宣言を開く |
カーソル位置のクラスやメソッドの定義へ移動する |
|
Ctrl + Shift + R
|
リソースを開く |
ファイル名(list.html など)で探して開く |
|
Ctrl + Shift + T
|
型を開く |
クラス名(RegisterForm など)で探して開く |
|
Ctrl + /
|
コメントの切り替え |
選択した行をまとめてコメントにする・戻す |
|
Alt + Shift + S
|
ソース・メニューを開く |
getter/setter の生成などをキーボードで呼び出す |
|
Ctrl + D
|
行の削除 |
カーソルのある行を1行まるごと消す |
|
Ctrl + Z / Ctrl + Y
|
元に戻す / やり直し |
編集を間違えたとき |
|
Ctrl + F11
|
前回の起動を実行 |
停止したアプリを同じ方法でもう一度起動する |
|
Ctrl + M
|
ビューの最大化・元に戻す |
エディターやコンソールを広く表示したいとき |
【再確認】アプリの二重起動に注意
Ctrl + F11 や「実行」を、アプリを停止せずにもう一度行うと、同じアプリが2つ起動しようとして「Port 8080 was already in use」のエラーになります。再起動するときは、先にコンソールの赤い四角で停止してください。
C.2 SQL Developer の操作
| やりたいこと |
操作 |
参 照 |
| データベースへの接続を作る |
「接続」パネルの緑の「+」(新規データベース接続)→ 名前・ユーザー名・パスワード・ホスト名 localhost・ポート 1521・サービス名 XEPDB1 を入力 →「テスト」→「保存」→「接続」 |
3章 |
| カーソル位置の SQL を1つだけ実行する |
Ctrl + Enter(文の実行。SELECT の結果は表で表示される) |
3章 |
| ワークシートの SQL をすべて順に実行する |
F5(スクリプトの実行。結果は「スクリプト出力」タブに文字で表示される) |
3章 |
| 変更を確定する |
COMMIT; を実行する、または F11/ツールバーの「コミット」ボタン |
3章 |
| 表の中身を見る |
接続の左ツリーで「表」を開き、表名をダブルクリック →「データ」タブ |
3章 |
| SQL をファイルに保存する |
SQL をメモ帳などのテキストエディタに貼り付けて保存する(例:ドキュメント\spring-sql\setup.sql) |
3章 |
【便利な使い方】アプリで登録したデータを確かめたいとき
アプリから登録・変更・削除した結果は、SQL Developer で SELECT * FROM EMPLOYEE ORDER BY EMP_ID; を実行すると確認できます。アプリの操作は Spring が自動で COMMIT するので、SQL Developer からもすぐに見えます。
SQL Developer を使いやすくする設定
SQL を書いたり結果を見たりしやすくするための設定です。変えなくても教材は進められます。設定は、メニューの ツール → プリファレンス で開く「プリファレンス」画面で行い、最後に「OK」をクリックします。日付の表示形式とワークシートの設定は、第3章 3.2 で行っています。
ワークシートに行番号を表示する
- 左の一覧で コード・エディタ → 行の左余白 を選びます。
- 「行番号の表示」にチェックを入れます。

図C-1 行番号の表示
ワークシートの左端に 1、2、3…と行番号が表示されるようになります。エラーが出たときに「何行目か」がすぐわかります。
C.3 Chrome の操作
| キー・操作 |
できること |
こんなときに使う |
|
Ctrl + U
|
ページのソースを表示(右クリック →「ページのソースを表示」でも同じ) |
Thymeleaf の th:text や th:field が、どんな HTML に置き換わったかを見る(第4章・第10章) |
| F5 |
再読み込み |
リダイレクトのあとに再読み込みしても、二重に登録・削除されないことを確かめる(第9章・第11章) |
|
Ctrl + Shift + R
|
キャッシュを使わずに再読み込み |
CSS(app.css)を直したのに見た目が変わらないとき |
| F12 |
デベロッパー ツールを開く |
下の表のように、画面の裏側で起きていることを確かめる |
|
Ctrl + Shift + N
|
シークレット ウィンドウを開く |
今のウィンドウとは 別のセッション として操作できる。別の人が同時に使っている状態を試すときに便利 |
デベロッパー ツールの使いどころ
| タブ |
見られるもの |
この教材での使い方 |
| 要素 |
今表示されている画面の HTML |
入力欄の id・name・value を確かめる(第10章) |
| ネットワーク |
ブラウザが送ったリクエストの一覧。メソッド(GET/POST)とステータスコード |
「削除」ボタンを押すと、POST /employees/3/delete が 302 を返し、続けて GET /employees が 200 になる様子を見る(第9章)。開く前に「ログを保持」にチェックを入れておくと、画面が切り替わっても一覧が消えない。送った内容の見方は 付D
|
| アプリケーション |
Cookie などブラウザに保存されている情報 |
左側の「Cookie」→ http://localhost:8080 を選ぶと、セッションを識別する JSESSIONID が見える(第10章)。これを削除すると、セッションの入力内容を忘れた状態を試せる |
C.4 用語集
この教材に登場した用語を分類別にまとめました。「初出」の章で詳しく説明しています。
Web の基礎
| 用語 |
意味 |
初 出 |
| Webアプリケーション |
ブラウザから使うアプリケーション。サーバーで動くプログラムが、リクエストに応じて画面(HTML)を返す。 |
1章 |
| クライアント/サーバー |
要求を出す側(ブラウザ)と、要求を受けて処理する側(Java のプログラム)。 |
1章 |
| HTML |
Webページの内容と構造を、タグで表す言語。ブラウザが読み取って画面を描く。 |
1章 |
| HTTP |
ブラウザとサーバーがやり取りするための決まり(プロトコル)。サーバーはリクエストを受け取るとレスポンスを返す。以前のやり取りは覚えていないのが特徴(ステートレス)。 |
1章 |
| リクエスト |
ブラウザからサーバーへの要求。 |
1章 |
| レスポンス |
サーバーからブラウザへの返事。HTML やステータスコードが含まれる。 |
1章 |
| URL |
リクエストの宛先。例:http://localhost:8080/employees
|
1章 |
| localhost |
「自分のパソコン」を表す特別なサーバー名。 |
1章 |
| ポート番号 |
パソコンの中の、どのプログラムと通信するかを表す番号。Spring Boot は 8080、Oracle は 1521 を使う。 |
1章 |
| GET |
「情報をください」というリクエスト。画面の表示に使う。 |
1章 |
| POST |
「情報を送ります」というリクエスト。登録・変更・削除などデータを変える操作に使う。 |
1章 |
| ステータスコード |
処理の結果を表す3桁の数字。200(成功)、302(リダイレクト)、404(見つからない)、500(サーバー内部のエラー)など。 |
1章 |
| リダイレクト |
「別の URL へ移動してください」とブラウザに伝えること。ブラウザは自動でその URL に GET リクエストを送り直す。 |
1章 |
| PRG パターン |
POST で処理したあと、画面を直接返さずにリダイレクトし、GET で画面を表示する作り方。再読み込みしても処理が二重に実行されない。 |
9章 |
| Cookie |
サーバーの指示でブラウザに保存される小さな情報。次のリクエストから自動で送られる。 |
10章 |
| 静的なページ/動的なページ |
いつも同じ内容を返すページと、リクエストのたびにプログラムが内容を組み立てるページ。 |
1章 |
Spring
| 用語 |
意味 |
初 出 |
| フレームワーク |
どのアプリにも共通する処理をあらかじめ用意した土台。開発者はアプリ固有の部分だけを書けばよい。 |
1章 |
| Spring(Spring Framework) |
Java で最も広く使われているフレームワーク。DI コンテナ、Spring MVC などの部品の集まり。 |
1章 |
| Spring Boot |
Spring を少ない設定ですぐに使えるようにする仕組み。自動設定・スターター・組み込みサーバーが特徴。 |
1章 |
| MVC |
プログラムを Model(データ)・View(画面)・Controller(処理の流れ)の3つの役割に分ける考え方。 |
1章 |
| Spring MVC |
MVC の考え方で、リクエストを受け取り画面を返すための Spring の部品。 |
1章 |
| アノテーション |
@Controller のように @ で始まる目印。クラスやメソッドに付けて、Spring に役割を伝える。 |
4章 |
| DI(依存性の注入) |
クラスが必要とする部品を、自分で new せずに外から受け取る仕組み。 |
5章 |
| DI コンテナ |
Bean を作って保管し、必要なところへ注入する Spring の仕組み。Spring の心臓部。 |
5章 |
| Bean |
DI コンテナが作って管理しているオブジェクト。 |
5章 |
@Autowired |
フィールドに付けると、DI コンテナがそのフィールドに Bean を代入してくれる(フィールド注入)。 |
5章 |
| コンポーネントスキャン |
起動時に、@SpringBootApplication のパッケージ配下から、アノテーション付きのクラスを探して Bean にすること。 |
5章 |
@SpringBootApplication |
Spring Boot アプリの起点となるクラスに付ける。自動設定とコンポーネントスキャンが有効になる。 |
4章 |
@Component |
「このクラスを Bean にしてください」という目印。 |
5章 |
@Controller |
リクエストを受け取るクラス(Controller)であることを表す。 |
4章 |
@Repository |
データベースを操作するクラス(Repository)であることを表す。 |
5章 |
@Service |
業務の処理をまとめるクラス(Service)であることを表す。この教材では使わない。 |
5章 |
@GetMapping |
指定した URL への GET リクエストを、そのメソッドで受け取る。 |
4章 |
@PostMapping |
指定した URL への POST リクエストを、そのメソッドで受け取る。 |
9章 |
@PathVariable |
URL の中の値(/employees/{empId}/delete の社員ID など)を引数で受け取る。 |
9章 |
| Model |
Controller から画面(テンプレート)へ渡すデータを入れる入れ物。 |
4章 |
@ModelAttribute |
送信された入力値をフォームのオブジェクトに詰めて受け取る。メソッドに付けると、Model に入れるオブジェクトを用意する。 |
10章 |
データベース・JPA
| 用語 |
意味 |
初 出 |
| Oracle Database 21c XE |
Oracle 社のデータベースの無償版。この教材のデータの保存先。 |
1章 |
| CDB/PDB |
CDB は Oracle 全体の入れ物、PDB はその中の独立したデータベース。この教材では PDB の XEPDB1 を使う。 |
2章 |
| サービス名 |
接続先のデータベースを表す名前。この教材では XEPDB1。 |
3章 |
| スキーマ |
ユーザーが持つテーブルなどの集まり。Oracle ではユーザーとスキーマが1対1で対応する。 |
3章 |
| 主キー |
テーブルの各行を一意に表す列。社員ID(EMP_ID)、部署ID(DEPT_ID)。 |
3章 |
| 外部キー |
ほかのテーブルの主キーを参照する列。社員テーブルの DEPT_ID が部署テーブルを参照する。 |
3章 |
| シーケンス(順序) |
1、2、3…と重ならない番号を順に払い出すデータベースの部品。主キーの自動採番に使う。 |
3章 |
| コミット(COMMIT) |
変更を確定すること。コミットするまで、ほかの接続からは変更が見えない。 |
3章 |
| トランザクション |
複数の処理を「すべて成功」か「すべて取り消し」のひとまとまりとして扱う仕組み。Spring Data JPA の save や deleteById は自動でトランザクションの中で実行され、コミットされる。 |
9章 |
| JPA |
Java のオブジェクトとデータベースのテーブルを対応づけるための Java の標準仕様。 |
1章 |
| O/R マッピング |
テーブルとクラス、行とオブジェクト、列とフィールドを対応づけること。 |
6章 |
| Hibernate |
JPA の仕様を実際に動かすライブラリ(実装)。 |
6章 |
| Spring Data JPA |
インターフェースを書くだけで、データベースを操作するクラスを自動で作ってくれる Spring の部品。 |
1章 |
| Entity |
テーブルの1行分のデータを表すクラス。@Entity を付ける。 |
6章 |
| Repository |
データベースへの検索・登録・変更・削除を担当するインターフェース。JpaRepository を継承する。 |
7章 |
| クエリメソッド |
findByEmpId のように、メソッド名の規則から SQL を自動で作ってもらうメソッド。 |
7章 |
@ManyToOne |
「多対一」の関係を表す。社員(多)は1つの部署(一)に属する。 |
6章 |
| SQL Developer |
Oracle のデータベースを画面で操作するための無償ツール。 |
2章 |
画面・Thymeleaf
| 用語 |
意味 |
初 出 |
| Thymeleaf |
HTML の中にデータを埋め込んで動的なページを作る、テンプレートエンジン。 |
1章 |
| テンプレート |
データを埋め込む前の HTML ファイル。src/main/resources/templates に置く。 |
4章 |
| static フォルダー |
CSS や画像などを、加工せずにそのまま配信するフォルダー。static/css/app.css は /css/app.css で読める。 |
8章 |
th:text |
タグの中の文字を、指定した値に置き換える。 |
4章 |
${…} |
Model に入れたデータを取り出す書き方。${employee.name} は getName() を呼び出す。 |
4章 |
th:each |
リストの要素の数だけ、タグを繰り返し出力する。 |
8章 |
@{…} |
アプリ内の URL を作る書き方。th:href や th:action で使う。 |
8章 |
#dates.format |
日付を yyyy/MM/dd などの形式の文字にする。 |
8章 |
th:object |
フォームで扱うオブジェクトを指定する。中では *{…} でそのオブジェクトの項目を書ける。 |
10章 |
th:field |
入力欄とフォームの項目を結びつける。id・name・value を自動で出力する。 |
10章 |
| フォームクラス |
画面の入力項目を受け取るためのクラス。この教材では RegisterForm と UpdateForm。 |
10章 |
入力チェック・セッション
| 用語 |
意味 |
初 出 |
| セッション |
サーバー側に用意される、ブラウザごとの保管場所。画面をまたいで入力内容を覚えておくのに使う。 |
10章 |
| JSESSIONID |
どのセッションかを識別するための番号。Cookie としてブラウザに保存される。 |
10章 |
@SessionAttributes |
指定した名前で Model に入れたオブジェクトを、自動でセッションに保存・取り出しする。 |
10章 |
| SessionStatus |
setComplete() で、@SessionAttributes で保存した内容を破棄する。 |
11章 |
| Serializable |
オブジェクトを保存・復元できることを表すインターフェース。セッションに入れるクラスに付ける。 |
10章 |
| 入力チェック(バリデーション) |
入力された値が正しいかを確かめること。 |
13章 |
| Bean Validation |
@NotBlank や @Size などのアノテーションで、入力チェックの内容を書ける Java の標準仕様。 |
13章 |
@Validated |
引数に付けて、受け取ったフォームの入力チェックを実行させる。 |
13章 |
| BindingResult |
入力チェックや型の変換で起きたエラーの結果が入るオブジェクト。hasErrors() でエラーの有無を調べる。 |
13章 |
| messages.properties |
エラーメッセージなどの文言をまとめて書くファイル。src/main/resources に置く。 |
13章 |
| typeMismatch |
数値の欄に文字を入力したときなど、値の形式が正しくないときのエラー。 |
13章 |
ツール・その他
| 用語 |
意味 |
初 出 |
| Eclipse(Pleiades All in One) |
Java の開発に使う統合開発環境。Pleiades は日本語化され、JDK などが同梱された配布版。 |
2章 |
| STS(Spring Tools) |
Eclipse で Spring Boot の開発をしやすくするプラグイン。Pleiades に同梱されている。 |
2章 |
| JDK |
Java のプログラムを作って動かすための道具一式。この教材では Eclipse に同梱の Java 17 を使う。 |
2章 |
| ワークスペース |
Eclipse がプロジェクトや設定を保存するフォルダー。 |
2章 |
| Maven |
ライブラリの管理とビルドを行う道具。この教材では Eclipse が裏側で使う。 |
1章 |
| pom.xml |
Maven の設定ファイル。使うライブラリ(依存関係)の一覧が書かれている。 |
4章 |
| スターター |
「Web アプリを作る」「JPA を使う」など、目的ごとに必要なライブラリをまとめたもの。 |
1章 |
| Spring Initializr |
Spring Boot のプロジェクトのひな形を作るサービス(https://start.spring.io)。Eclipse のスターター・プロジェクトの作成で使われる。 |
4章 |
| application.properties |
Spring Boot アプリの設定ファイル。データベースの接続先などを書く。 |
4章 |
| Tomcat |
Webアプリを動かすサーバー。Spring Boot の中に組み込まれている。 |
1章 |
| Whitelabel Error Page |
Spring Boot が標準で表示するエラー画面(この教材では「Whitelabel エラー画面」と呼ぶ)。ステータスコード(404、500 など)が表示される。 |
4章 |
| JUnit |
Java のプログラムをテストするためのフレームワーク。 |
7章 |
@SpringBootTest |
テストのときに Spring を起動し、Bean を使えるようにする。 |
7章 |
前へ
付録B よくあるエラーと対処法
次へ
付録D 送信内容で原因を切り分ける