MyBatis框架 注解

作用

简化mapper.xml文件
但是涉及到动态SQL依然需要使用mapper.xml文件
mapper.xml和注解可以共存

注解的声明

mybatis.xml中<mappers>使用
①<package/>
②<mapper class=""/>

注解的使用

定义在接口内部的方法上方,使用接口绑定直接使用
简单使用
如查询:@Select(“sql语句”)

/**
  * 查询vip表中所有内容
  * @return 表中数据
  */
 @ResultType(Vip.class)
 @Select("SELECT * FROM vip")
 public List<Vip> selAllVip();

结果:
在这里插入图片描述

resultMap多表查询(此处建议xml实现)

@Results(value={@Result(property="", column="",id=""
		@Result(property="",many=@Many(select="包名.类名.方法名"))
  })

Ps:
@Results相当于<resultMap>
@Result相当于<id>或<result>,以 true,false区分
@Many相当于<collection>
@one相当于<associatetion>

例:使用注解实现N+1查询

@Results(value = {@Result(property = "name", column = "name", id = false),
       		  @Result(property = "id", column = "id", id = true),
       		  @Result(property = "local", column = "local", id = false),
       		  @Result(property = "goods", many = @Many(select = "com.mfqh.mapper.AnnotationTest.selGoods"), column = "id")
 })
@Select("SELECT * FROM manufactory WHERE id = #{id}")
public Manufactory selManufactory(@Param("id")int id);

/**
  * 查询出对应的货物信息
  * @param id 工厂id
  * @return 货物信息
  */
@Select("SELECT * FROM goods WHERE produce=#{param1}")
public Goods selGoods(int id);

结果:
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值