mybatis-generator插件的配置和使用
1、添加maven依赖
在pom.xml的plugins节点添加插件的依赖
org.mybatis.generator
mybatis-generator-maven-plugin
1.3.5
true
true
Generate MyBatis Files
generate
mysql
mysql-connector-java
5.1.44
2、添加配置文件
2.1 、添加参数文件generator.properties
在src\main\resources目录里添加文件,文件名为generator.properties
groupId=com.xxx
artifactId=xxx
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://xxx?useSSL=false
jdbc.username=xxx
jdbc.pwd=xxx
这个文件里的所有信息在运行的时候会被灌到2.2里面说的配置文件里面去,所以这个文件是可省略的,抽出来是为了配置的时候更方便,等会儿来说参数怎么填。
2.2、添加配置文件
在src\main\resources目录里添加文件,文件名为generatorConfig.xml
driverClass="${jdbc.driver}"
connectionURL="${jdbc.url}"
userId="${jdbc.username}"
password="${jdbc.pwd}" >
targetProject="${project.path}/src/main/java" />
targetProject="${project.path}/src/main/java" type="XMLMAPPER" />
这个就是mybatis-generator插件的配置文件了,生成器插件根据这个配置来生成dao。
重要节点说明:
1) generatorConfiguration > context > jdbcConnection 数据库连接信息配置
因为我们是从数据库逆向生成dao程序,插件需要连接到数据库才能读取表的meta信息,所以这里配置我们要生成dao的库所在的db连接信息,此处的参数都在2.1 properties文件中定义。
2) generatorConfiguration > context > javaModelGenerator mojo类生成路径
targetProject 参数为项目所在目录
targetPackage 参数为类生成的包
两个参数连起来就指明了生成的文件放在哪里,${groupId}和${artifactId}来自于2.1 properties文件,${project.path}来自于maven的构建参数,构建的时候应该会自动带进去。
3) generatorConfiguration > context > sqlMapGenerator xxxMapper.xml文件生成路径
同上
4) generatorConfiguration > context > javaClientGenerator xxxMapper.java文件生成路径
同上
5) generatorConfiguration > context > table 本次要生成dao文件的表
其中tableName参数对应数据库表名,生成后会去掉-按大驼峰命名我们的访问层。比如:数据库中表名为arc-table,生成的mojo类名就为ArcTable,mapper为ArcTablelMapper。
table节点可以并列多个,每次要生成的时候需要只保留当前要生成的那个表,否则只要放在这里都会重新生成。另外这里有个bug,xxxMapper.xml每次生成的时候不是覆盖,而是在后面追加,需要手工删除文件后重新生成。
3、插件的使用
方法1:使用命令,在pom.xml所在目录执行命令
mvn -Dmybatis.generator.overwrite=true mybatis-generator:generate
方法2:如果使用idea,可在此处直接运行