(一)springboot+mybatisPlus

1  新建一个springboot项目  

2加入mybatisPlus依赖

<dependency>
   <groupId>com.baomidou</groupId>
   <artifactId>mybatis-plus-boot-starter</artifactId>
   <version>3.3.1</version>
</dependency>
<dependency><!--添加代码生成器-->
   <groupId>com.baomidou</groupId>
   <artifactId>mybatis-plus-generator</artifactId>
   <version>3.3.1</version>
</dependency>
<dependency>
   <groupId>org.apache.velocity</groupId>
   <artifactId>velocity-engine-core</artifactId>
   <version>2.2</version>
</dependency>
 

3 在yml文件中配置mysql数据库

spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    #url: jdbc:mysql://localhost:3306/mybatis?useUnicode=true&characterEncoding=UTF-8  上面这个不对  是因为mysql8.0以上新加了特性
    url: jdbc:mysql://localhost:3306/mybatis?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
    username: root
    password: admin

4代码生成

public class main {
    public static void main(String[] args) {
        //创建Generator 对象
        AutoGenerator autoGenerator = new AutoGenerator();

        //数据源
        DataSourceConfig dataSourceConfig = new DataSourceConfig();
        dataSourceConfig.setDbType(DbType.MYSQL);
        //如果是远端的数据库 需要把localhost改成ip地址就好了
        dataSourceConfig.setUrl("jdbc:mysql://localhost:3306/mybatis?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC");
        dataSourceConfig.setUsername("root");
        dataSourceConfig.setPassword("admin");
        dataSourceConfig.setDriverName("com.mysql.cj.jdbc.Driver");
        autoGenerator.setDataSource(dataSourceConfig);

        //全局配置
        GlobalConfig globalConfig = new GlobalConfig();
        String projectPath = System.getProperty("user.dir");
        globalConfig.setOutputDir(projectPath+"/src/main/java");//这样会拿到工程的绝对路径
        //System.getProperty("user.dir") 就是当前工程的绝对目录
        globalConfig.setOpen(false);//创建好工程之后不会自动打开
        globalConfig.setAuthor("zf");//
        globalConfig.setServiceName("%sService");//加上这句代码  在生成Service类的时候就不会默认前面有I了
        autoGenerator.setGlobalConfig(globalConfig);

        //包信息
        PackageConfig packageConfig = new PackageConfig();
        packageConfig.setParent("com.zf.blog");
        packageConfig.setModuleName("generator");
        packageConfig.setController("controller");
        packageConfig.setService("service");
        packageConfig.setServiceImpl("servicce.impl");
        packageConfig.setMapper("mapper");
        packageConfig.setEntity("entity");
        autoGenerator.setPackageInfo(packageConfig);

        //如果使用默认的模板 velocity 这里就不用设置模板信息了  我们这里用freemarker需要配置
        // 自定义配置




        //配置策略
        StrategyConfig strategyConfig = new StrategyConfig();
        strategyConfig.setEntityLombokModel(true);//实体类生成之后自动添加lombok注解
        strategyConfig.setNaming(NamingStrategy.underline_to_camel);
        strategyConfig.setColumnNaming(NamingStrategy.underline_to_camel);//将数据库中带下划线的转成驼峰规则
        autoGenerator.setStrategy(strategyConfig);

        autoGenerator.execute();//配置完之后运行
    }
}

   生成的文件如作图所示

5在 Spring Boot 启动类中添加 @MapperScan 注解,扫描 Mapper 文件夹

6运行main函数 生成代码

这里需要注意的生成的entity是数据库中的表的实体类  

7 在controller中测试我们的整合结果

然后运行项目    在浏览器输入对应的地址

可见已经查询出来了    我们整合成功

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值