<!--mybatis自動生成代碼插件--> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <configuration> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> </plugin>
完整的pom文件html
<?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.4.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.fx67ll</groupId> <artifactId>fx67ll</artifactId> <version>0.0.1-SNAPSHOT</version> <name>fx67ll</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>2.1.1.RELEASE</version> </dependency> <!-- 熱部署 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> </dependency> <!--整合mybatis--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.0.1</version> </dependency> <!-- mybatis的分頁插件 --> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.5</version> </dependency> <!--整合mysql--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.6</version> </dependency> <!--單元測試--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> </dependency> <!--整合druid--> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.10</version> </dependency> <dependency> <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> <version>1.9.3</version> </dependency> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.3</version> </dependency> <dependency> <groupId>commons-httpclient</groupId> <artifactId>commons-httpclient</artifactId> <version>3.1</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.0</version> </dependency> <!-- pinyin4j jar --> <dependency> <groupId>com.belerweb</groupId> <artifactId>pinyin4j</artifactId> <version>2.5.0</version> </dependency> <!-- pinyin4j jar --> <!-- json lib jar --> <dependency> <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> <version>1.7.0</version> </dependency> <dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> <version>3.2</version> </dependency> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.5</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.1.1</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging-api</artifactId> <version>1.1</version> </dependency> <dependency> <groupId>net.sf.ezmorph</groupId> <artifactId>ezmorph</artifactId> <version>1.0.6</version> </dependency> <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.1</version> <classifier>jdk15</classifier> </dependency> <!-- json lib jar --> <!-- Swagger API文檔 --> <!--springfox的核心jar包 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.6.1</version> </dependency> <!--springfox-ui的jar包(裏面包含了swagger的界面靜態文件) --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.6.1</version> </dependency> <!-- Swagger API文檔 --> </dependencies> <build> <finalName>fx67ll</finalName> <!--<resources>--> <!--<resource>--> <!--<directory>src/main/resources</directory>--> <!--<includes>--> <!--<include>**/*.*</include>--> <!--</includes>--> <!--<filtering>false</filtering>--> <!--</resource>--> <!--<resource>--> <!--<directory>src/main/java</directory>--> <!--<includes>--> <!--<include>**/*.xml</include>--> <!--</includes>--> <!--<filtering>false</filtering>--> <!--</resource>--> <!--</resources>--> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.8</source> <target>1.8</target> <encoding>UTF-8</encoding><!-- 指定編碼格式,不然在DOS下運行mvn compile命令時會出現莫名的錯誤,由於系統默認使用GBK編碼 --> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>2.6</version> <configuration> <encoding>UTF-8</encoding><!-- 指定編碼格式,不然在DOS下運行mvn命令時當發生文件資源copy時將使用系統默認使用GBK編碼 --> </configuration> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <!-- 沒有該配置,devtools 不生效 --> <fork>true</fork> </configuration> </plugin> <!--mybatis自動生成代碼插件--> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <configuration> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> </plugin> </plugins> </build> </project>
# 數據源配置 spring: #靜態文件配置 resources: static-locations: classpath:/static,classpath:/META-INF/resources,classpath:/templates/ datasource: type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://sql.m8265.vhostgo.com:3306/fx67ll?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 username: fx67ll password: zsplat5859 ######################### Druid鏈接池的配置信息 ################# spring.druid.initialSize: 5 #初始化鏈接大小 spring.druid.minIdle: 5 #最小鏈接池數量 spring.druid.maxActive: 20 #最大鏈接池數量 spring.druid.maxWait: 60000 #獲取鏈接時最大等待時間,單位毫秒 spring.druid.timeBetweenEvictionRunsMillis: 60000 #配置間隔多久才進行一次檢測,檢測須要關閉的空閒鏈接,單位是毫秒 spring.druid.minEvictableIdleTimeMillis: 300000 #配置一個鏈接在池中最小生存的時間,單位是毫秒 spring.druid.validationQuery: SELECT 1 FROM DUAL #測試鏈接 spring.druid.testWhileIdle: true #申請鏈接的時候檢測,建議配置爲true,不影響性能,而且保證安全性 spring.druid.testOnBorrow: false #獲取鏈接時執行檢測,建議關閉,影響性能 spring.druid.testOnReturn: false #歸還鏈接時執行檢測,建議關閉,影響性能 spring.druid.poolPreparedStatements: false #是否開啓PSCache,PSCache對支持遊標的數據庫性能提高巨大,oracle建議開啓,mysql下建議關閉 spring.druid.maxPoolPreparedStatementPerConnectionSize: 20 #開啓poolPreparedStatements後生效 spring.druid.filters: stat,wall,log4j #配置擴展插件,經常使用的插件有=>stat:監控統計 log4j:日誌 wall:防護sql注入 spring.druid.connectionProperties: 'druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000' #端口配置 server: compression: enabled: true mime-types: application/json,application/xml,text/html,text/xml,text/plain min-response-size: 4096 port: 8086 servlet: session: timeout: 30 context-path: /fx67ll tomcat: uri-encoding: UTF-8 max-threads: 30 #mybatis配置 mybatis: #映射文件路徑 mapper-locations: classpath*:/mapper/*/*Mapper.xml configuration: call-setters-on-nulls: true # 返回Map集合時,針對空值字段強行返回 #模型所在的包名 type-aliases-package: com.fx67ll.app.model
在resources文件下建立generatorConfig.xml文件,配置以下:java
<?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:數據庫的JDBC驅動,換成你本身的驅動位置 可選 -->
<classPathEntry
location="D://maven//repository//mysql//mysql-connector-java//5.1.25//mysql-connector-java-5.1.25.jar"/>
<!-- 一個數據庫一個context -->
<context id="DB2Tables" targetRuntime="Mybatis3">
<!-- 自動識別數據庫關鍵字,默認false,若是設置爲true,根據SqlReservedWords中定義的關鍵字列表;通常保留默認值,遇到數據庫關鍵字(Java關鍵字),使用columnOverride覆蓋 -->
<property name="autoDelimitKeywords" value="true"/>
<!-- 生成的Java文件的編碼 -->
<property name="javaFileEncoding" value="utf-8"/>
<!-- beginningDelimiter和endingDelimiter:指明數據庫的用於標記數據庫對象名的符號,好比ORACLE就是雙引號,MYSQL默認是`反引號; -->
<property name="beginningDelimiter" value="`"/>
<property name="endingDelimiter" value="`"/>
<!-- 格式化java代碼 -->
<property name="javaFormatter" value="org.mybatis.generator.api.dom.DefaultJavaFormatter"/>
<!-- 格式化XML代碼 -->
<property name="xmlFormatter" value="org.mybatis.generator.api.dom.DefaultXmlFormatter"/>
<plugin type="org.mybatis.generator.plugins.SerializablePlugin"/>
<plugin type="org.mybatis.generator.plugins.ToStringPlugin"/>
<!--配置生成註釋信息,最多配置一個 -->
<commentGenerator>
<!-- 阻止生成註釋包含時間戳 默認爲false -->
<property name="suppressDate" value="true"/>
<!-- 註釋是否添加數據庫表的備註信息 默認爲false -->
<property name="addRemarkComments" value="true"/>
</commentGenerator>
<!-- jdbc鏈接-->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://sql.m8265.vhostgo.com:3306/fx67ll"
userId="fx67ll"
password="zsplat5859"/>
<!-- 類型轉換 -->
<javaTypeResolver>
<!-- 是否使用bigDecimal, false可自動轉化如下類型(Long, Integer, Short, etc.) -->
<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>
<!-- 生成實體類地址 -->
<javaModelGenerator targetPackage="com.fx67ll.app.model" targetProject="src/main/java">
<!-- 是否讓schema做爲包的後綴 -->
<property name="enableSubPackages" value="true"/>
<!-- 從數據庫返回的值去掉先後空格 -->
<property name="trimStrings" value="true"/>
</javaModelGenerator>
<!-- 生成map.xml文件存放地址 -->
<sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources">
<property name="enableSubPackages" value="true"/>
</sqlMapGenerator>
<!-- 生成接口dao type="ANNOTATEDMAPPER",生成Java Model 和基於註解的Mapper對象
type="MIXEDMAPPER",生成基於註解的Java Model 和相應的Mapper對象
type="XMLMAPPER",生成SQLMap XML文件和獨立的Mapper接口 -->
<javaClientGenerator targetPackage="com.fx67ll.app.dao" targetProject="src/main/java" type="XMLMAPPER">
<property name="enableSubPackages" value="false"/>
</javaClientGenerator>
<!-- table能夠有多個,每一個數據庫中的表均可以寫一個table,tableName表示要匹配的數據庫表,也能夠在tableName屬性中經過使用%通配符來匹配全部數據庫表,只有匹配的表纔會自動生成文件 enableSelectByPrimaryKey相應的配置表示是否生成相應的接口 -->
<table tableName="zs_sys_user" enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false">
</table>
</context>
</generatorConfiguration>