selectByPrimaryKey()方法的参数该怎么写,如果表中的主键为复合主键

selectByPrimaryKey()方法的参数该怎么写,如果表中的主键为复合主键

关于用input去写button的问题

问题描述:

项目中mybaits-generator生成的selectByPrimarykey()方法,如果表中的主键为复合主键,那么我该怎么写传入的参数呢?

相关截图:

http://img1.sycdn.imooc.com//climg/60066663094ddd4205680258.jpg

http://img1.sycdn.imooc.com//climg/60066672091adef908940576.jpg

相关代码:

​@Autowired
demo1Mapper demomapper;
@Override
public demo1 getzongjine() {

return demomapper.selectByPrimaryKey(//参数该怎么写)

请老师解答。


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小脸 2021-01-19 15:24:23

同学你好,这里参数的传递与复合主键(主键)是没有关系,而是根据对应UserMapper中该方法定义的参数有关,如下(以课程为例)

http://img1.sycdn.imooc.com//climg/600688f7098bbd8807340478.jpg

http://img1.sycdn.imooc.com//climg/6006890a09a25fbd12120201.jpg

祝学习愉快~


  • rock221 #1

    jdbcType=interger, 为啥会加这个啊。 什么是复合主键啊,老师 。

    2021-06-08 12:18:25
  • 同学你好,

    1、可以参考一下MyBatis开发文档中对于jdbcType的解释:

    http://www.mybatis.org/mybatis-3/zh/sqlmap-xml.html#Result_Maps。

    http://img1.sycdn.imooc.com//climg/602f665209ceef0324020078.jpg

    也就是说jdbcType是指数据库中的字段的数据类型,如:VARCHAR,INTEGER

    2、复合主键就是用2个或2个以上的字段组成主键。比如存在学生表,课程表,成绩表。学生表中有有学号id(stu_id),课程表中有课程id(course_id),然后成绩表中使用这两个字段,学号id(stu_id)和课程id(course_id)组成成绩表中的主键。成绩表中的主键id就叫做复合主键。

    祝学习愉快~

    2021-06-08 14:42:50
  • 这个jdbc类型也可以不写吧,以前都没写过。 

    2021-06-08 14:44:25
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师