先总揽下项目结构
一、整合mybatis
- 引入pom依赖:
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.10</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
- 基础配置,修改配置文件application.properties
#MySQL
spring.datasource.type= com.alibaba.druid.pool.DruidDataSource
spring.datasource.url= jdbc:mysql://127.0.0.1:3306/vhr
spring.datasource.username=root
spring.datasource.password=1111
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
#MyBatis
#注意:一定要对应mapper映射xml文件的所在路径
mybatis.mapper-locations= classpath:mapper/**/*Mapper.xml
# 注意:对应实体类的路径
mybatis.type-aliases-package= com.chouxiaozi.micro.model
- 启动类配置扫描路径 @MapperScan
@SpringBootApplication
/*对应mybatis接口mapper类的包路径*/
@MapperScan(basePackages = "com.chouxiaozi.micro.mapper")
public class MicroApplication {
public static void main(String[] args) {
SpringApplication.run(MicroApplication.class, args);
}
}
- 等配置完自动生成代码后再测试
二、整合自动生成代码generator
- 引入pom依赖
<!--mybatis代码生成-->
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.2</version>
</dependency>
<build>
<plugins>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<!--mybatis用于生成代码的配置文件-->
<configurationFile>${basedir}/src/main/resources/generatorConfig.xml</configurationFile>
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql.version}</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
- resource下增加配置文件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>
<!--<classPathEntry location="C:\Users\Administrator\.m2\repository\mysql\mysql-connector-java\5.1.18\mysql-connector-java-5.1.18.jar"/>-->
<context id="MybatisGenerator" targetRuntime="MyBatis3">
<!-- 指定生成的文件的字符集 -->
<property name="javaFileEncoding" value="UTF-8" />
<!-- 配置Like查询忽略大小写的插件 -->
<plugin type="org.mybatis.generator.plugins.CaseInsensitiveLikePlugin" />
<!-- 配置生成Mode实现Serializable接口的插件 -->
<plugin type="org.mybatis.generator.plugins.SerializablePlugin" />
<!-- 取消注释 -->
<commentGenerator>
<property name="suppressDate" value="true" /><!--是否生成注释代时间戳 -->
<property name="suppressAllComments" value="true" /><!--是否取消注释 -->
<property name="addRemarkComments" value="true"/> <!--增加数据库备注-->
</commentGenerator>
<!-- 配置连接数据信息 -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://127.0.0.1:3306/vhr?useUnicode=true&characterEncoding=utf-8"
userId="root"
password="1111" />
<!-- 生成model模型,对应的包路径,以及文件存放路径(targetProject),targetProject可以指定具体的路径,如./src/main/java,
也可以使用“MAVEN”来自动生成,这样生成的代码会在target/generatord-source目录下 -->
<javaModelGenerator targetPackage="com.chouxiaozi.micro.model" targetProject="src/main/java">
<!-- 是否在当前路径下新加一层schema,eg:fase路径com.oop.eksp.user.model, true:com.github.jackieonwaymodel.[schemaName] -->
<property name="enableSubPackages" value="false" />
<!-- 从数据库返回的值被清理前后的空格 -->
<property name="trimStrings" value="true" />
<!-- 是否生成构造函数 默认是false -->
<property name="constructorBased" value="false"/>
</javaModelGenerator>
<!-- 配置自动生成的Mappper.xml映射的保存路径与其它参数 -->
<sqlMapGenerator targetPackage="/mapper" targetProject="src\main\resources" />
<!-- 配置自动生成的Mappper.java接口的保存路径与其它参数 -->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.chouxiaozi.micro.mapper" targetProject="src\main\java" />
<!-- 生成表对应的操作与实体对象 -->
<!-- 基本表 -->
<table schema="" tableName="menu" domainObjectName="Menu" >
<!--<generatedKey column="id" sqlStatement="SELECT LAST_INSERT_ID() AS id" identity="true" />-->
</table>
</context>
</generatorConfiguration>
- idea可以直接通过下面这种方式生成