IDEA整合SSM框架之配置mybatis-generator插件(四)

释放双眼,带上耳机,听听看~!

IDEA整合SSM框架之配置mybatis-generator插件

  • 配置mybatis-generator插件

  • pom.xml中引入相关依赖包

    • 创建数据库jdbc.properties配置文件
    • 创建mybatis-generator.xml配置文件
    • 在pom.xml添加generator的插件
    • 生成数据库表对应的dao、entity、mapper

配置mybatis-generator插件

该插件是生成mybatis对应的dao、entity、mapper文件,可快速的编写SQL语句,进行项目开发。

pom.xml中引入相关依赖包

在pom.xml的节点中引入一下依赖包


1
2
3
4
5
6
7
8
1<!--mybatis生成dao、entity、mapper的jar包-->
2<dependency>
3    <groupId>org.mybatis.generator</groupId>
4    <artifactId>mybatis-generator-core</artifactId>
5    <version>1.3.7</version>
6</dependency>
7
8

创建数据库jdbc.properties配置文件

  • 在resources文件加下创建properties包(不存在时创建,可有可无),再创建jdbc.properties文件


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
1#数据库连接信息,数据库地址,数据库,用户名,密码,驱动以及其他信息
2jdbc.url=jdbc:mysql://localhost:3306/demo?roundRobinLoadBalance=true&characterEncoding=utf8&useSSL=true&serverTimezone=UTC
3jdbc.username=root
4jdbc.password=mysql
5jdbc.driver=com.mysql.jdbc.Driver
6jdbc.initialSize=5
7jdbc.minIdle=5
8jdbc.maxActive=100
9jdbc.maxWait=100000
10jdbc.testOnBorrow=false
11jdbc.testOnReturn=false
12jdbc.testWhileIdle=true
13jdbc.timeBetweenEvictionRunsMillis=60000
14jdbc.minEvictableIdleTimeMillis=25200000
15jdbc.removeAbandoned=true
16jdbc.removeAbandonedTimeout=1800
17jdbc.logAbandoned=true
18#
19#
20# 自动生成mybatis实体包
21mybatis.generator.dao=com.xiao.demo.springmvc.mybatis.dao
22mybatis.generator.entity=com.xiao.demo.springmvc.mybatis.entity
23mybatis.generator.mapper=com.xiao.demo.springmvc.mybatis.mapper
24
25

创建mybatis-generator.xml配置文件

  • 在resources下创建xml文件夹(不存在时创建,非必须),再创建文件mybatis-generator.xml文件,内容如下:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
1<!--配置数据库连接信息,以及生成dao、entity、mapper路径,
2可以使用配置文件信息,也可以直接写相关包路径-->
3
4<?xml version="1.0" encoding="UTF-8"?>
5<!DOCTYPE generatorConfiguration
6        PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
7        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" >
8<generatorConfiguration>
9    <!--使用已配置好的数据信息-->
10    <properties resource="properties/jdbc.properties"/>
11    <!-- 数据库驱动:选择本地硬盘上面的数据库驱动包-->
12    <classPathEntry location="/Users/xiao/.m2/repository/mysql/mysql-connector-java/5.1.6/mysql-connector-java-5.1.6.jar"/>
13    <!--生成一个实体类的类型   MyBatis3Simple   MyBatis3-->
14    <context id="mysql" defaultModelType="flat" targetRuntime="MyBatis3">
15        <property name="autoDelimitKeywords" value="false"/>
16        <!-- 生成的Java文件的编码 -->
17        <property name="javaFileEncoding" value="UTF-8"/>
18        <!-- 格式化java代码 -->
19        <property name="javaFormatter" value="org.mybatis.generator.api.dom.DefaultJavaFormatter"/>
20        <!-- 格式化XML代码 -->
21        <property name="xmlFormatter" value="org.mybatis.generator.api.dom.DefaultXmlFormatter"/>
22
23        <!-- beginningDelimiter和endingDelimiter:指明数据库的用于标记数据库对象名的符号,
24        比如ORACLE就是双引号,MYSQL默认是`反引号; -->
25        <property name="beginningDelimiter" value="`"/>
26        <property name="endingDelimiter" value="`"/>
27
28        <commentGenerator>
29            <property name="suppressDate" value="true"/>
30            <!-- 是否去除自动生成的注释 true:是 : false:否 -->
31            <property name="suppressAllComments" value="true"/>
32        </commentGenerator>
33        <jdbcConnection driverClass="${jdbc.driver}"
34                        connectionURL="${jdbc.url}"
35                        userId="${jdbc.username}"
36                        password="${jdbc.password}">
37            <property name="nullCatalogMeansCurrent" value="true"/>
38        </jdbcConnection>
39        <javaTypeResolver type="org.mybatis.generator.internal.types.JavaTypeResolverDefaultImpl">
40            <property name="forceBigDecimals" value="false"/>
41        </javaTypeResolver>
42        <!-- 生成模型的位置 这里是引用配置文件中的路径, 可以直接写包路径-->
43        <javaModelGenerator targetPackage="${mybatis.generator.entity}"
44                            targetProject="src/main/java">
45            <!-- enableSubPackages:是否让schema作为包的后缀 -->
46            <property name="enableSubPackages" value="true"/>
47            <!-- 从数据库返回的值被清理前后的空格 -->
48            <property name="trimStrings" value="true"/>
49        </javaModelGenerator>
50        <!-- 生成映射文件的位置 这里是引用配置文件中的路径, 可以直接写包路径-->
51        <sqlMapGenerator targetPackage="${mybatis.generator.mapper}"
52                         targetProject="src/main/java">
53            <property name="enableSubPackages" value="true"/>
54        </sqlMapGenerator>
55        <!-- 生成DAO的位置 这里是引用配置文件中的路径, 可以直接写包路径-->
56        <javaClientGenerator type="XMLMAPPER" targetPackage="${mybatis.generator.dao}"
57                             targetProject="src/main/java">
58            <property name="enableSubPackages" value="true"/>
59        </javaClientGenerator>
60        <!--要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名-->
61        <!--<table tableName="" domainObjectName=""/>-->
62    </context>
63</generatorConfiguration>
64
65

在pom.xml添加generator的插件

  • 在pom.xml添加generator的插件


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
1在<build><plugins>...</plugins></build>中添加如下内容
2如果有<pluginManagement>...</pluginManagement>节点,取消该节点,如果不取消,
3
4<plugin>
5    <groupId>org.mybatis.generator</groupId>
6    <artifactId>mybatis-generator-maven-plugin</artifactId>
7    <version>1.3.7</version>
8    <configuration>
9        <!--mybatis-generator.xml 路径-->
10        <configurationFile>src/main/resources/xml/mybatis-generator.xml</configurationFile>
11        <verbose>true</verbose>
12        <overwrite>true</overwrite>
13    </configuration>
14</plugin>
15
16
  • pom.xml配置正确,效果如下

IDEA整合SSM框架之配置mybatis-generator插件(四)

生成数据库表对应的dao、entity、mapper

  • SQL语句

mysql中运行,以t_user表为例,创建SQL语句如下


1
2
3
4
5
6
7
8
9
10
11
12
13
14
1-- 如果存在,则删除
2DROP TABLE IF EXISTS t_user;
3-- 创建
4CREATE TABLE t_user (
5   id INT (11) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '用户编号',
6   user_name VARCHAR (20) NOT NULL DEFAULT '' COMMENT '姓名',
7   real_name VARCHAR (20) NOT NULL DEFAULT '' COMMENT '用户名',
8   sex VARCHAR (20) NOT NULL DEFAULT '' COMMENT '性别',
9  tel VARCHAR(11) NOT NULL DEFAULT '' COMMENT '电话号码',
10  create_time datetime NOT NULL COMMENT '创建时间',
11  update_time datetime NOT NULL COMMENT '更新时间'
12)
13
14
  • 在mybatis-generator.xml 中加入表名以及对应实体类名称


1
2
3
4
5
6
7
8
1<context>
2    ...其他配置
3    
4    <!--要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名-->
5    <table tableName="t_user" domainObjectName="TUser"/>
6</context>
7
8
  • 在Maven Projects 的窗口中,双击mybatis-generator选项

IDEA整合SSM框架之配置mybatis-generator插件(四)

  • 控制台输出信息

IDEA整合SSM框架之配置mybatis-generator插件(四)
IDEA整合SSM框架之配置mybatis-generator插件(四)

  • 配置的相关路径下生产对应的文件

IDEA整合SSM框架之配置mybatis-generator插件(四)

给TA打赏
共{{data.count}}人
人已打赏
安全经验

职场中的那些话那些事

2021-9-24 20:41:29

安全经验

Apache日志分析

2021-11-28 16:36:11

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索