FluentMybatis

在这里小阳先提一嘴FluentMybatis和MybatisPlus不太一样的具体
参见链接: FluentMybatis

这里是我工程代码的链接:https://pan.baidu.com/s/1wpMDI1b1MFuN-uSTuc6-Kg
提取码:j40t

FluentMybatis支持哪些数据库

mysql,mariadb,h2,sqlite,oracle,oracle12,db2,hsql,postgre_sql,derby,click_house,informix,sql_server2005,sql_server2012,firebird。初次之外还提供了两个其他数据库主要是为了尽可能满足一个应用使用到多数据源类型的场景。

快速开始

仅仅只需要几个依赖就可以快速的搭建一个demo出来:
下面是mysql的数据源仅供参考,其他的应该也差不多,注意一些特殊的不同数据库是不同滴,具体可见多数据库支持模块

  1. 最基本的sprintboot
  2. mysql
  3. mybatis
  4. lombok
  5. fluent-mybatis;
  6. generator
    废话不说了maven直接代码块
 <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.2.0</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>com.github.atool</groupId>
            <artifactId>fluent-mybatis</artifactId>
            <version>1.4.1</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>com.github.atool</groupId>
            <artifactId>fluent-mybatis-processor</artifactId>
            <version>1.4.1</version>
            <scope>provided</scope>
        </dependency>
        <!--代码生成器-->
        <dependency>
            <groupId>com.github.atool</groupId>
            <artifactId>generator</artifactId>
            <version>1.0.2</version>
        </dependency>
    </dependencies>

逆向代码块

public class Generator {

    static final String url = "jdbc:mysql://localhost:3306/fluent_mybatis?useSSL=false&useUnicode=true" +
            "&characterEncoding=utf-8&serverTimezone=UTC";

    public static void main(String[] args) {
        FileGenerator.build(generator.class);
    }

    @Tables(
            /** 数据库连接信息 **/
            url = url, username = "root", password = "",
            /** 包名 **/
            basePack = "com.ly.demo",
            /** 生成Entity代码目录 如果为聚合项目记得加上子包名 **/
            srcDir = "/src/main/java",
            /** 生成Dao代码目录 **/
            daoDir = "/src/main/java",
            /** 定义创建,修改,逻辑删除字段 **/
            gmtCreated = "create", gmtModified = "modified", logicDeleted = "is_del",
            /** 需要生成文件的表, 这里可以配置多个表 **/
            tables = @Table(value = {"user"})
    )
    static class generator {
    }
}

生成成功后控制台如下所示

===数据库元信息初始化...
Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.
===准备生成文件...
======处理表:user
===文件生成完成!!!

生完了打开UserDaoImpl报错了,淡定

打开idea顶部导航栏的build>>>Rebuild Project,等他编译后生成对应的BaseDao就可以啦,在这里面的dao层相当于是service,框架生成就是这样没办法的噻~

创建一个controller

自动注入后更多的细节具体可参见链接地址,很详细,更深层次有待继续探索,也是在不断的完善和更新,注意了逆向生成的主键不是自增的,参考:主键设置

@RestController
public class UserController {
    @Autowired
    private UserDao userDao;
    @GetMapping("{id}")
    public UserEntity getOne(@PathVariable Integer id){
        return this.userDao.selectById(id);
    }
}

启动之后就可以访问了,注意了启动记得加上数据库地址

spring:
datasource:
url: jdbc:mysql://localhost:3306/fluent_mybatis?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC
driverClassName: com.mysql.cj.jdbc.Driver
username: root
password:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小阳小朋友

随便吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值