0

従業員データをキャッシュしたいとします。EmployeeId はデータベースの主キーです。では、EmployeeId をキャッシュのキーとして使用してもよろしいでしょうか。つまり、

cache.put(employee.getId(), employee); // 従業員は従業員クラスのインスタンスです

それとも、キーをもっと複雑にする必要がありますか (ハッシュ アルゴリズムなどを使用して生成)? employeeId をキャッシュ キーとして使用しても害はありますか?

4

1 に答える 1

1

Employeeキーとして employeeId を使用しても害はありませんが、同じ ID を持つキャッシュ内の別のオブジェクトが従業員のキャッシュ エントリを上書きしないように、これに次のようなプレフィックスを付けることをお勧めします。だから、このようなもの:

// employee is an instance of Employee
cache.put("Employee::" + employee.getId(), employee);

編集:オブジェクト タイプごとに専用のバケットを作成した場合

// employee is an instance of Employee
cache.put(employee.getId(), employee);
于 2013-08-15T21:38:35.227 に答える