使用MyBatis-Plus的代码生成器可以根据已有的数据库表快速生成pojo,mapper,service等文件。
添加依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.4.0</version>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>2.2</version>
</dependency>
代码配置
// 代码生成器
AutoGenerator autoGenerator=new AutoGenerator();
// 全局配置
GlobalConfig globalConfig=new GlobalConfig();
//设置作者信息
globalConfig.setAuthor("xiaoming");
//设置生成文件的路径
globalConfig.setOutputDir("D:\\projects\\IdeaProjects\\foodie\\foodie-pojo\\src\\main\\java");
//设置生成的service名称。%s表示表名
globalConfig.setServiceName("%sService");
//设置实体类的命名规则
globalConfig.setEntityName("%sDO");
//设置生成xml文件里面的resultMap字段映射
globalConfig.setBaseResultMap(true);
// 数据源配置
DataSourceConfig dataSourceConfig=new DataSourceConfig();
dataSourceConfig.setDbType(DbType.MYSQL);
dataSourceConfig.setDriverName("com.mysql.cj.jdbc.Driver");
dataSourceConfig.setUrl("jdbc:mysql://localhost:3306/test");
dataSourceConfig.setUsername("root");
dataSourceConfig.setPassword("123456");
// 策略配置
StrategyConfig strategyConfig=new StrategyConfig();
//设置命名规则,下划线转驼峰命名
strategyConfig.setNaming(NamingStrategy.underline_to_camel);
//设置表的前置名
strategyConfig.setTablePrefix("me_","sys_");
// 包配置
PackageConfig packageConfig=new PackageConfig();
packageConfig.setParent("org.xiaoming");
packageConfig.setEntity("pojo");
//整合配置
autoGenerator.setDataSource(dataSourceConfig)
.setPackageInfo(packageConfig)
.setGlobalConfig(globalConfig)
.setStrategy(strategyConfig);
//执行生成
autoGenerator.execute();