public class User { private String _userid; private String _name; private String _password; private String _email;
SELECT userid as userid, email as email , password, name as Name FROM USER
這時候就要使用resultMap的機制了,我們將先前的UserMapper.xml更改為如下:
< select id='getUserById' parameterType='String' resultType='User'> SELECT userid as Userid, email as Email , Password, name as Name FROM USER WHERE USERID = #{userId} </ select>
在這裡,我們加上了< resultmap></ resultmap>的設定,依照上面設定很容易可以看得出來,
column代表的是SELECT 出來的 field name,而對應的property代表的就是User Class中的field name,如此一來,利用這個方式就不需要名字一定得相同囉。
2013/9/7補充:
此種方式只適用一次回傳大量資料的resultMap,並不適用SELECT單一資料的resultType,
如果有需要,還是得乖乖指定回傳fieldName,詳情請見MyBatis - 使用resultType回傳單一SELECT資料時都是Null
沒有留言:
張貼留言