session的get()方法和load()方法的區別

session的load()方法是加載數據,從數據庫中取得數據,session.load(class,i)返回的是一個對象;

session的get()方法也是從數據庫中取得數據,session.get()方法返回的也是一個對象。

二者之間是有區別的:

調用get()方法取得的直接就是對象,在調用get()方法時直接就發出了SQL語句;

而調用load()方法取得的只是對象的一個代理,在調用load()方法時,並未立刻發出SQL語句,

而是在用到對象或其屬性的時候才發出SQL語句。

不存在對應記錄時,二者反應也不同: 調用get()方法直接報錯,因爲在調用時直接發出的了SQL語句;

調用load()方法時則不會報錯,因爲load()方法調用時並未立刻發出SQL語句。





——空氣還在,希望還在。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章