Java/JDBCによるサークル活動管理アプリケーションの開発

このドキュメントでは、Java Servlet/JSP、JDBC、およびMySQLデータベースを使用して、大学のサークル活動を管理するためのシンプルなWebアプリケーションの構築について解説します。本システムは、活動の追加、更新、削除、検索、および一覧表示(CRUD)の機能を提供します。以下に、主要なコンポーネントとその実装の詳細を示します。 データベーススキーマ 活動情報を ...

11月1日 12:43 投稿

Javaにおける内部クラスの解説

Javaでは、クラス内に別のクラスを定義できます。これは「内部クラス」と呼ばれ、大きく分けて4種類あります。 メンバー内部クラス ローカル内部クラス スタティック内部クラス 匿名内部クラス メンバー内部クラス メンバー内部クラスは、外部クラスのメンバー変数やメソッドと同じように、クラスの内部に定義されます。 class OuterClass { pri ...

10月30日 20:05 投稿

Javaにおけるガベージコレクション(GC)の基礎知識と役割

ガベージコレクションの定義 ガベージコレクション(GC)とは、プログラムが動的に確保したメモリ領域のうち、不要になった部分を自動的に解放する仕組みです。この技術はJava独自の概念ではなく、1960年に登場したLisp言語がその先駆けとされています。 GCの設計においては、主に以下の3つの問いが重要視されます。 どのメモリを回収すべきか? いつ回収を実行す ...

10月28日 19:01 投稿

Excel列番号のアルファベットと数値の相互変換(Java実装)

Excelファイルのインポート・エクスポート処理において、エラー発生時のセル位置をユーザーに正確に通知するためには、列番号を「A」「AA」のようなアルファベット形式と、内部処理用の数値形式との間で変換する必要があります。このようなニーズに対応するためのJavaによる実装例を以下に示します。 public class ExcelColumnConverter { public static void main(S ...

10月26日 13:46 投稿

PowerMockとMockitoを用いた高度なJava単体テスト手法

本記事では、JUnit 4と組み合わせてPowerMockおよびMockitoを使用し、通常では困難なシナリオに対応するJava単体テストを記述する方法について解説します。静的メソッド、プライベートメソッド、コンストラクタ、あるいはfinalクラスやメソッドのモック化といった、より高度なテストケースへのアプローチを具体的なコード例を交えて紹介します。 1. 必須依存関係の設定 ま ...

10月26日 05:27 投稿

SpringBootとVue.js/uniappを基盤とした多機能倉庫管理システムの設計と構築

1. システムアーキテクチャの概要 本システムは、効率的な在庫管理を実現するために、堅牢なバックエンド、リアクティブなWebフロントエンド、およびクロスプラットフォーム対応のモバイルアプリケーションを組み合わせた多階層アーキテクチャを採用しています。 バックエンド:Spring Boot サーバーサイドにはSpring Bootを採用し、Tomcatの内蔵サーバーを利 ...

10月25日 16:12 投稿

Visual Studio Code を活用した Java Properties ファイルの編集と管理ガイド

Java 設定ファイル管理における VSCode の役割 Java エコシステムにおいて、Properties ファイルは設定管理の標準形式として広く採用されています。キーと値を区切り文字で繋ぐ単純な構造は、技術者以外による修正も容易にしますが、同時に編集ミスによる障害のリスクも孕んでいます。特に Spring Boot 環境では、application.properties がアプリケーションの挙動を決定づ ...

10月25日 03:06 投稿

チェーン・オブ・レスポンシビリティ・パターン:業務フローの柔軟な委任設計

単一コンポーネントでは処理しきれない複数の判断ロジックを順次実行したいケースは、システム設計において頻繁に発生します。経費精算の承認フロー、ログフィルタリング、APIリクエストの前処理パイプラインなどが典型的な例です。このような「要求を順に渡していく」アーキテクチャを実現するのが、デザインパターンの一つであるチェーン・オブ・レスポンシビリティ(CoR ...

10月24日 01:54 投稿

Spring Boot と GTE 埋め込みモデルによる语义検索アーキテクチャの構築

企業内の技術資産やドキュメント管理において、既存の情報検索手法には明確な限界が存在します。キーワード一致に依存する従来のフルテキスト検索では、意図が一致しても用語が異なる場合に関連情報が抽出されず、ユーザーは大量のノイズを含む結果を手動で精査する必要があります。この課題を解決するため、自然言語処理(NLP)技術を応用し、文脈と意味を理解できる検索 ...

10月23日 12:25 投稿

三次大作業の振り返りと実装ノウハウ

最初に、問題クラス(Ques)、試験クラス(Test)、解答カードクラス(anscard)、学生クラス(Student)を定義しました。 Ques: num(番号), ques(問題文), ans(正解), pd(正誤判定), fen1(配点), fen2(得点), y(状態) Test: num2(試験番号), List<Ques>l(問題リスト), sum(総得点) anscard: num3(試験番号), man(学籍番号), List<Ques>card(解答リスト) Student: nam ...

10月22日 22:27 投稿