参考
李晨玮 - 使用Mybatis-Generator自动生成Dao、Model、Mapping相关文件
官方文档, 这里包含了每个部分的配置详情.
MyBatis Generator下载地址
官方下载地址
配置文件 generatorConfig.xml
<?xml version="1.0" encoding="UTF-8"?> <table tableName="posts" catalog="syllabus" domainObjectName="Post" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
</context>
对于MYSQL的使用, 有几点需要注意的地方. 在我的实际使用中, 即使connectionURL中指定了需要连接的数据库, 如果在后面的中不指定catalog, 而且在多个database中有相同名字的table的话, 那么MBG会给出警告, 但是它会直接自己选择一个table, 往往不是自己想要指定的表. 使用catalog能奏效, 灵感来源于https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-configuration-properties.html, 如果没有指定catalog而又有多张同名的表, 则会出现以下警告:
Table Configuration syllabus.users matched more than one table (java_web…users,shop…users,syllabus…users,laravel_blog…users,performance_schema…users,hr_qa…users)
MYSQL文档:
If the database is not specified, the connection is made with no default database. In this case, either call the setCatalog() method on the Connection instance, or fully specify table names using the database name (that is, SELECT dbname.tablename.colname FROM dbname.tablename…) in your SQL. Opening a connection without specifying the database to use is generally only useful when building tools that work with multiple databases, such as GUI database managers.
运行
目录结构如下:
.
├── generatorConfig.xml
├── mybatis-generator-core-1.3.5.jar
├── mysql-connector-java-6.0.6.jar
└── src
执行:
java -jar mybatis-generator-core-1.3.5.jar -configfile generatorConfig.xml -overwrite
overwrite参数含义如下:
This will tell MBG to run using your configuration file. It will also tell MBG to overwrite any existing Java files with the same name. If you want to save any existing Java files, then omit the -overwrite parameter. If there is a conflict, MBG will save the newly generated file with a unique name (e.g. MyClass.java.1).
0人点赞
mybatis作者:xiaofudeng链接:https://www.jianshu.com/p/f0fb86e3dbe1来源:简书