java– tag –
-
Java
Java で static 変数をマルチスレッドで使うと危険な理由
static 変数は「全スレッドで共有される」 Java の static 変数は、クラスローダにより一度だけメモリに配置され、同一クラスを参照するすべてのスレッドから共有されます。これはインスタンス変数とは大きく異なる点です。 マルチスレッド環境では、複数... -
Java
Java:文字列を左右反転/逆順ソートする方法
Javaで文字列を左右反転したい、または文字の並びを逆順にしたいという場面は、業務・学習のどちらでも頻繁に発生します。ログ解析、入力チェック、回文判定、データ加工など、実務での用途は多岐にわたります。 本記事では、Javaにおける「文字列の左右反... -
Java
Java:レガシーシステムとの連携で文字化けを防ぐ方法
Javaでレガシーシステム(メインフレーム、古い業務サーバ、他社製パッケージなど)と連携する際、文字化けは非常によく発生するトラブルの一つです。特に日本語環境では、文字コードの違いが原因で、想定外の不具合につながることがあります。 本記事では... -
Java
Java Streams:複数条件でソートするテクニック
Java 8以降で利用できる Stream API を使うことで、コレクションの並び替えを簡潔かつ可読性高く記述できます。本記事では、複数条件でソートしたい場合の正しい書き方 を、基本から実践例まで丁寧に解説します。 Stream API におけるソートの基本 Stream ... -
Java
Java:文字コードUTF-8/Shift_JISを変換する方法
Javaで文字コード(UTF-8 / Shift_JIS)を変換したい場面は、業務システムやバッチ処理で非常によくあります。特に以下のようなケースでは、正しい変換方法を知らないと文字化けが発生します。 CSV・テキストファイルの入出力 他システム(Windows系)との... -
Java
Java Streams:MapをListに変換する全パターン
Javaで開発していると、Map を List に変換したい場面は非常に多くあります。特に Java 8以降のStreams API を使うことで、可読性の高いスマートな変換が可能になりました。 本記事では、 key だけを List にしたい value だけを List にしたい Map.Entry ... -
Java
Java:Base64のエンコード/デコードを扱う方法
Javaでは、Base64エンコード/デコードを標準APIだけで簡単に扱えます。ファイルデータやバイナリ情報を文字列として送受信したい場面(API通信・設定値保存・認証情報など)で、Base64は頻繁に利用されます。 本記事では、Java標準のBase64クラスの使い方... -
Java
Java:大規模バッチでメモリリークを防ぐテクニック
大量データを扱うJavaバッチ処理では、メモリリークやOutOfMemoryErrorが発生しやすく、運用トラブルの原因になりがちです。特に「開発環境では問題ないのに、本番で落ちる」というケースは非常に多く見られます。 本記事では、Javaの大規模バッチ処理でメ... -
Java
Java:プロキシ経由でREST APIを呼び出す方法
社内ネットワークや閉域環境では、インターネット通信は必ずプロキシサーバ経由というケースが多くあります。そのため、JavaでREST APIを呼び出そうとしても、 接続できない タイムアウトする 認証エラーになる といったトラブルに遭遇しがちです。 この記... -
Java
Java:祝日判定ロジックを実装する方法(日本の祝日)
Javaで日付処理を行う際、「その日が日本の祝日かどうか」を判定したい場面は非常に多くあります。例えば、バッチ処理の営業日制御、帳票出力日、締日計算、スケジューラ制御などです。 本記事では、Javaで日本の祝日判定を実装する代表的な方法を、シンプ...




