MyBatis Generator Introduction
MyBatis Generator Chinese Document http://mbg.cndocs.tk/
MyBatis Generator (MBG) is a MyBatis code generator MyBatis and IBATIS. He can generate code for each version of MyBatis, and Ibatis 2.2.0 later code. He can introspect the database's tables (or tables) and then generate the underlying objects that can be used to access (multiple) tables. This makes it unnecessary to create objects and configuration files when interacting with database tables. MBG solves some simple crud (insert, query, UPDATE, DELETE) operations that have the greatest impact on database operations. You still need to write SQL and objects to federated queries and stored procedures.
Adding plugins to the POM
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.5</version>
<configuration>
<configurationfile>src/main/resources/mybatis-generator/generator-config.xml
</configurationFile>
<verbose>true</verbose>
<overwrite>false</overwrite>
<skip>false</skip>
</configuration>
<executions>
<execution>
<id>generate MyBatis artifacts</id>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.40</version>
</dependency>
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.5</version>
</dependency>
</dependencies>
</plugin>
Add files to Resource
Generator.properties
Jdbc.driverclass=com.mysql.jdbc.driver
Jdbc.connectionurl=jdbc:mysql://localhost:3306/mybatis
Jdbc.userid=root
jdbc.password=1234
Tables in the database
Generator-config.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>
<!--database-driven
<properties resource= "Mybatis-generator/generator.properties" ></properties>
<context id= "Default" Targetruntime= "MyBatis3" >
<!--control annotations When you create a class--
<commentGenerator>
<property name= "Suppressdate" value= "true"/>
<property name= "Suppressallcomments" value= "true"/>
</commentGenerator>
<!--database link Address account password--
<jdbcconnection driverclass= "${jdbc.driverclass}" connectionurl= "${jdbc.connectionurl}" userId= "${jdbc.userId} "Password=" ${jdbc.password} ">
</jdbcConnection>
<!--type processor, conversion between database type and Java type Control--
<javatyperesolver >
<property name= "Forcebigdecimals" value= "false"/>
</javaTypeResolver>
<!--generate model class storage location-
<javamodelgenerator targetpackage= "Com.dakewang.dto" targetproject= "Src/main/java" >
<!--If you add a constructor to the model--
<property name= "constructorbased" value= "false"/>
<!--whether to allow child packages, i.e. TargetPackage.schemaName.tableName
<property name= "Enablesubpackages" value= "false"/>
< If the model object created by the!--is immutable, the resulting model object will not have setter methods, only construction methods--
<property name= "Immutable" value= "false"/>
<!--add a parent class to the model--
<!--<property name= "Rootclass" value= "Com.foo.louis.Hello"/>-->
<!--whether to trim data for columns of class char type-
<property name= "Trimstrings" value= "true"/>
</javaModelGenerator>
<!--generate Map file location, generate the corresponding Sqlmap file for each database table--
<sqlmapgenerator targetpackage= "Com.dakewang.mapper" targetproject= "Src/main/java" >
<property name= "Enablesubpackages" value= "false"/>
</sqlMapGenerator>
<!--client code to generate easy-to-use code for model objects and XML configuration files
Type= "Annotatedmapper" to generate Java Model and annotation-based mapper objects
Type= "Mixedmapper" to generate the annotated Java Model and the corresponding Mapper object
Type= "Xmlmapper", generate Sqlmap XML file and stand-alone mapper interface
-
<!--generate a DAO class storage location-
<javaclientgenerator targetpackage= "Com.dakewang.mapper" targetproject= "Src/main/java" type= "Mixedmapper" >
<property name= "Enablesubpackages" value= "false"/>
</javaClientGenerator>
<!--generate the corresponding table and class name--
<table tablename= "Student_info" domainobjectname= "Student" enablecountbyexample= "false" enableupdatebyexample= " False "enabledeletebyexample=" false "enableselectbyexample=" false "Selectbyexamplequeryid=" false "></table >
<!--the table TableName to be generated is the table name or view name in the database Domainobjectname is the entity class name--
</context>
</generatorConfiguration>
Start run
If the add succeeds, click Run Generator, then the console output information
Process finished with exit code 0
It will then automatically generate
MyBatis generator automatically generate Model,mapper and other files