
String sql = "select * from user where username=? and password = ?";
User user = template.queryForObject(sql, new BeanPropertyRowMapper<User>(User.class), loginUser.getUsername(), loginUser.getPassword());
不懂BeanPropertyRowMapper<User>(User.class)的作用。
uj5u.com熱心網友回復:
BeanPropertyRowMapper<User>(User.class) 你可以理解為是一個資料模型,將你這條sql查到的資料 按你規定的這個User資料模型,封裝成一個User物件
所以你這個queryForObject的方法回傳值型別才是一個User
出現空指標 問題是這次查詢 不一定回傳的是null 有可能回傳的是一個空行的結果(你可以當成一個小bug),
解決方案可以是: 直接try-catch 這條 查詢陳述句 如果拋出空指標 直接將user 賦值為null
也就是無論查詢到空行資料還是無資料,最終結果都是null
uj5u.com熱心網友回復:
找出問題了,是以為JDBCUtils工具類對DateSource的賦值出現問題,在創建template的時候傳入DataSource,導致template雖然創建,但是不能正確連接到資料庫。uj5u.com熱心網友回復:
我也是空指標例外 難搞哦 上戲理我一下uj5u.com熱心網友回復:
看看是否正確連接到資料庫轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/66244.html
標籤:Web 開發
