Mybatis中$和#取值的区别

  1. mybatis中通常会有传参数的方法要用到,有时候查询条件以及条件的值都需要方法参数传过来,在数据库中用以查询.
  2. #取值的时候,是将参数中的值当做字符串进行处理,而$是将参数中的值当做字符处理,简单的将--------比如我现在要查询数据库中 company=“tengxun” 的记录方法findByItem(String condition,String value); DAO操作时,condition中传入的参数是company(即是数据库中得名为company的一个字段),value中传入的是tengxun那么mysql语句写为select * from table where ${condition}=#{value}

例如:
@Select(“select * from” +
“(select id,owner,company,develop_depat,developer,developLanguage,type,parent_name,parent_english_name,system_name,system_english_name,system_platform,status,remarks from system_info " +
“where ${searchType}=#{searchValue}) as SysTable” +
" limit #{startNum},#{endNum}” )
ListfindAllByItems(@Param(“searchType”) String searchType, @Param(“searchValue”) String searchValue, @Param(“startNum”) int startNum, @Param(“endNum”) int endNum);

2.SQL语句中limit m,n的含义是跳过m条数据,向后查询n条,这一点误解的话在做分页处理的时候会出现错误。

3.Mybatis中使用注解时使用"""标签后,里边的内容可以像在mapper.xml中一样根据需要进行编写.
例如:
这里写图片描述

4.spring mvc中的mapper映射类中的方法名称不能重复(重载在这不能用),因为每一个方法名称都会被注册为一个id用以调用转化的mapper方法

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值