if (username == null || username.equals("")) {
throw new IllegalArgumentException("username is null or empty");
}
Query query = em.createQuery("SELECT u FROM User u WHERE u.username like :username");
query.setParameter("username", username);
User user = (User) query.getSingleResult();
return user;
}