Mybatis-Generator使用

简介

在学习公司项目时看到公司有使用Mybatis-Generator,所以学习了一下

之前是有见识过Mybatis-Plusgenerator,使用起来还是很棒的,再说了Mybatis-Plus不也是基于Mybatis做的吗,所以相信他们会很相似

再有就是学习项目时用过renren-generator,他能生成项目中简单的业务代码,包括controller、service等等

内容

关于Mybatis-Generator最好还是去官网学习,http://mybatis.org/generator/index.html

当然有些博客写的也很棒,https://www.cnblogs.com/throwable/p/12046848.html

关于上面的那篇博客我只纠正一点,就是关于commentGenerator标签这块suppressAllComments,默认值是false没错,但是false含义是生成注释,设置为true才表示不生成注解。

代码

下面是我的一些代码,可以参考一下

主要是pom.xmlgeneratorConfig.xmlgeneratorConfig.properties

pom.xml



    4.0.0

    com.wnh
    mybatis-generator
    1.0-SNAPSHOT

    
        8
        8
        2.2.2.RELEASE
        8.0.17
        1.4.0
        1.18.12
    

    

        
            org.springframework.boot
            spring-boot-starter-web
            ${spring.boot.version}
        
        
            org.mybatis.spring.boot
            mybatis-spring-boot-starter
            2.1.2
        

        
            org.projectlombok
            lombok
            ${lombok.version}
        

        
            mysql
            mysql-connector-java
            ${mysql.driver.version}
        

        
            org.mybatis.generator
            mybatis-generator-core
            ${mybatis.generator.version}
        

        
            org.springframework.boot
            spring-boot-starter-test
            ${spring.boot.version}
            test
        

    

    

        
            
            
            
                org.mybatis.generator
                mybatis-generator-maven-plugin
                ${mybatis.generator.version}
                
                    
                        Generate MyBatis Artifacts
                        
                            generate
                        
                    
                
                

                    
                    ${basedir}/src/main/resources/mybatis/generatorConfig.xml
                    
                    true
                    
                    true
                    

                

                
                    
                        mysql
                        mysql-connector-java
                        ${mysql.driver.version}
                    

                
            


        

    



generatorConfig.properties

datasource.driver=com.mysql.cj.jdbc.Driver
datasource.url=jdbc:mysql://localhost:3306/operation?useSSL=false
datasource.username=root
datasource.password=root

generatorConfig.xml





    
    

    
    
    

    
    
    

        
        














        
        



        
            
            
            
        

        
        
        

        
            
            
        

        
        
            
        

        
        
            
        

        
        
            
        











        
        

注意事项

  • 虽然有Javamaven两种启动方式,但我还是推荐maven
  • 关于pom,要在plugin中引入需要的依赖,上面也提到了可以配置插件帮助我们生成代码,但官方提供的插件都太基础了,不太实用
  • 关于generatorConfig.xml,这里context标签里的要严格按照顺序配置,否则报错
  • 一定注意上面的覆盖xmlplugin配置,不然在覆盖生成时会有问题

吐槽

  • 首先就是关于注释的,Mybatis-Generator生成注释配置下,会生成很多多余的注解,其主要就是关于声明这里的代码是我们Mybatis-Generator生成的,但真的没什么用啊。有人就问了,“你不会把它关掉吗?”我要不是为了生成实体类对应数据库的注释我也不会开
  • 关于生成表这块,难道没有直接配置多个表的选项吗?非得对应数据库每个表写一个table标签吗?
  • 还有就是在生成文件时,它不会自己确定父包,也就是还得配置每个文件的父包,很麻烦

总结

说实话Mybatis-Generator确实能帮助我们简化开发,生成数据库实体类、mapper接口和xml,但是确实也存在一些问题,这也可能是因为它不更新了吧,上maven仓库就可以看到最新版本就是1.4.0,停留在2019年,现在确实也存在很多能替代它的方案。

你可能感兴趣的:(Mybatis-Generator使用)