Quelle est la différence entre la requête.uniqueResult() vs session.load() en mode veille prolongée?

Quelqu'un peut me dire quelle est la différence entre ce code:

//This following method checks if there is an open session
//and if yes - returns it,  if not - opens a new session. 
Session session = getSession();
Query query = session.createQuery("from Entity e where e.id = 1");
Entity object = (Entity)query.uniqueResult(); 

et ce:

 Session session = getSession();
 Entity object = (Entity)session.load(Entity.class, new Integer(1));

La première méthode renvoie un objet proxy? Et si je l'appelle de nouveau est-il frappé de la base de données?

Double Possible de quel est l'avantage de la charge() et get() en mode veille prolongée?
Il n'est pas la copie exacte, mais il a accepté de répondre à répondre à votre question.
il n'est pas au sujet de la requête.uniqueResualt() c'est à propos de session.get() je pense qu'ils ont un comportement différent
n'a pas d'explication de load dans cette question une réponse à votre question? uniqueResult pouvez retourner null mais load n'aura jamais.

OriginalL'auteur Mohammad Mirzaeyan | 2017-01-09