成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

java - 數(shù)據(jù)庫(kù)一條記錄為什么經(jīng)過(guò)hibernate查詢變成一個(gè)對(duì)象了呢??

瀏覽:122日期:2023-12-23 17:00:50

問(wèn)題描述

今天面試問(wèn)到了這個(gè)問(wèn)題,他的意思是讓剖析源碼嗎??突然感覺(jué)到好奇怪,,ORM框架,不就是這樣的嗎??求大神解釋。謝了

問(wèn)題解答

回答1:

之前早上出門(mén)答得太急了,現(xiàn)在來(lái)細(xì)說(shuō)一下,這里可以提到兩點(diǎn):

持久化

反序列化

那么持久化樓下各位都提到了,即將一個(gè)對(duì)象保存到存儲(chǔ)系統(tǒng)中。在你說(shuō)到的情況下,是保存到數(shù)據(jù)庫(kù)。那么一般是將各個(gè)屬性作為字段,然后保存其中的值成為一條記錄。

然后是反序列化。跟數(shù)據(jù)庫(kù)建立連接的是通過(guò)socket的,那么毫無(wú)疑問(wèn)是走了網(wǎng)絡(luò),你在網(wǎng)絡(luò)中需要傳輸一個(gè)對(duì)象就得對(duì)其進(jìn)行序列化。也就是說(shuō):在通過(guò)數(shù)據(jù)庫(kù)鏈接拿到 ResultSet 的時(shí)候就已經(jīng)完成了反序列化過(guò)程。

回答2:

所以先常常sql, 看用下原始的jdbc , 你就知道為什么會(huì)有這框架了

回答3:

一般面試官問(wèn)到JDBC就到底了吧,所以@泊浮目 所說(shuō)的反序列化我覺(jué)得不是面試官的意思。用原生的JDBC執(zhí)行SQL可以拿到ResultSet對(duì)象,框架不過(guò)是從里面取一個(gè)個(gè)字段值,然后封裝到一個(gè)對(duì)象中而已。我的理解就是這樣,也確實(shí)沒(méi)看過(guò)這種ORM的源碼,雖然我用Mybatis比較順手。

回答4:

這個(gè)和反序列化沒(méi)什么關(guān)系吧。原始JDBC查詢出的是ResultSet,Hibernate通過(guò)xml配置或Anotation知道了ResultSet中字段和對(duì)象屬性的對(duì)應(yīng)關(guān)系,然后通過(guò)反射的機(jī)制生成POJO對(duì)象。

回答5:

這么巧,你發(fā)問(wèn)題十六個(gè)小時(shí)后我面試被問(wèn)到了同樣的問(wèn)題.我的回答基本和@邢愛(ài)明在本問(wèn)題的回答一致.但是看反應(yīng),感覺(jué)并不是面試官想要的.個(gè)人覺(jué)得這種問(wèn)題挺奇葩的.主要get不到其具體想考核哪方面的東西.

還有一個(gè)問(wèn)題,我確認(rèn)了幾遍確定沒(méi)聽(tīng)錯(cuò),但是到現(xiàn)在也沒(méi)弄懂問(wèn)的是什么..jquery ${}和#{}有什么區(qū)別,注意是大括號(hào)..

標(biāo)簽: java
相關(guān)文章: