session的load()方法是加載數據,從數據庫中取得數據,session.load(class,i)返回的是一個對象;
session的get()方法也是從數據庫中取得數據,session.get()方法返回的也是一個對象。
二者之間是有區別的:
調用get()方法取得的直接就是對象,在調用get()方法時直接就發出了SQL語句;
而調用load()方法取得的只是對象的一個代理,在調用load()方法時,並未立刻發出SQL語句,
而是在用到對象或其屬性的時候才發出SQL語句。
不存在對應記錄時,二者反應也不同: 調用get()方法直接報錯,因爲在調用時直接發出的了SQL語句;
調用load()方法時則不會報錯,因爲load()方法調用時並未立刻發出SQL語句。
——空氣還在,希望還在。