MavenプロジェクトでMybatis generatorを使用する
手順
DBにテーブルを作成
- DBにアクセス
- CEATE TABLE
- 今回はDockerコンテナを使用するため、下記の手順で行なった。
DockerのDBコンテナに入ってクエリを実行する - Beginner's Hack
Mybatis generatorの導入
- pom.xmlにpluginを追加。
<project ...> ... <build> ... <plugins> ... <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.4.1</version> </plugin> <!-- DBにアクセスするためのドライバ --> <!-- pom.xmlに記述しない場合は後述のgeneratorConfig.xmlに記載する --> <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.30</version> </dependency> </dependencies> ... </plugins> ... </build> ... </project>
generatorConfig.xmlの作成
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" > <generatorConfiguration > <!-- pom.xmlにドライバーの依存関係を追加しているため、classPathEntryの記述は不要 --> <!-- <classPathEntry location="C:\Program Files\MySQL\Connector.J 5.1\mysql-connector-java-5.1.33-bin.jar"/> --> <context id="context1" targetRuntime="MyBatis3Simple"> <!-- コメント生成の抑制 --> <commentGenerator> <property name="suppressAllComments" value="true" /> </commentGenerator> <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver" connectionURL="jdbc:mysql://mysql/sample_schema" userId="dev_usr" password="dev_usr_pass"> </jdbcConnection> <javaModelGenerator targetPackage="com.example.demo.MBGEntity" targetProject="src/main/java"> <property name="enableSubPackages" value="true" /> <property name="trimStrings" value="true" /> </javaModelGenerator> <sqlMapGenerator targetPackage="com.example.demo.MBGSql" targetProject="src/main/java"> <property name="enableSubPackages" value="true" /> </sqlMapGenerator> <javaClientGenerator type="XMLMAPPER" targetPackage="com.example.demo.MBGMapper" targetProject="src/main/java"> <property name="enableSubPackages" value="true" /> </javaClientGenerator> <table schema="sample_schema" tableName="account"> </table> </context> </generatorConfiguration>
Mybatis generatorの実行
- Mavenビルドから実行