select()報(bào)錯(cuò)下標(biāo)越界異常
/** ?*?名字里包含"A",且年齡小于20的 ?*?問題描述:執(zhí)行,報(bào)錯(cuò)?Cause:?java.lang.IndexOutOfBoundsException:?Index:?2,?Size:?2 ?*?????????去掉select("id",?"name"),執(zhí)行正常,返回兩條記錄. ?*/ @Test public?void?selectByWrapperSuper1(){ ????QueryWrapper<User>?query?=?Wrappers.query(); ????QueryWrapper<User>?queryWrapper?=?query.select("id",?"name").like("name",?"A") ????????????.lt("age",?20); ????List<User>?userList?=?userMapper.selectList(queryWrapper); ????userList.forEach(System.out::println); }
2019-12-13
? ? ? ?同學(xué)找到原因了,是你在實(shí)體中加了@Builder注解的問題,把這個(gè)注解去掉就好使了,這個(gè)注解加上之后,應(yīng)該就不生成作用域?yàn)閜ublic的構(gòu)造方法了,而是通過建造者模式創(chuàng)建實(shí)體類。
2019-12-11
還有,你使用的是MP的什么版本?
2019-12-11
正常情況下不應(yīng)該報(bào)錯(cuò)啊,數(shù)據(jù)庫(kù)中有id字段嗎?還有你沒必要使用兩個(gè)QueryWrapper變量,用一個(gè)設(shè)置查詢條件即可。
2021-07-16
@Builder注解不用去掉,User實(shí)體類增加兩個(gè)注解即可
@AllArgsConstructor
@NoArgsConstructor
2019-12-12
https://github.com/AllenHv/test
?
2019-12-11
以上是我的pom
2019-12-11
有Id字段的,上面這串代碼可以查詢到結(jié)果.