1. 程式人生 > 其它 >MybatisPlus 快速生成實體類和專案模板

MybatisPlus 快速生成實體類和專案模板

  在專案對資料庫表設計完成後,可以通過MybatisPlus根據資料庫錶快速生成實體類、mapper層以及service層、controller層的模板。具體方法如下:

1、導包

<!--        MybtaisPlus-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus</artifactId>
            <version>3.4.3.4</
version> </dependency> <!-- 程式碼生成器--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.3.2</version> </dependency> <!--
模板引擎--> <dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity-engine-core</artifactId> <version>2.2</version> </dependency> <!-- 日誌介面實現--> <dependency
> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>1.7.25</version> <scope>compile</scope> </dependency>

 

2、根據需求設計並建立資料庫

 

3、編寫自動生成類並對生成器進行配置

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:spring.xml")
public class Generator {

    @Autowired
    DataSource ds;

    @Test
    public void testGenerator() {
        // 全域性配置
        GlobalConfig config = new GlobalConfig();
        config.setActiveRecord(false) // AR模式
                .setAuthor("作者")    // 作者
                .setOutputDir(System.getProperty("user.dir") + "/src/main/java") // 生成路徑
                .setFileOverride(true) // 檔案覆蓋
                .setIdType(IdType.AUTO) // 主鍵策略
                .setServiceName("%sService"); // 設定生成的service介面的名字,預設為I%sSerice

        // 資料來源配置
        DataSourceConfig dsConfig = new DataSourceConfig();
        dsConfig.setDbType(DbType.MYSQL)     // 設定資料庫型別
                .setDriverName("com.mysql.cj.jdbc.Driver")
                .setUrl("jdbc:mysql://127.0.0.1:3306/xxx?useUnicode=true&characterEncoding=utf8")
                .setUsername("root")
                .setPassword("123456");

        // 策略配置
        StrategyConfig stConfig = new StrategyConfig();
        stConfig.setCapitalMode(true) // 全域性大寫命名
                .setNaming(NamingStrategy.underline_to_camel); // 資料庫表對映到實體的命名策略

        // 包名配置
        PackageConfig pkConfig = new PackageConfig();
        pkConfig.setParent("com.miz")
                .setMapper("dao")
                .setService("service")
                .setController("controller")
                .setEntity("entity")
                .setXml("dao.mapper");

        //  整合
        AutoGenerator ag = new AutoGenerator();
        ag.setGlobalConfig(config).setDataSource(dsConfig).setStrategy(stConfig).setPackageInfo(pkConfig);
        // 生成
        ag.execute();
    }
}