Maison  >  Questions et réponses  >  le corps du texte

java - 数据库一条记录为什么经过hibernate查询变成一个对象了呢??

今天面试问到了这个问题,他的意思是让剖析源码吗??突然感觉到好奇怪,,ORM框架,不就是这样的吗??求大神解释。谢了

阿神阿神2763 Il y a quelques jours768

répondre à tous(5)je répondrai

  • 黄舟

    黄舟2017-04-18 10:58:07

    J'étais trop pressé pour répondre aux questions en partant le matin. Parlons-en maintenant en détail. Deux points peuvent être évoqués ici :

    • Persistance

    • Désérialisation

    Puis Persistance Tout le monde en bas a mentionné qu'un objet est enregistré dans le système de stockage. Dans le cas que vous avez mentionné, il est enregistré dans la base de données. Ensuite, chaque attribut est généralement utilisé comme champ, puis la valeur est enregistrée sous forme d'enregistrement.

    Puis désérialisation. La connexion à la base de données est établie via socket, il ne fait donc aucun doute qu'elle est passée par le réseau. Si vous devez transmettre un objet sur le réseau, vous devez le sérialiser. En d'autres termes : Le processus de désérialisation est terminé lorsque le ResultSet est obtenu via le lien de base de données.

    répondre
    0
  • 迷茫

    迷茫2017-04-18 10:58:07

    Alors utilisez d'abord SQL fréquemment et voyez comment utiliser le jdbc original, et vous saurez pourquoi il existe ce framework

    répondre
    0
  • PHPz

    PHPz2017-04-18 10:58:07

    Généralement, l'intervieweur demandera JDBC d'aller au fond des choses, donc je ne pense pas que la désérialisation mentionnée par @波Fumu signifiait ce que l'intervieweur voulait dire. Vous pouvez obtenir l'objet JDBC en exécutant SQL en utilisant le ResultSet natif. Le framework en prend simplement les valeurs de champ et les encapsule dans un objet. C'est ce que je comprends, et je n'ai en effet jamais vu le code source de ce ORM, même si je suis plus à l'aise avec Mybatis.

    répondre
    0
  • 天蓬老师

    天蓬老师2017-04-18 10:58:07

    Cela n'a rien à voir avec la désérialisation.
    La requête JDBC d'origine est un ResultSet. Hibernate connaît la correspondance entre les champs et les propriétés de l'objet dans le ResultSet via la configuration XML ou l'annotation, puis génère des objets POJO via le mécanisme de réflexion.

    répondre
    0
  • 大家讲道理

    大家讲道理2017-04-18 10:58:07

    Quelle coïncidence, seize heures après avoir posté la question, on m'a posé la même question lors de l'interview.
    Ma réponse est fondamentalement la même que celle de @Xing Aiming à cette question. Mais en regardant la réaction, elle. je n'ai pas l'impression que l'intervieweur voulait Oui.
    Personnellement, je pense que ce genre de question est assez étrange. La raison principale est que je n'arrive pas à comprendre l'aspect spécifique que je veux évaluer.

    Il y a une autre question. J'ai vérifié plusieurs fois pour m'assurer de l'avoir bien entendu, mais je ne comprends toujours pas de quoi il s'agit..

    Quelle est la différence entre jquery ${} et #{} s'il vous plaît ? notez les accolades ..

    répondre
    0
  • Annulerrépondre