mybatis 动态传入表名 注解_mybatis动态sql(注解方式)

就记录个实例,以后可以参考= =

方法一:provider

public class ArticleProvider {

public String selectAll(Map map) {

return new SQL() {{

SELECT("sz_article.*,sz_article_category.name");

FROM("sz_article");

LEFT_OUTER_JOIN("sz_article_category on sz_article.category_id = sz_article_category.id");

if (map.get("categoryId") != null) {

WHERE("category_id = #{categoryId}");

}

if (StringUtils.isNotEmpty((String) map.get("key"))) {

WHERE("title like CONCAT('%',#{key},'%')");

}

}}.toString();

}

}

mapper

@SelectProvider(type = ArticleProvider.class,method = "selectAll")

@Results(@Result(property = "category.name",column = "name"))

List selectAllWithCategory(Long categoryId,String key);

一些参考资料:

方法二:使用if标签

需要配合script标签使用

@Select("")

@Results(@Result(property = "category.name", column = "name"))

List selectAllWithCategory(Long categoryId, String key);

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值