为了简化开发,会根据数据库表 生成一些文件,自带一些简单的CRUD 操作:pojo, mapper.java, mapper.xml。
这里 使用idea 工具 和mysql数据库的操作。
一. 新建数据库表 user
二.新建maven 项目
idea 工具右上角–File–new–Project
新建maven项目:
![]()
![]()
![]()
新建后是这样的目录结构:
这个不是完整的结构,要在main包下,新建java包和resources包
1.新建java包:
![]()
把java包设为根目录:
![]()
然后在java包下新建 com.ssmtest.pojo 和com.ssmtest.dao包
![]()
2.新建resources 包,并标记为资源文件包,这个就跟java包一样,都是在项目包下:
![]()
3.resources 包下,在建一个mapper 文件夹。
最后结构如下:
![]()
三. 设置generator 插件
需要在pom文件里面加入mybatis generator插件(这里项目假设你已经配置了maven的路径了,没有的自己百度下怎么在idea 里面配置maven):
首先在resources 里面新建名为“generatorConfig.xml”的文件。这里文件名是固定的,这个插件会默认查找项目资源下的generatorConfig.xml 这个文件去执行,所以要放在resources 下第一层.
文件内容如下:
(有6点注意事项,查看代码的注释,根据自己的情况更改,这里因为项目结构一样,只要改下mysql的数据源就行了)
<?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>
<context id="testTables" targetRuntime="MyBatis3">
<commentGenerator>
<!-- 是否去除自动生成的注释 true:是 : false:否 -->
<property name="suppressAllComments" value="true" />
</commentGenerator>
<!--1.数据库连接的信息:驱动类、连接地址、用户名、密码 -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://127.0.0.1:3306/ssmtest"
userId="root"
password="19868111211">
</jdbcConnection>
<!--1.如果是其他数据库,只要改driverClass 和connectionURL就可以了-->
<!-- <jdbcConnection driverClass="oracle.jdbc.OracleDriver"
connectionURL="jdbc:oracle:thin:@127.0.0.1:1521:yycg"
userId="yycg"
password="yycg">
</jdbcConnection> -->
<!-- 2.默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和
NUMERIC 类型解析为java.math.BigDecimal -->
<javaTypeResolver>
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- 3.targetProject:生成PO类的位置 -->
<javaModelGenerator targetPackage="com.ssmtest.Pojo"
targetProject="src/main/java">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="false" />
<!-- 从数据库返回的值被清理前后的空格 -->
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!-- 4.targetProject:mapper映射文件生成的位置 -->
<sqlMapGenerator targetPackage="mapper"
targetProject="src/main/resources">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="false" />
</sqlMapGenerator>
<!-- 5.targetPackage:mapper接口生成的位置 -->
<javaClientGenerator type="XMLMAPPER"
targetPackage="com.ssmtest.Dao"
targetProject="src/main/java">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="false" />
</javaClientGenerator>
<!-- 6.指定数据库表,tableName就是数据库的表名,domainObjectName就是pojo类的名称,设置为User 则会生产 User.java,UserMapper.java,UserMapper.xml 的文件
这里下面几个方法要设为false,不然会多生产Example 类和相应方法,这里目前用不到,默认是true,所以设置为false-->
<table tableName="user" domainObjectName="User"
enableCountByExample="false"
enableUpdateByExample="false"
enableDeleteByExample="false"
enableSelectByExample="false"
selectByExampleQueryId="false"></table>
</context>
</generatorConfiguration>
在pom.xml 里面的标签加入插件:
<!--mybatis-generator 插件-->
<plugin>
<!--
用maven mybatis插件
如果不在plugin里面添加依赖包得引用的话,会找不到相关得jar包,
在plugin外部得jar包,他不会去找到并执行,
所以要把plugin运行依赖得jar配置都放在里面
-->
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<dependencies>
<!--<dependency>-->
<!--<groupId>log4j</groupId>-->
<!--<artifactId>log4j</artifactId>-->
<!--<version>1.2.17</version>-->
<!--</dependency>-->
<!--<dependency>-->
<!--<groupId>org.mybatis</groupId>-->
<!--<artifactId>mybatis</artifactId>-->
<!--<version>3.2.6</version>-->
<!--</dependency>-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.30</version>
</dependency>
</dependencies>
</plugin>
到此就配置好了,然后就可以设置启动了:
这里的Command line 要填入maven的命令:”mybatis-generator:generate -e”,这个命令会去执行刚才我们在pom.xml 里面配置的插件.
配置完后就可以开始执行了:
有2个方式执行:
1):
2):
![]()
最后看控制台里面的run
显示”Build success” 就是成功生成了,在看项目里面生成了相应文件了:
注意:如果要重新生成,要把mapper 里面的xml文件删除了在生成,因为pojo和dao里面的会覆盖,但是xml里面的 如果不删除就会生成新的sql语句追加在后面。