Mybatis三剑客介绍
1 MyBatis自动生成代码- generator
什么叫做逆向过程
由数据库的表 自动生成实体类 和 mapper 的工程
怎样使用你逆向工程
-
新建maven 项目 导入依赖
-
导入依赖
-
创建mybatis 连接池配置文件
-
创建 MbSqlSessionFactory 工具类
-
为了打印sql 语句 导入log4j 的配置文件
-
往工程中 加入逆向工程的配置文件
config.properties
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/shujuku?useUnicode=true&characterEncoding=utf-8&useSSL=false
jdbc.user=root
jdbc.password=123456
group.package=com.qf.mybatis03
# \u5982\u679C\u662Fmysql \u8FD9\u4E2A\u914D\u7F6E\u53EF\u4EE5\u4E0D\u5199 \u5982\u679C\u662Foracle \u8FD9\u91CC\u8981\u5199\u6210\u6570\u636E\u5E93\u540D\u5B57
catalog.name=shujuku
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>
<properties resource="config.properties"/>
<context id="testTables" targetRuntime="MyBatis3">
<property name="javaFileEncoding" value="UTF-8"></property>
<property name="beginningDelimiter" value="`"/>
<property name="endingDelimiter" value="`"/>
<property name="lombok" value="Getter,Setter,ToString,Accessors"/>
<commentGenerator>
<!-- 是否去除自动生成的注释 true:是 : false:否 -->
<property name="suppressAllComments" value="true" />
</commentGenerator>
<!--数据库连接的信息:驱动类、连接地址、用户名、密码 -->
<jdbcConnection driverClass="${jdbc.driverClass}"
connectionURL="${jdbc.url}"
userId="${jdbc.user}"
password="${jdbc.password}">
</jdbcConnection>
<!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和
NUMERIC 类型解析为java.math.BigDecimal -->
<javaTypeResolver>
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- targetProject:生成PO类的位置 -->
<javaModelGenerator targetPackage="${group.package}.entity"
targetProject="src/main/java">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="false" />
<!-- 从数据库返回的值被清理前后的空格 -->
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!-- targetProject:mapper映射文件生成的位置 -->
<sqlMapGenerator targetPackage="mapper"
targetProject="src/main/resources">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="false" />
</sqlMapGenerator>
<!-- targetPackage:mapper接口生成的位置 -->
<javaClientGenerator type="XMLMAPPER"
targetPackage="${group.package}.mapper"
targetProject="src/main/java">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="false" />
</javaClientGenerator>
<!-- 指定数据库表
% 就是把这个数据库下面的表 都反向生成
-->
<table schema="" tableName="tb_good"></table>
</context>
</generatorConfiguration>
- 往pom.xml 中添加mybatis 自动生成代码的插件
<!--mybatis 逆向工程插件-->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<dependencies>
<dependency