これはちょっと疑問に思うかもしれませんが、私はこれについて多くのことを見つけることができませんでした(この記事以外:https://plumbr.eu/blog/memory-leaks/reducing-memory-consumption-by-20x)。空のカラムを含む結果セットのJava Beanはメモリ/サイズに大きな影響を及ぼしますか?
質問は次のとおりです.20列のOracleデータベーステーブルをクエリします。私たちは20のすべての列にマップするJava Beanを作成しました。 Spring JDBCを使用して、3つの列(20個中)を選択するクエリを実行し、Bean内の3個のプロパティ(合計プロパティ= 20)のみを設定します。つまり、残りの17個のプロパティはnullになります。今度は、結果セット(3つのフィールドが設定されていますが、17はヌルとして処理されます)を使用してレイヤー間を渡します。
これはJavaプログラムによって使用される総メモリに、何百ものDBレコードを取得するか、Javaは何とかそれを内部的に最適化するでしょうか?それだけで唯一の3つのフィールドがある豆を作成する方が良いでしょう(私たちはクエリの一部として必要?)
私たちは、JDK 1.8、春4を使用している、Oracleの11
答えてくれてありがとうございます.Micklesh、それは私にとって意味があります。私は答えを受け入れる前に、より多くの入力を待つでしょう。 – JavaTec