mybatis逆向工程:根据数据库中的表在项目中生成对应的 实体类,dao接口与mapper.xml映射文件
- 在eclipse中,以插件的形式的存在,把设置好的配置文件,直接通过eclipse中的插件运行即可(如何下载使用百度)
在idea中,maven以<plugin>的形式集成。在<build>子节点下添加pom.xml中的 plugin 代码。并编写好用于生成的配置代码(后面作解释)。<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.3.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.xiaoeyu</groupId> <artifactId>springboot2</artifactId> <version>0.0.1-SNAPSHOT</version> <name>springboot2</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> </properties> <dependencies> <!--web相关--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--mybatis相关--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.0.0</version> </dependency> <!--mysql相关--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <!--手动添加的,逆向工程,用于根据数据库中的表生成实体类,dao接口与对应的mapper.xml文件--> <plugin> <!--逆向工程:需要的jar包--> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.7</version> <configuration> <overwrite>true</overwrite> <!--如何生成的配置文件的地址--> <configurationFile>${basedir}/src/main/resources/generatorConfig.xml</configurationFile> </configuration> <!--生成时与数据库连接需要的驱动--> <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.47</version> </dependency> </dependencies> </plugin> </plugins> </build> </project>
在idea右侧边框
- .
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的依赖于引用来根据数据库中的表生成实现类与dao接口以及映射文件--> <context id="mysql" targetRuntime="Mybatis3"> <commentGenerator> <property name="suppressDate" value="true"/> <!-- 是否去除自动生成的注释 true:是 : false:否 --> <property name="suppressAllComments" value="true"/> </commentGenerator> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/bcs" userId="root" password=""> </jdbcConnection> <!--存放生成实体类的路径,在idea中targetProject填写生成地址,eclipse中填写项目名--> <javaModelGenerator targetPackage="com.xiaoeyu.springboot2.pojo" targetProject="src/main/java"/> <!--生成sql映射文件的路径,在idea中,文件会被标记,资源放到resources中,mapper.xml放到java中的话,需要在pom.xml进行额外配置--> <sqlMapGenerator targetPackage="com.xiaoeyu.springboot2.mapper" targetProject="src/main/resources"/> <!--生成dao接口的目录,dao 数据访问对象,面向对象的数据访问接口--> <javaClientGenerator type="XMLMAPPER" targetPackage="com.xiaoeyu.springboot2.dao" targetProject="src/main/java"/> <!--接口映射名可以自动生成 mapperName,也可以手动设置--> <!--tableName:数据库中的表名,mapperName:dao接口及mapper.xml映射文件名,domainObjectName:pojo实体类名--> <table tableName="emp" domainObjectName="Emp" enableDeleteByExample="false" enableUpdateByExample="false" enableSelectByExample="false" enableCountByExample="false" selectByExampleQueryId="false"/> <table tableName="dept" domainObjectName="Dept" enableDeleteByExample="false" enableUpdateByExample="false" enableSelectByExample="false" enableCountByExample="false" selectByExampleQueryId="false"/> </context> <!--添加在pom.xml的build节点下的内容。--> <!--<plugins> <plugin> <!–逆向工程的主要包–> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.7</version> <configuration> <overwrite>true</overwrite> <configurationFile>${basedir}/src/main/resources/generatorConfig.xml</configurationFile>//逆向工程配置文件的路径 </configuration> <!–要与数据库进行连接。依赖的驱动–> <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.47</version> </dependency> </dependencies> </plugin> </plugins>--> </generatorConfiguration>