Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
環境:Java、Hibernate
2つのデータベースクエリを実行するとします。
擬似コード:
Author au1 = execute_query_1 Author au2 = execute_query_2
そして、2つのクエリがデータベースから同じレコードを返すと仮定しましょう。
次のステートメントを言っても安全ですか。
au1.equals(au2)
trueを返しますか?
はい、同じセッションでクエリを実行する場合は可能です。Hibernateは単にキャッシュからそれを取得します。
オブジェクトの作成者がequals()メソッドをオーバーライドする場合は完全に安全です。そうでない場合は、au1 == au2と入力するのと同じですが、これは何でも返すことができますが、これらは2つの異なるインスタンスである可能性があります。良いことはそれのための自動化されたテストを書くことです