为了账号安全,请及时绑定邮箱和手机立即绑定

MyBatis-Plus入门

难度高级
时长 4小时 0分
学习人数
综合评分9.57
101人评价 查看评价
9.7 内容实用
9.4 简洁易懂
9.6 逻辑清晰

讲师回答 / 老猿
我怀疑是你实体类中的主键用的基本数据类型,基本数据类型的成员变量,例如long的默认值是0。所以会出现你那么现象,换成基本数据类型对应的包装类即可,因为是引用类型,默认值为null。

讲师回答 / 老猿
你这个问题,我有点没明白,通用service中的save就是调用BaseMapper中的insert啊,只不过又包装了一下,返回是否添加成功。save就是添加的意思,在BaseMapper用的insert也是添加啊。

讲师回答 / 老猿
你是用springboot吗?有可能是你userMapper中的代码有重复,例如他对应的userMapper.xml文件中有重复。

讲师回答 / 老猿
网站规定,免费视频不提供代码。但是你可以参考其他同学自己敲,然后分享出来的代码看看,在留言区和评论去找找,有分享出链接的。

讲师回答 / 老猿
       从你的这个需求上看,如果没有单独的作业service、controller,动作的发起者是老师,一般可以写在teacher对应的service中,在teacherService中注入studentMapper,作业Mapper,单独写一个方法实现老师收取学生作业,最后可以在teacheController中调用这个方法。如果单独写作业的service、controller,那么老师收取学生作业这个方法的业务逻辑可以写在作业service中,然后作业controller中暴露给外界。

讲师回答 / 老猿
这个应该是无法去掉括号的,据我了解,有的版本加括号,有的版本不带括号,这个括号自己控制不了。这样加括号,从上面的sql语句看,加括号不影响你的结果,和不加括号的结果是一样的。

讲师回答 / 老猿
有可能是版本不一样,你使用的Mybatis-Plus是什么版本的?

讲师回答 / 老猿
请问在启动类上加MapperScan注解了吗,并且注解的路径配置的正确吗?

讲师回答 / 老猿
楼上的朋友说的对,可以用updateWrapper.setSql("字段 = 字段 +1")这种写法实现;

已采纳回答 / 老猿
可以这样写,前提是开发公司项目时,公司的规范中,不要求必须写service接口。

讲师回答 / 老猿
你好,同学,我个人认为:1、使用通用service的话,简单的逻辑可以写在controller中,例如就是前台传个id,你进行删除,或者查询返回给前端,你直接调用通用service的方法就可以了,不用在service层再写一遍方法。2、如果是复杂的逻辑,建议是写在service层里,你自己写实现方法即可。而且你的service不是继承mp的通用service吗,就一层service啊,不用再套一层service。

讲师回答 / 老猿
你好,UserService上增加@Service注解了吗?

讲师回答 / 老猿
我也不太明白你想要的东西是什么,自定义方法使用xml方式或者注解方式都可以。还是说,你想在service层,把mapper层的方法封装一下?

讲师回答 / 老猿
同学,你使用的MP是什么版本?selectList这个方法是直接使用的BaseMapper中的,还是自定义的,目前这么看,我看不出问题,方便把代码发到github或者gitee上,我帮你调试一下。
课程须知
1、有Java开发基础,了解Lambda表达式; 2、至少会使用一种关系型数据库; 3、熟悉Maven; 4、熟悉SpringBoot; 5、最好熟悉MyBatis。
老师告诉你能学到什么?
1、了解MP的基本原理及框架特点; 2、掌握MP通用Mapper的使用; 3、掌握MP常用注解的使用; 4、掌握ActiveRecord模式的使用; 5、掌握MP多种主键策略的使用; 6、掌握MP常用配置的使用; 7、掌握MP通用Service的使用; 8、掌握MP在某些应用场景下的具体使用方式。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消