Mybatis使用逆向工程生成Java代码

Mybatis官方提供了一个逆向工程,可以针对单表的表结构自动生成Mybatis执行所需要的代码(包括实体类、Mapper.xml映射文件和Mapper接口等);

下面以用户表为例,来创建逆向工程生成代码:

1、数据库中执行sql语句,创建用户信息表;

CREATE TABLE `tbl_user_info` (
  `user_id` int NOT NULL COMMENT 'id',
  `user_school` varchar(64) DEFAULT NULL COMMENT '用户所属学校',
  `user_name` varchar(32) NOT NULL COMMENT '用户姓名',
  PRIMARY KEY (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='用户表';

2、完善项目结构,如下所示:

Mybatis使用逆向工程生成Java代码_第1张图片

3、在pom.xml中引入逆向工程插件依赖;

    
        
            mysql
            mysql-connector-java
            8.0.13
            runtime
        
        
            org.mybatis
            mybatis
            3.4.0
        
        
            org.mybatis.generator
            mybatis-generator-core
            1.3.4
        
    

4、resources下配置文件generatorConfig.xml(文件名必须是这个);





    
        
        
        
            
            
        
        
        
            
            
        
        
        
        
            
        
        
        
            
            
        
        
        
            
        
        
        
            
        
        
        
        
        

需要修改文件generatorConfig.xml中生成的代码存放的位置,如下所示:

Mybatis使用逆向工程生成Java代码_第2张图片

 5、创建一个main方法,用于运行逆向工程;

    public static void main(String[] args) throws Exception {
        List warnings = new ArrayList();
        boolean overwrite = true;
        //实际的配置文件目录
        File configFile = new File("C:\\Users\\Administrator\\IdeaProjects\\springMvc0413\\mybatisgenerator\\src\\main\\resources\\generatorConfig.xml");
        ConfigurationParser cp = new ConfigurationParser(warnings);
        Configuration config = cp.parseConfiguration(configFile);
        DefaultShellCallback callback = new DefaultShellCallback(overwrite);
        MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
        myBatisGenerator.generate(null);
        System.out.println("逆向工程生成成功");
    }

6、点击运行,执行main方法;

生成成功:

Mybatis使用逆向工程生成Java代码_第3张图片

你可能感兴趣的:(mybatis,java,mysql)