Spring BootとVue.jsで構築する漢方薬膳サービスシステム
1. システム概要
本システムは、Java言語、Spring Bootフレームワークをバックエンドに、Vue.jsをフロントエンドに採用し、MySQLデータベースを用いてデータ管理を行うWebサービスプラットフォームです。ユーザーフレンドリーなインターフェースはAJAX技術を活用して構築されています。開発はIntelliJ IDEAなどの統合開発環境で行われ、Tomcatサーバーを通じて情報のやり取 ...
5月23日 02:59 投稿
Spring Bootを使用した分散ロックの実装
Spring Bootを使用した分散ロックの実装
1. 分散ロックとは何か?
分散システムでは、複数のノードが並行してタスクを実行するため、データの一貫性を保証し、リソースの競合を避けるために共有リソースへのアクセスを制御するメカニズムが必要です。分散ロックは、分散環境における並行アクセスを制御するための仕組みで、同一時刻に一つのノードのみがロックを取得できる ...
5月22日 21:29 投稿
Spring Bootで@RequestBodyがnullになる問題:LombokとJacksonの命名規則の衝突を解決する
Spring Bootを使ったJava Web開発において、JSONパラメータを@RequestBodyで受け取る際に、特定のフィールドだけがnullになる問題はよく発生します。本記事では、Lombokの@Dataアノテーションで生成したエンティティクラスにおいて、先頭が小文字、2文字目が大文字のフィールド(例:xIndex)で起きるパラメータマッピング失敗の原因と解決策を詳しく解説します。
1. 問題 ...
5月20日 11:45 投稿
RabbitMQ入門:基本概念からSpring Bootによる実践的メッセージングまで
コアコンセプト
Broker: メッセージの受信と配信を担うサーバーアプリケーション。RabbitMQサーバー自体を指す。
Connection: クライアント(パブリッシャー/コンシューマー)とBroker間のTCP接続。
Channel: Connection内部に確立される論理的な接続。高負荷時に毎回TCP接続を確立するオーバーヘッドを避けるため、スレッドごとにChannelを分けて通信を行う。AMQPプロトコ ...
5月20日 01:41 投稿
Spring Bootのリアクティブプログラミング:FluxとMonoのデータ出力方法
Spring Bootのリアクティブプログラミングにおいて、Fluxは非同期データストリームを表します。その内容を出力するには、subscribe()メソッドでストリームを購読する必要があります。以下に、Fluxの内容を出力する主要な方法をいくつか紹介します。
1. subscribe()を使用した内容の出力
subscribe()はFluxデータストリームを実行させる最も基本的な方法です。データ、エラ ...
5月20日 00:33 投稿
Spring BootアプリケーションでMyBatis-Plusを使った動的データソース切り替え実装
背景
モノリシックな管理画面アプリケーションから複数の業務データベースにアクセスする要件が発生し、実行時に接続先を切り替える仕組みが必要になった。マイクロサービス化を見送っているため、単一アプリケーション内で複数DBを操作できるようにする。
依存関係追加
MyBatis-Plus公式が提供する動的データソーススターターを導入する。
<dependency>
<gr ...
5月19日 19:47 投稿
MinIOファイルサーバー構築とSpring Boot連携ガイド
1. Windows環境でのMinIOインストール
1.1 MinIO概要
MinIOはGolang製のオープンソースオブジェクトストレージソリューションで、軽量ながらも高いパフォーマンスを提供します。
公式サイト: MinIO公式サイト
日本語ドキュメント: 旧バージョンのため公式英語ドキュメントを推奨
オブジェクトストレージとは?
大容量のファイル保存に適したクラウドストレージサービス ...
5月19日 02:02 投稿
Spring BootとVue.js、uni-appを活用した緊急物資管理システムの開発と実装
システム概要
本記事では、Spring Bootをバックエンドに、Vue.jsを管理画面に、uni-appをモバイルアプリケーションに採用した、緊急物資管理システムの技術的実装について解説します。災害発生時における物資の在庫管理、配布調整、需要予測を統合的に行うことが可能なアーキテクチャを構築しています。
技術スタックの選定理由
バックエンド:Spring Boot 3.x
Servletコ ...
5月19日 00:56 投稿
Spring BootにおけるRabbitMQ設定の詳細解説
接続設定
spring:
rabbitmq:
host: rabbitmq-server
port: 5672
username: admin
password: securepass
connection-timeout: 15000
virtual-host: /
requested-heartbeat: 60
publisher-confirms: true
publisher-returns: true
リスナー設定
spring:
rabbitmq:
listener:
simple:
prefetch: 1
concu ...
5月18日 05:54 投稿
Spring BootとMyBatis-Plusの統合:ModelAndViewとJSPを使用したCRUD操作とページネーション
MyBatisPlusConfig.java
package com.example.config;
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.co ...
5月17日 22:58 投稿