1.1.4 mybatis关联映射注解查询

一对一注解查询:

1.创建实体类,一个user表,一个idcard表,实体类user里面应该存在IdCand属性。

2.创建两个映射接口,如UserMapper和IdCardMapper,先写IdCardMapper接口,@select(""),然后查询语句即可,创建调用方法类型为Card,(附魔刀)。而在UserMapper里面同理,但是需要用@Result建立映射,@Results({@Result内进行属性配对,并且用逗号继续分隔}),用属性one=@One实现一对一对关系,()的里面仅是属性select的IdCard的相对路径。再创建调用方法类型为Student,(包装)。

3.将CardMapper类写入mybatis-config核心对象文件<mappers>标签里面了。

4.再创建测试类,测试类写在@Test里面,获取配置,getMapper获取动态代理(什么什么.class),最后用mapper调用类里面的方法即可,传入参数为1。最后用session.commit();表示开启事务。


一对多注解查询:

1.创建两个实体类,student和orders,Student实体里面的orders属性应该用List<>的格式定义。student内应该存在Orders的属性。

2.创建两个映射接口,一个为StudentMapper,第二个为OrdersMapper,先写后者,同一对一,就是需要@Result映射,从而可以实现List<>属性可以一一对应获取,最后写调用方法。而前者则是同上,id=true可以加上,就是在最后换成many=@many,一样是(),然后select填入传入的list属性,当然这里是需要column和property的属性参数,注意传出是ordersList,且是属性,不是类型。

3.创建test类,同一对一。传入id即可。

4.核心对象文件配置类。

5.运行类。


多对多注解查询:

1.两个实体类,数据库三个表,需要外键链接,如用foreign key() references orders_id(id)。

2.类映射文件同一对多,但唯一区别就是products的多了个子查询,子查询的id由orders_id传入,所以需要引用column="id"。

3.创建test文件,同一对多

4.核心对象文件配置

5.运行测试类

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值