关于为什么一定要加构造方法获取ID
为什么一定要new一个对象传入id值来传递mapper里的参数ID
是因为mapper里面都参数范围是Users类?而getid方法不是static方法,需要通过对象实例才能调用,所以要传入对象并且让该对象有id值,才能准确的调用到想要的id?
同时对于多线程并发的时候,每个线程有自己的对象调用自己传入对象的id不会出错?
8
收起
正在回答
3回答
1、同学是指这里吗?
如果是,其实是因为这条的查询是动态sql语句,
报错的是<if test ="id">里的id,而不是where id = #{id}里的id
然后<if test="id">,会根据传入的类型,去里面找getId这个方法,而String方法里,根本就没有getId这个方法,而User里有。所以需要传入一个User类,因为我们又只需要Id,所以,我们就添加了 一个只有id的构造方法。这里同学记住就好。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
Java数据库开发与实战应用2018版
- 参与学习 人
- 提交作业 277 份
- 解答问题 4297 个
Java数据库开发的必备技能,从流行的MySQL数据库开始,到Java原生的数据库管理接口JDBC的使用,再到常用的数据持久化框架MyBatis,让你向Java工程师的目标又迈进了一步!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星