JpaRepository ou EntityManger ?
Bonjour,
Débutant en en framework spring et sur la spécification JPA, je ne saisis pas bien le concept d'accès aux données.
Je me demande si il y a 2 façons de faire, par exemple dans le code suivant, l'interface permet d'accéder aux requêtes CRUD simples grâce à l'interface JpaREpository :
Code:
1 2 3 4 5 6 7 8
|
public interface UserRepository extends JpaRepository<User, Integer> {
@Query(" select u from User u " +
" where u.username = ?1")
Optional<User> findUserWithName(String username);
} |
Par ailleurs, l'objet EntityManager à l'air de permettre le même travail, comme ici
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
@Repository
@Transactional
public class AppRoleDAO {
@Autowired
private EntityManager entityManager;
//On récupère les rôles d'un utilisateur
public List<String> getRoleNames(Long userId) {
String sql = "Select ur.appRole.roleName from " + UserRole.class.getName() + " ur " //
+ " where ur.appUser.userId = :userId "; |
Du coup je me demande si il ya 2 façons de faire et si il y en a une plus indiquée qu'une autre
Merci à vous