対象ファイル
-
docs/00_Developer_Terms.md(開発用語および設定概念の定義)
はじめに
今回はプロジェクト boot_two_sale の開発および保守において使用される主要な技術用語、フレームワーク、および設定概念を整理した。
Gradle ビルドツール、インフラストラクチャ関連の設定、Spring MVC のアーキテクチャ、および Git バージョン管理に関する概念について体系的にまとめている。
開発用語および技術仕様(Developer Terms & Concepts)
-
基礎技術およびインフラストラクチャ(Core Tech & Infrastructure)
- Gradle Build Tool: Groovy DSL を使用してビルドライフサイクルを自動化するツール。
-
Embedded JSP Engine (
tomcat-embed-jasper): 組み込み Tomcat 環境で JSP を動的に変換・コンパイルするエンジン。 -
Oracle Character Set Library (
orai18n): DB の文字コードと Java 環境間の不整合や文字化けを防ぐ拡張ライブラリ。 - View Resolver Prefix/Suffix: 論理ビュー名を物理的な JSP ファイルのパスに変換する設定。
-
MyBatis JDBC Type for Null: 検索結果が
nullの場合に備える MyBatis 設定。
-
Git バージョン管理コマンド
-
cd [Path]: 作業ディレクトリを移動するコマンド。 -
git init: Git のバージョン管理対象リポジトリとして初期化するコマンド。 -
git add .: 変更ファイルをステージングエリアに登録するコマンド。 -
git commit -m: 変更履歴をローカルリポジトリに記録するコマンド。 -
git branch -M main: デフォルトブランチ名をmainに強制変更するコマンド。 -
git remote add origin: リモートリポジトリを接続・登録するコマンド。 -
git push -u origin main: ローカルの履歴をリモートへアップロードするコマンド。
-
-
アノテーションおよびコア概念(Annotations & Core Concepts)
-
@SpringBootApplication: 自動設定、コンポーネントスキャンなどを統合して有効化する中心的なアノテーション。 -
SpringApplication.run(): 組み込みコンテナを起動し、IoC コンテナを初期化するエントリーポイントメソッド。 -
@Controller: HTTP リクエストを受け付け、ビュー名を返却する Spring MVC のコンポーネント定義。 -
@Autowired: スプリングコンテナに登録されている Bean を自動注入するアノテーション。 -
@RequestMapping: URL パスと HTTP メソッドをコントローラに結びつけるアノテーション。 -
HttpServletRequest: リクエストパラメータの取得やスコープ属性を操作する標準オブジェクト。
-
-
アーキテクチャおよびパッケージ構造(Architecture & Packaging)
-
Root Package (
co.kr.sale): メイン実行クラスが配置され、コンポーネントスキャンの基準点となる最上位パッケージ。 - Layered Architecture: 責務に応じてコンポーネントを階層別に分離する設計手法。
- DTO: データのカプセル化を維持しつつプロセス間でデータを転送するオブジェクト。
- JavaBean / Encapsulation: メンバ変数を隠蔽し、Getter/Setter を通じて安全にアクセスさせる原則。
- DAO / MyBatis Mapper Interface: 永続化層のコンポーネントであり、SQL マッピングを通じて DB との相互作用を処理するインターフェース。
-
SQL Binding &
@Param: パラメータ値をクエリ内に安全にバインドするためのメカニズム。 -
@SpringBootTest: 統合テストを実行する際、実際のコンテナ環境と同様の ApplicationContext をロードするアノテーション。 -
JUnit 5 (
@Test): 単体テストを記述・実行するための標準的なテストフレームワーク。 - DispatcherServlet: すべての HTTP リクエストを最初に受信し、適切なハンドラーにディスパッチする中央のサーブレット。
- View Resolver: 論理ビュー名を物理的なビューファイルパスに解決・変換するコンポーネント。
-
Root Package (
気になった部分・改善ポイント
1. エンコーディング設定とデータ整合性
orai18n や jdbc-type-for-null などの設定は、データベースとの通信における予期せぬ文字化けや null によるマッピングエラーを未然に防ぐために不可欠であり、環境構築時に確実な適用が求められる。
2. 責務の分離とレイヤードアーキテクチャ
プレゼンテーション層、ビジネス層、永続化層の各コンポーネントが明確に分離されていることで、保守性や拡張性が高まり、チーム開発時のコードリーディングやテストコードの記述が容易になる。
構成要素のまとめ
| カテゴリ | 主な用語・概念 | 役割および特徴 |
|---|---|---|
| Core Tech | Gradle, Jasper, orai18n, View Resolver |
ビルド自動化、JSP レンダリング、文字コード対応、パス解決 |
| Git Workflow |
git init, git add, git push
|
バージョン管理とリモートリポジトリ連携 |
| Spring Core |
@SpringBootApplication, @Controller, @Autowired
|
アプリケーションの起動、ルーティング、依存性注入 |
| Architecture | Layered Architecture, DTO, DAO Mapper | 階層別設計、データ転送、DB 永続化層の制御 |
今回学んだこと
-
boot_two_saleプロジェクトの開発において基礎となるインフラ、Git コマンド、Spring Boot のアノテーション仕様を体系的に整理できた - アーキテクチャやデータバインディングの仕組みを再確認し、今後の保守および開発作業に向けた基盤知識を深めることができた。