キーとしてユーザー名を含み、値としてユーザーオブジェクトを含むマップを作成して、ユーザーリストに同期しようとしています。マップが作成されると、オブジェクト値を取得するのに問題が発生します。以下は私が使用しているコードです。
private Map<String, User> map = new HashMap<String, User>();
次のようにマップキーとオブジェクトを入力しています。
List<User> users = session.createCriteria(User.class).list();
for(ApplicationUser user : users) {
map.put(user.getUserName(), user);
}
次のようにデータを取得しようとしています。
List<Person> persons = session.createCriteria(Person.class).list();
for (Person p : persons) {
User user = map.containsKey(p.getUsername()) ? map.get(p.getUsername()) : new User();
//Email is always null.
System.out.println(user.getEmail());
}
誰かが私のマップからオブジェクト値を取得する方法について正しい方向に私を向けるのを手伝ってもらえますか?ありがとう