Questions JPA, Hibernate

Au sujet save() et saveOrUpdate(), quelle est la bonne affirmation ?
  1. Avec save() on n’utilise pas de transaction.
  2. Save() est une méthode de l’objet Session, alors que saveOrUpdate() est une méthode de l’object Transaction.
  3. Save() insert un enregistrement en table. SaveOrUpdate met à jours un enregistrement. S’il ne le trouve pas, il l’insert.
  4. SaveOrUpdate() et Save() ne nécessite pas d’être dans un bloc de traitement d'erreur.

Qu'est qu'une application CRUD ?
  1. C'est le nom d'un algorythme de recherche de données dans un SGBDR.
  2. C'est l'acronyme qui désigne les quatre opérations de base pour la persistance des données.
  3. C'est le nom d'un algorythme de tri  des données dans un SGBDR.
  4. C'est le nom d'un algorythme de tri  des données dans un DBMS.

Comment comparer une partie du nom plutôt que le nom est entier ?
  1. SELECT nom, prenom FROM personne WHERE nom = "%ab%"
  2. SELECT * FROM personne WHERE nom = '%ab%'
  3. SELECT * FROM personne WHERE NOM LIKE '%ab%'
  4. SELECT * FROM personne WHERE NOM LIKE "ab"

Au sujet des jointures, quelle affirmation est correcte ?
  1. Inner Join retourne les enregistrements quand la condition est vrai dans au moins une des 2 tables.
  2. Inner Join retourne les enregistrements quand la condition est vrai dans les 2 tables.
  3. Full Join est pareil que Cross Join.
  4. Right Joint retourne tous les enregistrements de la table de droite même si la condition n’est pas vérifié dans l’autre table.

Au sujet de JPA, quel est le but la command Merge ?
  1. Lorsqu'une entité n'est plus persistant suite à un REMOVE, une opération Merge sur celle-ci la resynchronise avec l'entity manager.
  2. On utilise cette opération pour associer une entité à un autre entity manager que celui qui a été utilisé pour la créer ou la lire.
  3. Merge sert à fusionner 2 entités. L'une persistante, l'autre, non persistante.
  4. Lorsqu'une entité est  persistant, une opération Merge sur celle-ci la met à jour les données en base.

Au sujet du caching d’Hibernate, quelle affirmation n’est pas bonne  ?
  1. Le cache de premier niveau est propre à Hibernate. On peut aussi augmenter les performances en ajoutant un cache de second niveau grâce à une librairie tièrce (par exemple EHCache : Easy Hibernate Cache) .
  2. Le cache de premier niveau est lié à la session Hibernate, et les objets qui sont cachés ne sont visibles que pour une seule transaction. Il ne peut pas être désactivé. Le cache de second niveau est quant à lui lié à la session factory d'Hibernate. La portée de ce cache est la JVM où l'application est déployée. Les objets cachés sont donc visibles depuis l'ensemble des transactions.
  3. Il existe un cache de requête qui permet de cacher les résultats des requêtes exécutées.
  4. On peut explicitement désactiver les caches.

 Quels sont les annotations utilisées par JPA pour exprimer un relation entre deux entités ?
  1. @OneToOne, @OneToAll, @AllToOne, @AllToAll
  2. @OneByOne, @OneByMany, @ManyByOne, @ManyByMany
  3. @OneToOne, @OneToMany, @ManyToOne, @ManyToMany
  4. @OneByOne, @OneByAll, @AllByOne, @AllByAll

Qu’est-ce que JPA ?
  1. Un ensemble d’annotations permettant pour simplifier l’utilisation des requêtes SQL.
  2. Un ensemble d’annotation à utiliser avec l’API JDBC.
  3. Il permet la persistance des objets JAVA dans un base de données.
  4. Un framework qui simplifie l’utilisation de l’API JDBC.

A quoi servent les transactions ?
  1. JTA, qui définie les transactions, est une API principalement utilisée par les site de eCommerce ou les banques pour gérer et sécuriser leurs procès transactionnels.
  2. C’est un ensemble d’opération qui réussi ou échoue dans son ensemble.
  3. Si une opération échoue, la transaction assure que la reste des opérations seront bien exécutés.
  4. Un procès transactionnel ne peut être défini que sur une classe DAO, par l’annotation @Transaction.





Aucun commentaire:

Enregistrer un commentaire