Springプロジェクトにおける組み込みの宣言的トランザクション@Transactionalの使用は推奨されない理由

トランザクションの基本概念 トランザクション、分離レベル、データベースの同時実行問題については、以下の記事を参照してください:データベーストランザクション、分離レベル、および同時実行問題の入門(MySQL) データベースの主なトランザクション分離レベルには以下のものがあります: READ_UNCOMMITTED(読み取り未コミット):最も低い分離レベルで、あるトラン ...

7月18日 00:53 投稿

Springの注解、AOP、内部構造とMyBatis統合までの実践ガイド

自動DIによる依存性管理の進化 SpringのIoCコンテナは、Bean間の依存関係を自動的に解決する「自動ワイヤリング」機能を提供しており、設定の冗長性を大幅に削減できます。XMLベースの定義から始まり、アノテーション、JavaConfigへと進化することで、開発効率と保守性が向上します。 XMLでの自動注入 Bean定義においてautowire属性を使用することで、プロパティ名または ...

7月11日 20:06 投稿

APIパフォーマンス最適化の実践手法

最適化手法の体系化 バッチ処理の適用 ループ内での単一処理を一括処理に変換 // 非効率な単一処理 orders.forEach(order -> { orderRepository.save(order); }); // 一括処理による最適化 orderRepository.saveAll(orders); 非同期処理の実装 即時性を必要としない処理をバックグラウンド化 @Async public void processBackgroundTask(Data data) { auditServi ...

7月8日 22:33 投稿

Spring Bootでのイベントリスナー実装と@TransactionalEventListenerの比較分析

承認プロセスや複数のフォームデータ処理においてデータの書き戻しが必要な場合、イベントリスナーを利用して処理を実装できます。 メソッドに@EventListenerアノテーションを追加する "#workflowEvent.processCode.startsWith('leave')" の解説: workflowEvent: メソッドのパラメータ processCode: workflowEventのプロパティ startsWith: processCodeの型の ...

6月2日 16:19 投稿