第一、配置pom文件:
<!--mybatis-plus --> <dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity-engine-core</artifactId> <version>2.0</version> </dependency> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus</artifactId> <version>2.2.0</version> </dependency>
第二步:引進mybatis-plus註解,Spring-mybatis
例:
第三步:自動生成文件model層
package com.alcon.tws.util; import com.baomidou.mybatisplus.generator.AutoGenerator; import com.baomidou.mybatisplus.generator.config.DataSourceConfig; import com.baomidou.mybatisplus.generator.config.GlobalConfig; import com.baomidou.mybatisplus.generator.config.PackageConfig; import com.baomidou.mybatisplus.generator.config.StrategyConfig; import com.baomidou.mybatisplus.generator.config.converts.MySqlTypeConvert; import com.baomidou.mybatisplus.generator.config.rules.DbColumnType; import com.baomidou.mybatisplus.generator.config.rules.DbType; import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; /** * @Package: * @author: bailiang * @date: 2018年7月16日 下午4:17:21 * @Description: */ public class Code { /** * @param args */ public static void main(String[] args) { generateCode(new String[] { "tbl_ad_buy_gift" });//數據庫表名 } /** * Dao、Mapper、Service和、Controller生成代碼 * * @param tabelNames * 表名 */ public static void generateCode(String[] tabelNames) { AutoGenerator mpg = new AutoGenerator(); // 全局配置 GlobalConfig gc = new GlobalConfig(); gc.setOutputDir("D://mybatePlus");// 創建的文件輸出目錄 gc.setFileOverride(true);// 覆蓋已有文件 gc.setActiveRecord(true);// 不需要ActiveRecord特性的請改爲false gc.setEnableCache(false);// XML 二級緩存 gc.setBaseResultMap(true);// XML ResultMap gc.setBaseColumnList(true);// XML columList gc.setAuthor("bailiang");// 類作者 // 文件名 gc.setMapperName("%sDao"); gc.setXmlName("%sMapper"); gc.setServiceName("%sService"); gc.setServiceImplName("%sServiceImpl"); gc.setControllerName("%sController"); mpg.setGlobalConfig(gc); // 數據源 DataSourceConfig dataSourceConfig = getDataSourceConfig(); mpg.setDataSource(dataSourceConfig); // 策略配置 StrategyConfig strategy = new StrategyConfig(); strategy.setNaming(NamingStrategy.underline_to_camel);// 表名生成策略 strategy.setInclude(tabelNames); // 需要生成相關代碼的表名 strategy.setSuperMapperClass("com.baomidou.mybatisplus.mapper.BaseMapper");// 自定義 dao 父類 mpg.setStrategy(strategy); // 包配置 PackageConfig pc = new PackageConfig(); pc.setParent(null); pc.setEntity("com.test.mybatisplus.pojo"); pc.setMapper("com.test.mybatisplus.dao");// Dao接口包名 pc.setXml("com.test.mybatisplus.dao.mapper");// XML包名 pc.setService("com.test.mybatisplus.service"); pc.setServiceImpl("com.test.mybatisplus.service.impl"); pc.setController("com.test.mybatisplus.controller"); mpg.setPackageInfo(pc); // 執行生成 mpg.execute(); System.out.println("run over"); } /** * 數據源設置 * @return */ private static DataSourceConfig getDataSourceConfig() { DataSourceConfig dsc = new DataSourceConfig(); dsc.setDbType(DbType.MYSQL); dsc.setTypeConvert(new MySqlTypeConvert() { // 自定義數據庫表字段類型轉換【可選】 public DbColumnType processTypeConvert(String fieldType) { System.out.println("轉換類型:" + fieldType); // 注意!!processTypeConvert 存在默認類型轉換,如果不是你要的效果請自定義返回、非如下直接返回。 return super.processTypeConvert(fieldType); } }); dsc.setDriverName("com.mysql.jdbc.Driver");//數據我用的mysql dsc.setUsername("root"); dsc.setPassword(""); dsc.setUrl("jdbc:mysql://127.0.0.1:3306/tws?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull"); return dsc; } }
第四步:dao層需要繼承
BaseMapper<xxModel>
最後:mybatis-plus,已經引入成功,盡情的嗨吧!