查看原文
其他

在家隔离第一天,来聊聊一个简单快速的mybatis的开发框架

TJ TJ君 2022-05-13

大家好,我是TJ

关注TJ君,回复“武功秘籍”免费获取计算机宝典书籍

TJ君将之前发过的各种项目及工具进行了整理,收录到了GitHub项目,欢迎各位小伙伴光临Star,地址如下:https://github.com/Wechat-TJ/TJ-WORLD-FORU

TJ君今天隔离在家,感觉比上班还要累!!!

既要远程完成各种计划中的任务,还要忍受单位VPN变态的各种不方便,还要兼顾小孩子的各种云端课程,真是一段五味杂陈的经历,而且这个经历。。。。不知道还要持续多久~~~~

不过呢,TJ君还是那个乐观的TJ君,没有什么困难能打到TJ君~虽然很忙碌,但还是抽空回顾了一下自己和大家分享的各种项目,然后发现一点,似乎TJ君没怎么介绍过和mybatis相关的内容,那么择日不如撞日,就今天了!

今天,TJ君要和大家分享的是一个简单、快速、有效为主要特点的mybatis开发框架,fastmybatis

光从名字,就知道,他的特点,就是快快快!!!

尤其对于新人来说,fastmybatis上手难度也是不高的,因为他:

  • 零配置快速上手
  • 无需编写xml文件即可完成CRUD操作
  • 支持mysql、sqlserver、oracle、postgresql、sqlite
  • 支持自定义sql,对于基本的增删改查不需要写SQL,对于其它特殊SQL(如统计SQL)可写在xml中
  • 支持与spring-boot集成,依赖starter即可
  • 支持插件编写
  • 支持ActiveRecord模式
  • 提供通用Service
  • 轻量级,无侵入性,是官方mybatis的一种扩展

总之呢,就是很容易上手,TJ君举个快速开始的例子:

第一步,新建一个springboot项目。

第二步,在pom.xml中添加如下内容


<dependency>
    <groupId>net.oschina.durcframework</groupId>
    <artifactId>fastmybatis-spring-boot-starter</artifactId>
    <version>最新版本</version>
</dependency>

第三步,就可以快速使用了~例如最基础的增删改查表的使用:


/**
 * 增删改查例子
 */

@RestController
public class CrudController {

    @Autowired
    private UserService userService;


    /**
     * 分页查询
     * http://localhost:8080/user/page?id=10
     * http://localhost:8080/user/page?pageIndex=1&pageSize=5
     *
     * @param param
     * @return
     */

    @GetMapping("/user/page")
    public Result<PageInfo<TUser>> page(UserParam param) {
        Query query = param.toQuery();
        PageInfo<TUser> pageInfo = userService.page(query);
        return Result.ok(pageInfo);
    }

    /**
     * 新增记录,这里为了方便演示用了GET方法,实际上应该使用POST
     * http://localhost:8080/user/save?username=jim
     *
     * @param user
     * @return
     */

    @GetMapping("/user/save")
    public Result<Integer> save(TUser user) {
        userService.saveIgnoreNull(user);
        // 返回添加后的主键值
        return Result.ok(user.getId());
    }

    /**
     * 修改记录,这里为了方便演示用了GET方法,实际上应该使用POST
     * http://localhost:8080/user/update?id=10&username=jim
     *
     * @param user 表单数据
     * @return
     */

    @GetMapping("/user/update")
    public Result<?> update(TUser user) {
        userService.updateIgnoreNull(user);
        return Result.ok();
    }

    /**
     * 删除记录,这里为了方便演示用了GET方法,实际上应该使用DELETE
     * http://localhost:8080/user/delete?id=10
     *
     * @param id 主键id
     * @return
     */

    @GetMapping("/user/delete")
    public Result<?> delete(Integer id) {
        userService.deleteById(id);
        return Result.ok();
    }
}

是不是就是那么的简单?其余的用法小伙伴们可以看下源项目中对于Mapper方法的使用列表,TJ君就不一一阐述,因为在家的TJ君要去烧饭了~谁说程序猿不能上得厅堂下得厨房呢~

点击下方卡片,关注公众号“TJ君

回复“fastmybatis2022”,获取仓库地址

关注我,每天了解一个牛x、好用、有趣的东东

往期推荐
在家也可以轻松使用的开源前后端分离在线考试系统
JavaFx实用小工具超60+大集合
新一代生产力工具,让你的效率UP!UP!UP!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存