View Javadoc
1   package model.repository;
2   
3   import model.entity.User;
4   
5   import javax.persistence.EntityManager;
6   import javax.persistence.PersistenceContext;
7   import java.io.Serializable;
8   
9   
10  /**
11   * Classe che incapsula la logica per il recupero di entità di tipo {@link User}
12   */
13  public class UserRepository implements Serializable {
14  
15      @PersistenceContext
16      protected EntityManager em;
17  
18      /**
19       * Restituisce i dati di un utente data un email
20       * @param email email dell'utente
21       * @return entità User
22       */
23      public User getByEmail(String email) {
24          return em.createQuery("from User u where u.email=:email", User.class).setParameter("email", email)
25                  .getResultList().stream().findFirst().orElse(null);
26      }
27  }