tk mybatis通用mapper

Spring boot 集成 通用 Mapper(tk.mybatis.mapper) 问:什么是通用Mapper? 答:通用Mapper就是为了解决单表增删改查,基于Mybatis的插件。开发人员不需要编写SQL,不需要在DAO中增加方法,只要写好实体类,就能支持相应的增删改查方法。 1.pom.xml 添加依赖 <dependency> <groupId>tk.mybatis</groupId&... 阅读详情

tk mybatis通用mapper

首先要明白, tk mybatis是国人写的对mybatis的增强包, 而不是mybatis官方出的官方包

其github网址如下: https://github.com/abel533/Mapper/wiki

基于starter的自动配置的通用mapper与springboot集成
  • 导入自动配置包

    <!-- 注意此处必须导入自动配置包 -->
    <dependency>
      <groupId>tk.mybatis</groupId>
      <artifactId>mapper-spring-boot-starter</artifactId>
      <version>版本号</version>
    </dependency>
    
  • 创建接口并继承自己想要的通用mapper

  • 在接口上标注@Mapper

    @org.apache.ibatis.annotations.Mapper
    public interface SysUserMapper extends Mapper<SysUser>{}
    
  • 创建对应的mapper.xml

  • 配置mapper.xml的位置以及包别名

    mybatis:
      mapper-locations: classpath:/mapper/*.xml
      type-aliases-package: com.sqt.mapper.bean
    

配置完成以后就可以使用通用mapper中的方法了

public SysUser getUserByName(String username, String nickname) {
        SysUser sysUser = new SysUser(username, nickname);
    	//这里的selectOne就是通用mapper中的函数
        SysUser sysUser1 = sysUserMapper.selectOne(sysUser);
        //sysUserMapper.
        return sysUser1;
    }

注意: @MapperScan这个注解是有两个不同的定义, 一个是org.mybatis.spring.annotation.MapperScan, 这个是mybatis官方写的@MapperScan, 还有一个是tk.mybatis.spring.annotation.MapperScan, 这个是通用mapper中定义的

在上述的配置中, 我们只能使用@Mapper来标注我们的mapper类, 而不能使用org.mybatis.spring.annotation.MapperScan类指定我们mapper类的位置, 具体为何可能是tk的作者还没有实现该功能吧(猜的). 而tk.mybatis.spring.annotation.MapperScan的作用将在下面介绍

基于@MapperScan的通用mapper与springboot集成

注意上面标题所指@MapperScan是org.mybatis.spring.annotation.MapperScan

  • 导入jar包

    <!-- 二者任选其一 -->
    <dependency>
                <groupId>tk.mybatis</groupId>
                <artifactId>mapper-spring-boot-starter</artifactId>
                <version>2.1.0</version>
    </dependency>
    
    <dependency>
                <groupId>tk.mybatis</groupId>
                <artifactId>mapper</artifactId>
                <version>4.1.5</version>
    </dependency>
    
  • 创建接口并继承自己想要的通用mapper

    public interface SysUserMapper extends Mapper<SysUser>{}
    
  • 配置@tk.mybatis.spring.annotation.MapperScan

    @Component
    @MapperScan(basePackages = {"com.sqt.mapper.mapper"})
    public class MybatisConfig {
    }
    
  • 创建对应的mapper.xml

  • 配置mapper.xml的位置以及包别名

    mybatis:
      mapper-locations: classpath:/mapper/*.xml
      type-aliases-package: com.sqt.mapper.bean
    

配置完成以后就可以使用通用mapper中的方法了

配置多个通用mapper
//这个类不能再com.sqt.mapper.mapper中, 因为mapper这个包会被@MapperScan这个注解扫描到
//这样spring会尝试去创建这个BaseMapper, 但是这个BaseMapper只是我们用来创建子接口的
//所以将其放在@MapperScan扫描不到的包中, 这里是com.sqt.mapper.plugin
public interface BaseMapper<T> extends Mapper<T>, SelectAllMapper<T> {
}
//这样继承BaseMapper就相当于继承了Mapper和SelectAll
@Repository
public interface SysLogMapper extends BaseMapper<SysLog> {
}
总结

使用上面两种中的哪种方式开实现通用mapper还是要看自己的项目导入的通用mapper的jar包

如果是springboot项目导入mapper-spring-boot-starter可以使用自动配置和@MapperScan的方式, 但是建议使用@MapperScan方式

如果是普通的项目只能使用@MapperScan方式

SSM整合通用mapper(tk.mybatis) SSM框架 spring4.0.2+mybatis3.2.6 maven工程 不会搭建框架的小哥们请自行前往这个大神的博客搭建,本博文只针对于通用mapper插件 SSM搭建入口http://blog.csdn.net/gebitan505/article/details/44455235 废话不多说 首先引入依赖(版本我用的都是最新的): 代码块中有左边这个span标签,我不知道怎么弄了去,你们引用的时候直接替换掉就行了。 <!-- 通用mapper --> <dependency 阅读详情

相关推荐

Spring Boot微服务框架整合之通用mapper插件(tk.mybatis)

继我上次的Springboot框架整合,整合了初步的微服务框架,还有mybatis整合实现数据库查询数据的demo现在给大家再整合一个本人觉得比较好用的通用mapper插件(tk.mybatis),这个插件里面封装好了我们需要用到的很多sql语句,不过这个插件是通过我们去调用它封装的各种方法来实现sql语句的效果。这样就不用像mybatis那样每次写一个接口就要写一条sql语句。这样大大减少了我们...

Lktao_96 4612

tk.Mybatis 扩展通用mapper接口

tk.Mybatis 扩展通用mapper接口

坚持学习永不言弃 687

zblog mysql数据库无法连接_ZBlog博客网站错误:MySQL数据库无法连接

前言前天搭建的博客网站,睡醒一觉起来网站挂逼了,其间无任何操作。主页都进不去,提示“MySQL数据库无法连接”,无论怎么刷新重启服务器都没用。最终从中午1点搞到凌晨2点,皇天不负有心人终于解决了。其实问题很简单,只是没这方面的经验,走了很多弯路。我本人并不是搞WEB的,搞这个博客纯碎就是玩玩罢了。处理这个问题的时候查了很久的资料,都是一些没太大意义的,无非就是让你改zb_user/c_option...

weixin_34691461的博客 2205

基于tk.mybatis扩展自己的通用mapper

基于tk.mybatis扩展自己的通用mapper1 jar引入2 编写配置类这里要注意两点:3 常规方法接口整合到自己的自定义Mapper接口上接下来我们会对 CommonMapper中提供删除方法的DeleteMapper进行增强,来给他添加逻辑删除的语句 目的 tk.mybatis 提供的通用mapper,虽然使用方便,不过在有些sql还是不能满足我们的需要的,而且我们希望对于delete...

OUOll的博客 9937

BAPI_OUTB_DELIVERY_CHANGE扩展指南:利用EXTENSION2与SMOD_V50B0001实现自定义字段更新

本文详细解析了如何利用BAPI_OUTB_DELIVERY_CHANGE的EXTENSION2参数与增强点SMOD_V50B0001,在不修改标准代码的前提下,安全、标准地更新SAP交货单的自定义字段。通过清晰的步骤指南和实战代码示例,帮助开发者掌握通过增强字段实现定制化业务需求的完整流程与调试技巧。

fanta的博客 451

《科研伦理与学术规范》 全部 习题_答案 2020年秋

科研伦理与学术规范 答案 文章目录科研伦理与学术规范 答案1. 第一章课后习题(必做) 答案1.1 第一章Demo2. 第二章课后习题(必做) 答案3. 第三章课后习题(必做) 答案4. 第四章课后习题(必做) 答案5. 第五章课后习题(必做) 答案6. 第六章课后习题(必做) 答案 # 每行5题 #写于2020.11.17 侵删 1. 第一章课后习题(必做) 答案 ABC, A, B ,D ,ABCD ABC, D, A, BCD, C D, D, 1.1 第一章Demo

羊老羊 25万+

使用tk.mybatis完成自定义mapper

mybatis中提供新增、修改、删除等,但是批量导入的方法是只支出数据库表主键为自增的,如果需要用到的地方很多,就很不方便,所以这个提供自定义一个mapper以支持非自增数据库的批量新增 1、定义接口 SpecialBatchMapper @RegisterMapper public interface SpecialBatchMapper<T> { /** * 批量插入数据库,所有字段都插入,包括主键 * @param recordList *

qq_38058332的博客 1856

Django 前后端分离实战:网络设备运维系统 - 从登录认证到业务模块

这篇文章分享了Django+Vue前后端分离开发网络设备运维系统的实战经验,重点介绍了登录认证、全局布局和设备管理三大模块的实现。文章包含以下核心内容: 登录模块实现:包括表单验证、Token认证、记住密码功能,以及美观的UI设计(渐变背景、毛玻璃效果) 全局布局架构:采用侧边栏+顶部导航的响应式设计,支持菜单权限控制和多设备适配 业务功能开发:详细展示了设备分类和部门管理的CRUD功能实现,包括列表展示、搜索过滤、分页等功能 常见问题解决:提供了5个开发中常见问题的解决方案,如Vue Router警告、C

qq_16766705的博客 526

tk.mybatis 中@Mapper、@MapperScan、配置mappers区别与联系

tk.mybatis https://github.com/abel533/Mapper/wiki/1.3-spring-boot 1.3 Spring Boot 集成 Spring Boot 在微服务领域中已经成为主流。 这里介绍通用 Mapper 如何同 Spring Boot 进行集成。 为了能适应各种情况的用法,这里也提供了多种集成方式,基本上分为两大类。 基于 starter 的自动配置 基于@MapperScan注解的手工配置 1.3.1 mapper-spring-boot-..

x526967803的博客 6912

MATLAB Appdesigner开发独立桌面App全流程(一):以打开串口功能为例介绍Appdesigner的基本使用

本文详细介绍了Appdesigner的基本使用,以串口功能为例介绍按钮回调函数的实现以及控件之间通信的问题

Zhuwany的博客 3万+

CMake入门教程【基础篇】CMake+Visual Studio2022构建C++项目

CMake+Visual Studio2022搭建C++环境

小鱼酱的博客 4971

TKMybatis 介绍和使用

目录一、什么是 TKMybatis二、TKMybatis 使用2.1 Springboot 项目中加入依赖2.2 使用讲解2.2.1 实体类中使用2.2.2 dao中使用2.2.3 Service 层中使用2.3 实际案例2.3.1 dao 层使用2.3.2 service 层使用TKMybatis 是基于 Mybatis 框架开发的一个工具,内部实现了对单表的基本数据操作,只需要简单继承 TKMybatis 提供的接口,就能够实现无需编写任何 sql 即能完成单表操作。 在 POJO 类中加入依赖

Admans的专栏 1716

结构化数据特征构建神器openfe的实战代码

最近订阅专栏的几位同学一起参加了AI比赛,该比赛的数据形式是结构化的。随着特征和模型的不断迭代优化,达到了一个难以跨越的瓶颈。希望我能够给出一些有效的方法,帮助他们提高成绩。在个人的调研和体验后,向他们推荐了结构化数据特征构建神器openfe,最终也帮助他们提升了十来名的成绩,个人也感到十分的欣慰。特意写此博客,希望能够帮助更多的同学。 文章目录 1. 安装 2. 实战例子一 3. 实战例子二

herosunly的博客 3万+

tk.mybatis.mapper 通用mapper的使用

1、引入通用mapper的包 <!--通用Mapper--> <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper</artifactId> <version>4.0.4</version> </depe...

三千炼心的博客 4923

推荐系统[六]:混排算法简介、研究现状混排技术以及MDP-DOTA信息流第三代混排调控框架,高质量项目实战。

混排是指将多个不同的推荐结果混合在一起,以提供更多样化的选择和更全面的覆盖。混排的目的是为了避免推荐系统出现过度偏向某些内容或类型的情况,从而提高推荐的多样性和准确性。混排的实现方式通常是基于多种推荐算法和数据源,通过加权和组合的方式来生成最终的推荐结果。信息流推荐算法的核心是理解用户兴趣,捕捉用户逛买意图,并据此做到高效的人货匹配。

丨汀、的博客 1930

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

通用Mapper——tk.mybatis(Example)

通用Mapper——tk.mybatis(简单使用,不包含Example) example用于添加条件,相当where后面的部分 一、使用示例 Example example = new Example(UserTableEntity.class); example.createCriteria().andLike("name","%" + likeName + "%"); List<UserTableEntity> users = userTableMapper.selectByExample

qq_41505160的博客 1652

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

SpringBoot项目引入通用Mapper(tk.mybatis.mapper)

主要解决springboot项目引入通用mapper(tk.mybatis.mapper)的时候一些可能会踩的坑:诸如tk.mybatis.mapper.provider.base.BaseSelectProvider.<init>() java.lang.ClassCastException: sun.reflect.generics.reflectiveObjects.TypeV...

suzhenchao的博客 1万+

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

tk mybatis通用mapper,复杂and or条件查询

需求:where查询,需要支持(a or b or c) and d 也就是a、b、c三个条件是或的关系,然后再与d相与。 尝试后,可以通过以下方式处理: 方式1:Weekend语法 复制代码 Weekend weekend = new Weekend<>(User.class); //关键字查询部分 String keyword = pageReq.getKeyword(); WeekendCriteria<User, Object> keywordCriteria = weeke

NKerbug的博客 5214

mybatis 通用Mapper 插件 tk-mybatis

通用Mapper,使用插件 tk-mybatis 接口 package ws.wsj.mapper; import tk.mybatis.mapper.common.Mapper; import ws.wsj.pojo.Ke; //插件tk-mybatis 通用mapper public interface KeMapper extends Mapper<Ke> { } package ws.wsj.pojo; import lombok.AllArgsConstructor; imp

卋舉 602

第三篇:Springboot整合通用mapper插件(tk.mybatis)

一、前言 Mybatis的开发者,大多数都会遇到一个问题,就是要写大量的SQL在xml文件中,除了特殊的业务逻辑SQL之外,还有大量结构类似的增删改查SQL。而且,当数据库表结构改动时,对应的所有SQL以及实体类都要随之更改。这无疑是给开发者增加工作量,导致开发者效率较低,使用起来非常不方便;下面我给大家介绍一个 通用mapper插件(tk.mybatis),它是在mybatis基础上,提供各种高...

weixin_38171468的博客 1699

tk.mybatis.mapper.provider.base.BaseSelectProvider通用Mapper问题

在使用通用Spring Boot+Mapper高版本时候存在的扫描不到包的问题报错tk.mybatis.mapper.provider.base.BaseSelectProvider。 版本号: Spring Boot 2.2.1 通用Mapper3.3.9 问题: Spring Boot的Pom文件导入如下依赖: <dependency> <group...

GxDong_的博客 577

Mybatis通用Mapper(tk.mybatis)的使用

一、前言 使用Mybatis的开发者,大多数都会遇到一个问题,就是要写大量的SQL在xml文件中,除了特殊的业务逻辑SQL之外,还有大量结构类似的增删改查SQL。而且,当数据库表结构改动时,对应的所有SQL以及实体类都需要更改。这工作量和效率的影响或许就是区别增删改查程序员和真正程序员的屏障。这时,通用Mapper便应运而生…… 二、什么是通用Mapper 通用Mapper就是为了解决单表增删改查...

不见其长,日有所长 3万+

通用Mapper之TK Mybatis

推荐阅读此网站,用法和介绍全面超级详细:Mybatis通用mapper 通用mapper的特点 让开发者极其方便的使用MyBatis进行单表的增删改查,但是也仅仅支持单表操作,不支持通用的多表联合查询。 实现原理 作者的博客:通用mapper的实现原理 整合到项目中 参考上边的文档即可,楼主这里只记录相关jar包的maven地址 Spring Boot项目整合通用mapper的启动器:mappe...

CHENFU_ZKK的博客 1046

tk.mybatis通用mapper指定字段名查询方法,使用Example的查询方法

使用tk.mybatis通用mapper指定字段名查询方法: 首先定义数据库表映射类: public class MybatisDemo { private Long id; private String name; private Long count; public Long getId() { return id; } public String getName() { return name; }

ipifei的博客 1万+

Springboot结合mybatis和mybatis generator的插件,利用tk.mybatis的通用mapper实现逆向工程。

SpringBoot结合Mybatis的generator插件以及tk.mybatis的通用mapper实现逆向工程的生成 1.首先在数据库中建好表。 2.然后在pom中增加mybatis和通用mapper的依赖,以及generator的插件。 3.需要自己在utils中的MyMapper中继承tk.mybatis中的通用模板。 4.然后编辑generator.xml文件,注意和properti...

mulinsen77的博客 3472
上一篇: java枚举类的定义,使用,本质
下一篇: 单例模式
AngerWind
博客等级 码龄10年 7粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值